Rundeck是用于自动化服务的免费开源软件。它允许自助访问他们完成工作所需的流程和工具。使用 Rundeck,您可以从现有工具或脚本创建自动化工作流。它提供了一个 Web 控制台、CLI 工具和一个 Web API 来运行自动化任务。
在本教程中,我们将学习如何在Ubuntu 20.04上安装 Rundeck社区版。
先决条件
- 一个至少有 2 个 CPU 的 Ubuntu 20.04 实例
- 4 GB 内存
- 20 GB 硬盘
- Java 8 或更高版本
- 数据库 – MySQL/MariaDB、Oracle 或 PostgrSQL
- 日志存储,用于作为默认文件系统或 S3 兼容对象存储的日志
- 端口 4440 (http) 和 4443 (https) 打开
第 1 步:在 Ubuntu 上安装 Java
Rundeck 需要Java 8 或 Java 11才能正常运行。如果默认情况下未安装,请使用以下命令安装 Java。
一、更新软件仓库的缓存
$ sudo apt update
现在要安装 Java 11,请运行以下命令:
$ sudo apt install openjdk-11-jre-headless
您可以使用以下命令验证版本:
java -version
第 2 步:在 Ubuntu 上安装 MySQL
Rundeck 支持 MySQL、PostgreSQL、Oracle 和 MS SQL Server 来存储其数据。在我们的例子中,我们将使用 MySQL。
要在 Ubuntu 上安装 MySQL,请运行以下命令:
$ sudo apt install mysql-server
然后在启动时启用MySQL服务,输入:
$ sudo systemctl enable mysql-server
现在访问数据库:
$ mysql -u root -p
创建 Rundeck 数据库和用户:
mysql> CREATE DATABASE rundeckdb; Query OK, 1 row affected (0.00 sec) mysql> CREATE USER 'rundeck_user'@'localhost' IDENTIFIED BY 'PASSWORD'; Query OK, 0 rows affected (0.00 sec) mysql> GRANT ALL PRIVILEGES ON *.* TO 'rundeck_user'@'localhost' WITH GRANT OPTION; Query OK, 0 rows affected (0.00 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec) mysql> exit bye
第 3 步:在 Ubuntu 20.04 上安装 Rundeck
在这里,我们将安装 Rundeck 社区版本。您可以通过填写表格或从官方存储库直接从网站下载 deb 包文件。
在这里,我将从官方存储库进行安装,该存储库始终确保拥有最新版本。
为此,我们将首先导入 repo 签名密钥。
$ curl -L https://packages.rundeck.com/pagerduty/rundeck/gpgkey | sudo apt-key add -
然后我们添加Rundeck的sources list文件 /etc/apt/sources.list.d/rundeck.list
$ sudo vim /etc/apt/sources.list.d/rundeck.list
deb https://packages.rundeck.com/pagerduty/rundeck/any/ any main deb-src https://packages.rundeck.com/pagerduty/rundeck/any/ any main
更新存储库的缓存
$ sudo apt update
现在,使用 apt 命令安装 Rundeck,输入:
$ sudo apt install rundeck
我们现在需要告诉 Rundeck 如何连接数据库。我们将编辑其配置文件并进行一些更新。确保用与您的配置匹配的良好值替换已经存在的行
$ sudo vim /etc/rundeck/rundeck-config.properties
grails.serverURL=http://YOUR_SERVER_IP:4440 dataSource.driverClassName = org.mariadb.jdbc.Driver dataSource.url = jdbc:mysql://localhost/rundeckdb?autoReconnect=true&useSSL=false dataSource.username = rundeck_user dataSource.password = PASSWORD
如果你安装了另一个数据库,那么一些配置应该改变。
在启动时启用服务
$ sudo systemctl enable rundeckd.service
然后,启动 Rundeck 服务:
$ sudo systemctl start rundeckd.service
您可以查看状态
$ sudo systemctl status rundeckd.service
● rundeckd.service - LSB: rundeck job automation console Loaded: loaded (/etc/init.d/rundeckd; generated) Active: active (running) since Sat 2021-11-06 01:05:34 UTC; 2s ago Docs: man:systemd-sysv-generator(8) Process: 229955 ExecStart=/etc/init.d/rundeckd start (code=exited, status=0/SUCCESS) Main PID: 229976 (java) Tasks: 12 (limit: 2279) Memory: 114.7M CGroup: /system.slice/rundeckd.service └─229976 java -Drundeck.jaaslogin=true -Djava.security.auth.login.config=/etc/rundeck/jaas-loginmodule.conf -Dloginmodule.name=RDpropertyfilelogin -Drdeck.config=/etc/rundeck -Drundeck.server.configDir=/etc/rundeck -D> Nov 06 01:05:34 li663-64 systemd[1]: Starting LSB: rundeck job automation console... Nov 06 01:05:34 li663-64 rundeckd[229955]: * Starting rundeckd Nov 06 01:05:34 li663-64 rundeckd[229955]: ...done. Nov 06 01:05:34 li663-64 systemd[1]: Started LSB: rundeck job automation console.
我们应该首先更改admin用户的默认密码,因为默认密码仍然是 admin
$ sudo vim /etc/rundeck/realm.properties
admin:NEW_ADMIN_PASSWORD,user,admin,architect,deploy,build
此时,如果您想检查一切是否正常,您可以尝试使用 IP 和端口 4440 访问 Rundeck,但您需要先在防火墙上打开它。
由于我们将使用 Nginx,因此我们需要编辑其他一些配置文件来修改 Rundeck 的 URL。我们需要指明 Nginx 将用于访问 Rundeck 的 URL。我们首先编辑/etc/rundeck/framework.properties配置文件
$ sudo vim /etc/rundeck/framework.properties
framework.server.url = http://rundeck.domain.com
然后我们将重新编辑/etc/rundeck/rundeck-config.properties配置文件。它是我们过去用来指示服务器的 IP 地址和默认端口的一个,但现在将放置域名。
$ sudo vim /etc/rundeck/rundeck-config.properties
grails.serverURL=http://rundeck.websitefortesting.com
第 4 步:SSL 终止代理
这里我们将使用 Nginx 作为SSL Termination的反向代理。这有助于 Rundeck 支持 SSL/HTTPS。
Nginx 在 apt 存储库中可用,您可以使用以下命令简单地安装:
$ sudo apt install nginx
现在您需要复制 Rundeck 域的证书。
$ sudo cp rundeck.domain.com.crt /etc/nginx/certs/rundeck.domain.com.crt
您还需要复制密钥
$ sudo cp rundeck.domain.com.key /etc/nginx/certs/rundeck.domain.com.key
让我们删除默认配置文件以避免任何冲突
$ sudo rm /etc/nginx/sites-enabled/default
现在让我们创建 Rundeck 的配置文件。
$ sudo vim /etc/nginx/sites-available/rundeck.conf
server { server_name rundeck.domain.com; listen 80 ; access_log /var/log/nginx/rundeck.log; return 301 https://$host$request_uri; } server { server_name rundeck.domain.com; listen 443 ssl http2 ; access_log /var/log/nginx/rundeck.log; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES"; ssl_prefer_server_ciphers on; ssl_certificate /etc/nginx/certs/rundeck.domain.com.crt; ssl_certificate_key /etc/nginx/certs/rundeck.domain.com.key; add_header Strict-Transport-Security "max-age=31536000"; location / { proxy_pass http://localhost:4440; proxy_set_header X-Forwarded-Host $host:$server_port; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
现在让我们启用配置文件
$ sudo ln -s /etc/nginx/sites-available/rundeck.conf /etc/nginx/sites-enabled/rundeck.conf
检查 Nginx 配置
$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
第 5 步:访问 Rundeck 界面
现在您可以转到浏览器并使用 URL http://rundeck.domain.com 访问 Rundeck
对于 Rundeck Web 界面访问,用户名admin和密码是我们之前编辑的那个NEW_ADMIN_PASSWORD。
现在您可以访问您的 Rundeck
您可以创建一个新项目以开始配置。
结论
在本教程中,我们学习了如何在 Ubuntu 20.04 服务器上安装 Rundeck 社区版。您可以进行一些配置并创建一个新项目以开始使用您的 Rundeck

获取更多建站运营运维新知!互联网创业、前沿技术......
最新评论
水淀粉vdfv
有其他下载方式么,网站上的点击下载后没有任何反应,或者直接发给我一下?83835079@qq.com
你好,我的型号ELECOM WRC-X3200GST3,ARMv8 Processor rev 4构架,CPU mediatek/mt7622,找了很久没有找到
我的也是这样。一直无法确认ARCH架构,或是不支持。一直没办法用。不知道怎么办了
您好,现在安装上了,可是ssr plus+配置好节点也没用,一直都是未运行,节点是有效的; 另外那个passwall2一找开就提示"无法确认ARCH架构,或是不支持", 麻烦大佬帮忙看下是什么问题,谢谢!