Restart all Jenkins NodesConsiderations for building SysV or Upstart compatible Bash scriptsUse Master/Slave Jenkins Server vs maintaining 3 separate servers?Jenkins CI Master-Slave setup with docker for slave serverHow to use automatic Restart with Jenkins on SystemdJenkins Kubernetes plugin: pending All nodes of label are offlineHow do I set up HAProxy Behind Cloudfront for JenkinsEnsure a Jenkins job runs once on or after the specified cron time - even if Jenkins were not running at the specified cron timeAutomate jenkins slave node cleanupJenkins build happening on master instead of slaveWhy are psql commands in my script suddenly being killed by jenkins / hudson?

Resize before convert or convert before resize?

Filter a data-frame and add a new column according to the given condition

How was this character able to keep fighting effectively in S8E5 of Game of Thrones?

Help understanding this line - usage of くれる

Substring join or additional table, which is faster?

Is there any way to adjust the damage type of the Eldritch Blast cantrip so that it does fire damage?

As programmers say: Strive to be lazy

Why was my Canon Speedlite 600EX triggering other flashes?

Will the volt, ampere, ohm or other electrical units change on May 20th, 2019?

Meaning of "work with shame"

Is this a group? If so, what group is it?

Given 0s on Assignments with suspected and dismissed cheating?

Should generated documentation be stored in a Git repository?

Mark command as obsolete

Do we have C++20 ranges library in GCC 9?

Find the unknown area, x

Adding labels and comments to a matrix

Can I say: "When was your train leaving?" if the train leaves in the future?

Do not cross the line!

Was the dragon prowess intentionally downplayed in S08E04?

Were any toxic metals used in the International Space Station?

Polynomial division: Is this trick obvious?

Why does SSL Labs now consider CBC suites weak?

How to continually let my readers know what time it is in my story, in an organic way?



Restart all Jenkins Nodes


Considerations for building SysV or Upstart compatible Bash scriptsUse Master/Slave Jenkins Server vs maintaining 3 separate servers?Jenkins CI Master-Slave setup with docker for slave serverHow to use automatic Restart with Jenkins on SystemdJenkins Kubernetes plugin: pending All nodes of label are offlineHow do I set up HAProxy Behind Cloudfront for JenkinsEnsure a Jenkins job runs once on or after the specified cron time - even if Jenkins were not running at the specified cron timeAutomate jenkins slave node cleanupJenkins build happening on master instead of slaveWhy are psql commands in my script suddenly being killed by jenkins / hudson?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








0















I manage a Jenkins server (running 2.89.4) with about 40 nodes or so attached, each running either Centos7, OSX, or Windows (7, 8, 10). Recently, we suffered some power outages and many slaves lost their connection to the master. This required a lot of manual remoting and ssh'ing to reconnect them all. Since, I have made sure each slave process is running a server, however I'd like an additional safety net of being able to automatically restart every vm and/or box these slaves are running on. The problem is, since there are several different types of operating systems, there isn't a simple way to do it (that I know of yet).



I've tried using a Groovy script, but that can mostly just be used for restarting the slave service, not the machine itself. This was my reference:
https://wiki.jenkins.io/display/JENKINS/Monitor+and+Restart+Offline+Slaves



I've also looked into an Ansible approach, but many machines are unreachable, and Ansible requires different types of scripts for Windows vs. Unix.



The best approach I've seen so far is here:
https://stackoverflow.com/questions/29165080/restart-jenkins-slave-from-master



But it doesn't explain how to run this on every single slave, it just looks like it executes on one slave. Has anyone else done anything like this before? I'd love to create a single job, or single script than can be executed and it restarts every single node (using a command like shutdown -r -f) connected to Jenkins regardless of platform.










