SQWareProduction:cassandra:bin:sqwcas RollingRestart.ksh

De WikiFr_dbSQWare
Révision datée du 15 décembre 2020 à 21:16 par BatchUser (discussion | contributions) (Updated by BatchUser)
Aller à : navigation, rechercher

Presentation

Script $gvsqw_CasBin/sqwcas_RollingRestart.ksh :


Execute 'stop/start/restart' cassandra sur les nodes selectionne
You have to select le options of nodetool to execute
You can also choose:

  • Aggressiveness of run (number of seconds between two runs)
  • Aggressiveness of check end (number of seconds between two checks of end)
  • Scope of the execution (by default: Local)


** Local => only on the local node
** LocalNode => only on the local node
** Node_$NodeName => only on the node '$NodeName'
** LocalDC => all nodes on the local datacenter
** DC_$DCName => all nodes on the datacenter '$DCName'
** All => all nodes on the cluster(all datacenters)
** AllNodes => all nodes on the cluster(all datacenters)
** AllDC => all nodes on the cluster(all datacenters)

  • Force dynamic discovery of nodes (by default, search in $gvsqw_RootCfg/CAS_CHR_PRD.clucfg generated by sqwcas_GenNodesConf.ksh)



Aide en ligne

L'aide en ligne est accessible dans la plupart des scripts avec l'option -h.
Ex: $gvsqw_CasBin/sqwcas_RollingRestart.ksh -h
Contenu de l'aide :

Sourcing sqwcas_Global.lib v2024.07 SQWareProduction for Cassandra (dbSQWare) ... 

Utilisation: sqwcas_RollingRestart.ksh [-h] -I <CAS_SID> [+ options]

DESCRIPTION
   sqwcas_RollingRestart.ksh Execute 'stop/start/restart' cassandra on selected nodes
SUPPORT
   Cassandra versions supportees: 2.0 <= v <= 4.0

PARAMETERS
     -I  instance       : Instance cible.
OPTIONS
     -h                 : Affichage de l'aide complete.
     -s                 : Affichage des exemples d'utilisation.
     -A    action       : Action (start, stop, restart : par defaut restart).
     -S    scope        : Scope d'execution (par defaut: Local).
                             Local           => seulement le node local.
                             LocalNode       => seulement le node local.
                             Node_$NodeName => seulement sur le node '$NodeName'.
                             LocalDC         => tous les nodes sur local datacenter.
                             DC_$DCName     => tous les nodes sur datacenter '$DCName'.
                             All             => tous les nodes sur cluster(tous les datacenters).
                             AllNodes        => tous les nodes sur cluster(tous les datacenters).
                             AllDC           => tous les nodes sur cluster(tous les datacenters).
     -FRT       code    : Valeur forcee du code retour sur erreur.
     -AddMail   email   : Adresse Email a ajouter a 'pmexpdba@gmail.com'.
     -Timeout Nb_sec    : Timeout avant de kill la commande 'nodetool drain' lors de l'arret (par defaut 900).
     -SendReport        : Envoi du rapport d'execution.
     -Dynamic           : Force la decouverte dynamique des nodes (par defaut, cherche dans $gvsqw_RootCfg/.clucfg generee par sqwcas_GenNodesConf.ksh).
     -NoMail            : Desactive l'envoie de mail lors d'erreur pmexpdba@gmail.com (par defaut, envoi sur erreur).
     -Locale    locale  : Force la Locale d'affichage de l'aide (fr,en).
     -Wait              : Temps d'attente entre le redemarrage de deux nodes (par defaut 120).
     -Exec              : Execute les commandes generees (par defaut, affiche les commandes generees).

Information.png
Information:
Pour etre sur d'avoir une aide a jour, reportez vous directement a l'aide en ligne du script avec l'option -h .


Traitement de l'erreur

Erreurs de parse des arguments

Ce type de message est genere:

Lack 'CAS_SID' parameter, Utilisation: sqwcas_RollingRestart.ksh [-h] -I <instance> [+ options]

Si vous vous connectez via un terminal, aucun mail ne sera envoyé et vous aurez plutôt ce type de message:

Begining     : 2020-12-15 21:14:52
End          : 2020-12-15 21:14:52
Duration     : 00:00:00 

