Welcome, Guest Login

Rundeck Enterprise Support Center

Install Rundeck Pro Team Launcher on Windows

Last Updated: Feb 21, 2018 05:28AM PST

Download the latest version of Rundeck launcher here:  http://download.rundeck.com/versions.html

 

To install the launcher on Windows as a service, follow these instructions: 

 
  • Choose a root directory (e.g. C:\rundeck) 
 
  • Place rundeckpro-launcher-XXXX-X.X.X.jar in that directory 
 
  • Define RDECK_BASE environment variable ( e.g set RDECK_BASE=C:\rundeckcd to the RDECK_BASE and launch the installation of rundeck 

     
     cd C:\rundeck
     java -jar rundeckpro-launcher-XXXX-X.X.X.jar

 

  • This will create the usual structure under %RDECK_BASE%, but will just install it, not execute it.
 
  • Customize %RDECK_BASE%\etc\profile.bat according to your installation (for example -Xmx4096m -Xms1024m) 
 
  • Customize %RDECK_BASE%\server\config\rundeck-config.properties accordingly to the docs 
 
  • Create a bat file (e.g. start_rundeck.bat) and place it under %RDECK_BASE% 


     set CURDIR=%~dp0
     call %CURDIR%etc\profile.bat
     java %RDECK_CLI_OPTS% %RDECK_SSL_OPTS% -jar rundeckpro-launcher-XXXX-X.X.X.jar --skipinstall -d >> %CURDIR%\var\logs\service.log  2>&1 

  • fetch nssm.exe from http://nssm.cc/ 
 
  • Place the executable under %RDECK_BASE% (you can place it elsewhere, but for the sake of the example let's use always the root dir) 
 
  • Open a prompt and issue these commands (Administrator mode required to install a service) 

     
     cd C:\rundeck
     nssm.exe install RUNDECK

 

  • the GUI pops up, set "path" as %RDECK_BASE%\start_rundeck.bat , working dir as %RDECK_BASE% (optionally set "low" on the process tab, under priority, to avoid server cpu spike when starting rundeck) 
 
  • Go to the service management console (services.msc) and you'll find RUNDECK listed as a service. Starting it will start the rundeck process. 

 
 

IIS as a reverse proxy


These steps allow to "integrate" Rundeck with IIS. This could be necessary for example for these user cases:
 

  • to get Rundeck through the port 80 in a subdirectory of IIS (e.g. http://yoursite/rundeck) 
 
  • when It is already set up a SSL certificate for a site and you want to reuse it without fiddling with the java certstore 


If you are at least on 2008R2, you can install the ARR extension to proxy requests to the Jetty instance. To do so, we need first to modify the port rundeck is running and specify the "prefix" for all urls generated by rundeck. Also, to avoid that anyone bypass IIS, rundeck must listen only on 127.0.0.1.
 
Modify the %RDECK_BASE%\start_rundeck.bat port (81) and host (127.0.0.1) as follows:


set CURDIR=%~dp0
call %CURDIR%etc\profile.bat
java %RDECK_CLI_OPTS% %RDECK_SSL_OPTS%  "-Dserver.http.host=127.0.0.1" "-Dserver.http.port=81" -jar rundeckpro-launcher-XXXX-X.X.X.jar --installonly

 

But you can also put options in %RDECK_BASE%\etc\profile.bat (in this case the "prefix" and the little bit that makes rundeck work behind a reverse proxy) as long as you define all of them.


set RDECK_CLI_OPTS=-Xmx4096m -Xms1024m "-Drundeck.jetty.connector.forwarded=true" "-Dserver.web.context=/rundeck"


A tune is also needed in %RDECK_BASE%\server\config\rundeck-config.properties, as grails.serverURL is needed to be the absolute url:

grails.serverURL=http://yoursite/rundeck
 

Now, in IIS, (at the site level) create an URL Rewrite rule as follows:
 

  • add inbound rule 
 
  • name: route_to_rdeck (or whatever you prefer) matches the pattern (using regular expression): rundeck.* (or a regex matching your "prefix") 
 
  • action type: rewrite 
 
  • rewrite url: http://127.0.0.1:81/{R:0} 
 
  • check append query string



Then, any request coming to http://yoursite/rundeck will be proxying to your rundeck instance running on port 81 on the same server, and you'll be sure that every request will come in only proxyied by IIS, since rundeck is only listening to 127.0.0.1.
 

Troubleshooting 


If the rewrite module does not work, go to the Application Request Routing settings on the IIS home, and enable the proxy.
 

MSSQL as a backend 


Rundeck works with MSSQL too:
 

  • Create a database on your backend, plus a user (and assign it the db_owner role) 
 
  • Download JDBC driver from Microsoft (For example for a Windows 2012 R2 host connecting to a MSSQL 2014 server, use sqljdbc41.jar (572KB, mod date 2015-11-18) ) 
 
  • Place it under %RDECK_BASE%\server\lib 
 
  • in %RDECK_BASE%\server\config\rundeck-config.properties, set the following: 


     rundeck.projectsStorageType=db
     dataSource.dbCreate = update
     dataSource.driverClassName = com.microsoft.sqlserver.jdbc.SQLServerDriver
     dataSource.url = jdbc:sqlserver://myserver;DatabaseName=RUNDECK
     dataSource.username = myusername
     dataSource.password = mypassword

 


Updating Rundeck using the launcher 

 

  • Stop rundeck 
 
  • Remove %RDECK_BASE%\server\exp and %RDECK_BASE%\server\lib, making a backup of any file you modified under those directories (e.g. %RDECK_BASE%\server\exp\webapp\WEB-INF\classes\log4j.properties, %RDECK_BASE%\server\exp\webapp\WEB-INF\web.xml, etc) 
 
  • download the launcher
 
  • open a prompt, optionally setting RDECK_BASE and launch --installonly 

       
     java -jar rundeckpro-launcher-XXXX-X.X.X.jar 
 

  • copy over your customizations 
 
  • don't forget, e.g., sqljdbc41.jar in %RDECK_BASE%\server\lib 
 
  • start rundeck  

 
 

1fb43f9155a47800b95738aff7e657fc@rundeck.desk-mail.com
http://assets2.desk.com/
false
desk
Loading
seconds ago
a minute ago
minutes ago
an hour ago
hours ago
a day ago
days ago
about
false
Invalid characters found
/customer/en/portal/articles/autocomplete