share|improve this question




























    0















    I manage a Jenkins server (running 2.89.4) with about 40 nodes or so attached, each running either Centos7, OSX, or Windows (7, 8, 10). Recently, we suffered some power outages and many slaves lost their connection to the master. This required a lot of manual remoting and ssh'ing to reconnect them all. Since, I have made sure each slave process is running a server, however I'd like an additional safety net of being able to automatically restart every vm and/or box these slaves are running on. The problem is, since there are several different types of operating systems, there isn't a simple way to do it (that I know of yet).



    I've tried using a Groovy script, but that can mostly just be used for restarting the slave service, not the machine itself. This was my reference:
    https://wiki.jenkins.io/display/JENKINS/Monitor+and+Restart+Offline+Slaves



    I've also looked into an Ansible approach, but many machines are unreachable, and Ansible requires different types of scripts for Windows vs. Unix.



    The best approach I've seen so far is here:
    https://stackoverflow.com/questions/29165080/restart-jenkins-slave-from-master



    But it doesn't explain how to run this on every single slave, it just looks like it executes on one slave. Has anyone else done anything like this before? I'd love to create a single job, or single script than can be executed and it restarts every single node (using a command like shutdown -r -f) connected to Jenkins regardless of platform.










    share|improve this question
























      0












      0








      0








      I manage a Jenkins server (running 2.89.4) with about 40 nodes or so attached, each running either Centos7, OSX, or Windows (7, 8, 10). Recently, we suffered some power outages and many slaves lost their connection to the master. This required a lot of manual remoting and ssh'ing to reconnect them all. Since, I have made sure each slave process is running a server, however I'd like an additional safety net of being able to automatically restart every vm and/or box these slaves are running on. The problem is, since there are several different types of operating systems, there isn't a simple way to do it (that I know of yet).



      I've tried using a Groovy script, but that can mostly just be used for restarting the slave service, not the machine itself. This was my reference:
      https://wiki.jenkins.io/display/JENKINS/Monitor+and+Restart+Offline+Slaves



      I've also looked into an Ansible approach, but many machines are unreachable, and Ansible requires different types of scripts for Windows vs. Unix.



      The best approach I've seen so far is here:
      https://stackoverflow.com/questions/29165080/restart-jenkins-slave-from-master



      But it doesn't explain how to run this on every single slave, it just looks like it executes on one slave. Has anyone else done anything like this before? I'd love to create a single job, or single script than can be executed and it restarts every single node (using a command like shutdown -r -f) connected to Jenkins regardless of platform.










      share|improve this question














      I manage a Jenkins server (running 2.89.4) with about 40 nodes or so attached, each running either Centos7, OSX, or Windows (7, 8, 10). Recently, we suffered some power outages and many slaves lost their connection to the master. This required a lot of manual remoting and ssh'ing to reconnect them all. Since, I have made sure each slave process is running a server, however I'd like an additional safety net of being able to automatically restart every vm and/or box these slaves are running on. The problem is, since there are several different types of operating systems, there isn't a simple way to do it (that I know of yet).



      I've tried using a Groovy script, but that can mostly just be used for restarting the slave service, not the machine itself. This was my reference:
      https://wiki.jenkins.io/display/JENKINS/Monitor+and+Restart+Offline+Slaves



      I've also looked into an Ansible approach, but many machines are unreachable, and Ansible requires different types of scripts for Windows vs. Unix.



      The best approach I've seen so far is here:
      https://stackoverflow.com/questions/29165080/restart-jenkins-slave-from-master



      But it doesn't explain how to run this on every single slave, it just looks like it executes on one slave. Has anyone else done anything like this before? I'd love to create a single job, or single script than can be executed and it restarts every single node (using a command like shutdown -r -f) connected to Jenkins regardless of platform.







      bash ansible jenkins






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Feb 23 '18 at 16:45









      user3270760user3270760

      11327




      11327




















          1 Answer
          1






          active

          oldest

          votes


















          0














          I solved this by creating a Multi-Configuration job and selecting all the slaves by name. Then, I added two Conditional Step based on "Execution Node." I selected only the windows slaves for the first one, and only the Mac/Centos slaves for the second one. For each conditional step, I added a single step: Execute Windows Batch Command for the Windows condition, and Execute Shell for the unix section. Here are the contents of my Batch and Shell boxes respectively:



          Batch:



          echo "Restarting Windows Machine...."
          hostname
          shutdown -r -f


          Shell:



          echo "Restarting Unix Machine...."
          hostname
          sudo shutdown -r now


          I commented out the shutdown steps for now in my job so I wouldn't accidentally restart everything before testing. Be sure to uncomment those before attempting to run this.



          Unix_Conditional_StepWindows_Conditional_Step






          share|improve this answer























          • The only thing I haven't solved yet is how to skip a node if it is offline for some reason.

            – user3270760
            Feb 23 '18 at 17:51











          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "2"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f898614%2frestart-all-jenkins-nodes%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          0














          I solved this by creating a Multi-Configuration job and selecting all the slaves by name. Then, I added two Conditional Step based on "Execution Node." I selected only the windows slaves for the first one, and only the Mac/Centos slaves for the second one. For each conditional step, I added a single step: Execute Windows Batch Command for the Windows condition, and Execute Shell for the unix section. Here are the contents of my Batch and Shell boxes respectively:



          Batch:



          echo "Restarting Windows Machine...."
          hostname
          shutdown -r -f


          Shell:



          echo "Restarting Unix Machine...."
          hostname
          sudo shutdown -r now


          I commented out the shutdown steps for now in my job so I wouldn't accidentally restart everything before testing. Be sure to uncomment those before attempting to run this.



          Unix_Conditional_StepWindows_Conditional_Step






          share|improve this answer























          • The only thing I haven't solved yet is how to skip a node if it is offline for some reason.

            – user3270760
            Feb 23 '18 at 17:51















          0














          I solved this by creating a Multi-Configuration job and selecting all the slaves by name. Then, I added two Conditional Step based on "Execution Node." I selected only the windows slaves for the first one, and only the Mac/Centos slaves for the second one. For each conditional step, I added a single step: Execute Windows Batch Command for the Windows condition, and Execute Shell for the unix section. Here are the contents of my Batch and Shell boxes respectively:



          Batch:



          echo "Restarting Windows Machine...."
          hostname
          shutdown -r -f


          Shell:



          echo "Restarting Unix Machine...."
          hostname
          sudo shutdown -r now


          I commented out the shutdown steps for now in my job so I wouldn't accidentally restart everything before testing. Be sure to uncomment those before attempting to run this.



          Unix_Conditional_StepWindows_Conditional_Step






          share|improve this answer























          • The only thing I haven't solved yet is how to skip a node if it is offline for some reason.

            – user3270760
            Feb 23 '18 at 17:51













          0












          0








          0







          I solved this by creating a Multi-Configuration job and selecting all the slaves by name. Then, I added two Conditional Step based on "Execution Node." I selected only the windows slaves for the first one, and only the Mac/Centos slaves for the second one. For each conditional step, I added a single step: Execute Windows Batch Command for the Windows condition, and Execute Shell for the unix section. Here are the contents of my Batch and Shell boxes respectively:



          Batch:



          echo "Restarting Windows Machine...."
          hostname
          shutdown -r -f


          Shell:



          echo "Restarting Unix Machine...."
          hostname
          sudo shutdown -r now


          I commented out the shutdown steps for now in my job so I wouldn't accidentally restart everything before testing. Be sure to uncomment those before attempting to run this.



          Unix_Conditional_StepWindows_Conditional_Step






          share|improve this answer













          I solved this by creating a Multi-Configuration job and selecting all the slaves by name. Then, I added two Conditional Step based on "Execution Node." I selected only the windows slaves for the first one, and only the Mac/Centos slaves for the second one. For each conditional step, I added a single step: Execute Windows Batch Command for the Windows condition, and Execute Shell for the unix section. Here are the contents of my Batch and Shell boxes respectively:



          Batch:



          echo "Restarting Windows Machine...."
          hostname
          shutdown -r -f


          Shell:



          echo "Restarting Unix Machine...."
          hostname
          sudo shutdown -r now


          I commented out the shutdown steps for now in my job so I wouldn't accidentally restart everything before testing. Be sure to uncomment those before attempting to run this.



          Unix_Conditional_StepWindows_Conditional_Step







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Feb 23 '18 at 17:50









          user3270760user3270760

          11327




          11327












          • The only thing I haven't solved yet is how to skip a node if it is offline for some reason.

            – user3270760
            Feb 23 '18 at 17:51

















          • The only thing I haven't solved yet is how to skip a node if it is offline for some reason.

            – user3270760
            Feb 23 '18 at 17:51
















          The only thing I haven't solved yet is how to skip a node if it is offline for some reason.

          – user3270760
          Feb 23 '18 at 17:51





          The only thing I haven't solved yet is how to skip a node if it is offline for some reason.

          – user3270760
          Feb 23 '18 at 17:51

















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Server Fault!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f898614%2frestart-all-jenkins-nodes%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Club Baloncesto Breogán Índice Historia | Pavillón | Nome | O Breogán na cultura popular | Xogadores | Adestradores | Presidentes | Palmarés | Historial | Líderes | Notas | Véxase tamén | Menú de navegacióncbbreogan.galCadroGuía oficial da ACB 2009-10, páxina 201Guía oficial ACB 1992, páxina 183. Editorial DB.É de 6.500 espectadores sentados axeitándose á última normativa"Estudiantes Junior, entre as mellores canteiras"o orixinalHemeroteca El Mundo Deportivo, 16 setembro de 1970, páxina 12Historia do BreogánAlfredo Pérez, o último canoneiroHistoria C.B. BreogánHemeroteca de El Mundo DeportivoJimmy Wright, norteamericano do Breogán deixará Lugo por ameazas de morteResultados de Breogán en 1986-87Resultados de Breogán en 1990-91Ficha de Velimir Perasović en acb.comResultados de Breogán en 1994-95Breogán arrasa al Barça. "El Mundo Deportivo", 27 de setembro de 1999, páxina 58CB Breogán - FC BarcelonaA FEB invita a participar nunha nova Liga EuropeaCharlie Bell na prensa estatalMáximos anotadores 2005Tempada 2005-06 : Tódolos Xogadores da Xornada""Non quero pensar nunha man negra, mais pregúntome que está a pasar""o orixinalRaúl López, orgulloso dos xogadores, presume da boa saúde económica do BreogánJulio González confirma que cesa como presidente del BreogánHomenaxe a Lisardo GómezA tempada do rexurdimento celesteEntrevista a Lisardo GómezEl COB dinamita el Pazo para forzar el quinto (69-73)Cafés Candelas, patrocinador del CB Breogán"Suso Lázare, novo presidente do Breogán"o orixinalCafés Candelas Breogán firma el mayor triunfo de la historiaEl Breogán realizará 17 homenajes por su cincuenta aniversario"O Breogán honra ao seu fundador e primeiro presidente"o orixinalMiguel Giao recibiu a homenaxe do PazoHomenaxe aos primeiros gladiadores celestesO home que nos amosa como ver o Breo co corazónTita Franco será homenaxeada polos #50anosdeBreoJulio Vila recibirá unha homenaxe in memoriam polos #50anosdeBreo"O Breogán homenaxeará aos seus aboados máis veteráns"Pechada ovación a «Capi» Sanmartín e Ricardo «Corazón de González»Homenaxe por décadas de informaciónPaco García volve ao Pazo con motivo do 50 aniversario"Resultados y clasificaciones""O Cafés Candelas Breogán, campión da Copa Princesa""O Cafés Candelas Breogán, equipo ACB"C.B. Breogán"Proxecto social"o orixinal"Centros asociados"o orixinalFicha en imdb.comMario Camus trata la recuperación del amor en 'La vieja música', su última película"Páxina web oficial""Club Baloncesto Breogán""C. B. Breogán S.A.D."eehttp://www.fegaba.com

          Vilaño, A Laracha Índice Patrimonio | Lugares e parroquias | Véxase tamén | Menú de navegación43°14′52″N 8°36′03″O / 43.24775, -8.60070

          Cegueira Índice Epidemioloxía | Deficiencia visual | Tipos de cegueira | Principais causas de cegueira | Tratamento | Técnicas de adaptación e axudas | Vida dos cegos | Primeiros auxilios | Crenzas respecto das persoas cegas | Crenzas das persoas cegas | O neno deficiente visual | Aspectos psicolóxicos da cegueira | Notas | Véxase tamén | Menú de navegación54.054.154.436928256blindnessDicionario da Real Academia GalegaPortal das Palabras"International Standards: Visual Standards — Aspects and Ranges of Vision Loss with Emphasis on Population Surveys.""Visual impairment and blindness""Presentan un plan para previr a cegueira"o orixinalACCDV Associació Catalana de Cecs i Disminuïts Visuals - PMFTrachoma"Effect of gene therapy on visual function in Leber's congenital amaurosis"1844137110.1056/NEJMoa0802268Cans guía - os mellores amigos dos cegosArquivadoEscola de cans guía para cegos en Mortágua, PortugalArquivado"Tecnología para ciegos y deficientes visuales. Recopilación de recursos gratuitos en la Red""Colorino""‘COL.diesis’, escuchar los sonidos del color""COL.diesis: Transforming Colour into Melody and Implementing the Result in a Colour Sensor Device"o orixinal"Sistema de desarrollo de sinestesia color-sonido para invidentes utilizando un protocolo de audio""Enseñanza táctil - geometría y color. Juegos didácticos para niños ciegos y videntes""Sistema Constanz"L'ocupació laboral dels cecs a l'Estat espanyol està pràcticament equiparada a la de les persones amb visió, entrevista amb Pedro ZuritaONCE (Organización Nacional de Cegos de España)Prevención da cegueiraDescrición de deficiencias visuais (Disc@pnet)Braillín, un boneco atractivo para calquera neno, con ou sen discapacidade, que permite familiarizarse co sistema de escritura e lectura brailleAxudas Técnicas36838ID00897494007150-90057129528256DOID:1432HP:0000618D001766C10.597.751.941.162C97109C0155020