Si vous n'êtes pas connecté à un terminal, le message d'erreur apparaît et est envoyé par mail à l'adresse contenue dans la variable $gvsqw_GlobalMail (Voir l'aide pour personnaliser cette variable). L'objet commence toujours par "$gvsqw_MailMsg_cassandra : " (Voir l'aide pour personnaliser cette variable).

Information.png
Information:
L'envoi de mail peut être désactivé par l'option -NoMail pour une exécution.


Execution errors

Que vous soyez ou non connecté à un terminal, le message d'erreur apparaît et un mail contenant un résumé des erreurs de traitement est envoyé à l'adresse contenue dans la variable $gvsqw_GlobalMail (Voir l'aide pour personnaliser cette variable). L'objet commence toujours par "$gvsqw_MailMsg_cassandra : " (Voir l'aide pour personnaliser cette variable).

Information.png
Information:
L'envoi de mail peut être désactivé par l'option -NoMail pour une exécution.


Exemples d'utilisation

Sourcing sqwcas_Global.lib v2024.07 SQWareProduction for Cassandra (dbSQWare) ... 

#Standard (Locale) help for script sqwcas_RollingRestart.ksh:

$gvsqw_CasBin/sqwcas_RollingRestart.ksh -h
#Affichage de l'aide en ligne pour ce script

$gvsqw_CasBin/sqwcas_RollingRestart.ksh -Locale fr -h
#Affichage de l'aide en ligne pour ce script avec forcage de la locale 'fr' (Locale par defaut geree par $gvsqw_Locale)

$gvsqw_CasBin/sqwcas_RollingRestart.ksh -s
#Affichage des exemples d'utilisation pour ce script

$gvsqw_CasBin/sqwcas_RollingRestart.ksh -I $CAS_SID -A <Action> -S <scope>
#Affiche l'ensemble des commandes generees par le script sans les executer

$gvsqw_CasBin/sqwcas_RollingRestart.ksh -I $CAS_SID -A <Action> -S <scope> -Exec
#Execute l'action <Action> (start, stop, par defaut restart) sur l'instance $CAS_SID pour l'etendue <scope> selectionnee : All, AllDC (by default is locale) ou -Dynamic

$gvsqw_CasBin/sqwcas_RollingRestart.ksh -I CAS_01 -A 'stop' -Dynamic -Wait 42 -Exec
Execute l'action 'restart' sur l'instance CAS_01 avec une decourverte dynamique des nodes, attendant 42 entre chaque 'restart'

$gvsqw_CasBin/sqwcas_RollingRestart.ksh -I $CAS_SID -S <scope> -Timeout 1500 -Exec
#Delai d'interruption en secondes pour fermer les sessions ssh inactives (par defaut 3600s, geree par $gvsqw_TimeOut)

$gvsqw_CasBin/sqwcas_RollingRestart.ksh -I $CAS_SID -AddMail 'mymail1@mydomaine.com,mymail2@mydomaine.com' -Exec
#Ajoute la liste de mail a l'adresse par defaut geree par $gvsqw_GlobalMail (seulement cette fois), adresses mail separees par des virgules

$gvsqw_CasBin/sqwcas_RollingRestart.ksh -I $CAS_SID -SendReport -Exec
#Envoie la log par mail a la fin du traitement meme s'il n'y a pas d'erreur (par defaut, seulement en cas d'erreur)

$gvsqw_CasBin/sqwcas_RollingRestart.ksh -I $CAS_SID -NoMail -Exec
#Desactive l'envoi de mail sur erreur a $gvsqw_GlobalMail (par defaut, seulement en cas d'erreur)

$gvsqw_CasBin/sqwcas_RollingRestart.ksh -I $CAS_SID -FRT <NumericValue> -Exec
#Force le code retour a '<NumericValue>' sur erreur (si pas d'erreur, "exit 0!")
#Vous pouvez aussi forcer le code retour de ce script pour tous
#si vous settez la variable d'environnement: $gvsqw_ForcedReturnCodeScript_sqwcas_RollingRestart=<NumericValue>
#dans le fichier de configuration $gvsqw_CasBin/../etc_cust/sqwcas_GlobalVar.cfg
Information.png
Information:
Pour être sûr que les exemples sont exacts, reportez-vous directement à l'option d'aide en ligne du script -s .