【Rundeck】rundeck自动部署平台安装和迁移

简介: rundeck部署平台安装及迁移步骤
一、迁移准备
1、创建用户、用户组:
rundeck
rundeck
mkdir /home/rundeck/rundeck/
abea67be3a9086ad10ccb48419e3797474dee7b2

2、jdk环境搭建:
sudo yum install -y java-1.7.0-openjdk
java -version

3、rundeck安装目录指定:
vim /etc/profile
内容:
export RDECK_BASE=/home/rundeck/rundeck
1c234fbb3bde426ee16993f61cc5cb3132bd3cf3

f5b258d232306f2858a677e7cd0a08d468ae2f8d

注:在源rundeck上并没有在全局变量文件中添加安装路径,可能只需要将jar包拷贝到安装目录下执行安装即可。

4、安装rundeck:
启动jar包:
rundeck默认开启4440端口
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.111.x86_64/jre/bin/java -Xmx1024m -Xms256m -server -Dserver.http.port=4440 -Drundeck.ssl.config=/home/rundeck/rundeck/server/config/ssl.properties -jar /home/rundeck/rundeck/rundeck-launcher-2.0.1.jar

5、验证echo $RDECK_BASE是否有
设置全局变量:
source /etc/profile
f24ffcc18020bb6687ae09b0cc286cc86cdec3c4

6、jar包初始化之后,可以使用命令启动、关闭rundeck:
/home/rundeck/rundeck/server/sbin/rundeckd start
/home/rundeck/rundeck/server/sbin/rundeckd stop

7、添加rundeck的命令到PATH路径:
vim /etc/profile
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/data/app_platform/mongodb/bin/:/home/rundeck/rundeck/tools/bin
source /etc/profile

8、登录访问:
60.191.203.62:4440
020a0d61c8d2b93291e45e243c4a881fdcb80061

问题一:
(1)用ip:port方式登录:
输入用户和密码:admin时(初始账户密码),点击登录,会跳往主机名登录,这是因为在配置中配置,登录失败:
9eab87a28fb5cdc34cf7c12cc7dc3935447e6f79

(2)将上述地址主机名改为ip时,登录正常:
ac838e57a777958ebfcfff8d838727585a7527b9

(3)本地hosts绑定主机名,再次登录访问:
4089ab4908e3db2a16b572849ff6c12188e2f547

aee65709cdedbef97d220494c23a99ff5f3de30a

(4)rundeck配置文件:
rundeck的框架配置
vim etc/framework.properties
cbf35db749189939d14af3d278eecf7ef43d9d8a
注:在此文件中修改server的url路径重启服务后,并不能用域名访问,想用域名访问的关键配置文件是server/config/rundeck-config.properties文件。


(5)修改server的url地址可以实现域名访问:
vim server/config/rundeckconfig.properties
3a45d183bcc39c47987c5fee30fc6f95b2b7d172

(6)如图配置后,用域名登录访问:
d42aea093c05d97c99a0a19c1d8d50bfeb65cccb
注:以上只是实现http访问,若想rundeck支持ssl以https的形式访问,还需配置

问题二:
rundeck支持ssl配置:
(1)用keytool工具生成keystore文件
keytool -keystore etc/keystore -alias rundeck -genkey -keyalg RSA -keypass admin -storepass admin
742513883be330d436c530eac039e2d4445c07f4

(2)复制keystore为truststore文件
cp etc/keystore etc/truststore
1490b7809108e3e9327a2be78b71f365c61596ab

(3)修改ssl配置文件
keystore和truststore文件位置
vim server/config/ssl.properties
420ef6c025f238f8b9ce239d88f05b0193ea3975

(4)修改框架配置文件和全局配置文件
修改端口和https的url
vim etc/framework.properties
vim server/config/rundeck-config.properties
37361102a67fbb3d804ebc6a0c909577380a2574
注:未实现https方式登录,keytool未成功!!!

二、迁移过程:
1、rundeck主目录:
rsync -avz --progress 10.4.7.169::rundeck /home/rundeck/rundeck/

2、.ssh/目录:
tar -czvf ssh.tar.gz .ssh/
tar -xzvf ssh.tar.gz

3、命令重启rundeck, 报错
java-1.6.0版本没有
0114d2722e323b6fdea18a5fd5a5bb88f4039731

安装java-1.6.0
yum search java
yum -y install java-1.6.0-openjdk
39a27c75fd2c4ede7a3bedf2e9b87ab706e07f01

4、安装后,用命令/home/rundeck/rundeck/server/sbin/rundeckd start无法启动,
用命令行启动 /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.40.x86_64/jre/bin/java -Xmx1024m -Xms256m -server -Dserver.http.port=4443 -Drundeck.ssl.config=/home/rundeck/rundeck/server/config/ssl.properties -jar /home/rundeck/rundeck/rundeck-launcher-2.0.1.jar &

5、启动后,可以登录访问,但是无法执行job,执行报错:
070c4fab2d4fe61e910d5c47ee8e759a9b389b0d
5.1 日志报错:
不能创建日志文件
47cbce9e75323bdc2957ec898eae4198d3ebc423

5.2 原因:
/home/rundeck/rundeck/var/logs/目录是一个软连接,rsync同步过来的时候,并没有将源目录/data/rundeck/同步过来,因此这个目录是无效的,导致上面报错。
a637ddf4ce37acba0254062fd8ec3a15532c0024

5.3 解决办法:
同/data/rundeck/目录
rsync -avz --progress 10.4.7.169::rundecklog /data/rundeck/

6、同步logs后同步job,还是出现 报错
rundeck插件jar包不支持当前rundeck版本:
2eecea710edfecb50d2880df843abcc7ac057f82
节点无法连接:
938685c427c5eeb621e35abf4c46e2fe67b8a465

6.1下载新jar包:
rundeck-ec2-nodes-plugin-1.2.jar插件java包不支持,下载新的jar包:

6.2 查看hosts是否有节点ip,若没有则添加节点ip:
vim /etc/hosts
e384f3f14a95421f81eb0cbd6f12113964560b1a

6.3 替换新jar包插件、添加hosts后还是 报错 节点无法连接,同步失败,修改配置中主机名节点:
grep "zg-apple-demo" ./ -r | grep -v -E "log|logs"
5bb2f1ece4f8a1106c0860b478dfd201c3756983
grep "zg-apple-demo" ./ -r | grep -v -E "log|logs|Binary" | awk -F: '{print $1}' | xargs -n 1 -I {} sed -i 's/zg-apple-demo/zg-bi-server/g' {}

7、修改主机名节点后,用命令启动rundeck:
/home/rundeck/rundeck/server/sbin/rundeckd stop
/home/rundeck/rundeck/server/sbin/rundeckd start

7.1 报错:
还是没有java-1.6.0-openjdk-1.6.0.0.x86_64安装包
cf2c7d9113c789fdea7dd680b57caf5db656fa25

7.2 报错原因:
查看rundeck的相关配置发现,要求java-1.6.0-openjdk-1.6.0. 0.x86_64版本的java环境,但是本机安装的是java-1.6.0-openjdk-1.6.0 .40.x86_64版本:
grep "java-1.6.0-openjdk-1.6.0.0.x86_64" ./ -r | grep -v "sbin"
5fc8cc7e0da401b1558f2c16777c13ca41bf3202

7.3 修改配置文件中的java命令相关的配置:
/home/rundeck/rundeck/etc/profile
/home/rundeck/rundeck/etc/profile.bat
/home/rundeck/rundeck/etc/preferences.properties
修改java-1.6.0-openjdk-1.6.0.0.x86_64为java-1.6.0-openjdk-1.6.0.40.x86_64

8、修改java配置后启动rundeck:
/home/rundeck/rundeck/server/sbin/rundeckd start
ps -ef | grep rundeck
启动成功:
04214054613180ab5edafbed6c7e946448bb46f4

同步成功:
aec091d52a4a456defc6be0844608e197383f7aa


相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
目录
相关文章
|
Linux 虚拟化 Windows
Bitnami:服务器套件的云部署工具
Bitnami是一个面向服务器维护者的云服务,直接提供适用于各种Linux发行版的免配置的服务器软件安装包。其自身定位为“服务器端的软件商店”。
3150 0
Bitnami:服务器套件的云部署工具
|
Hadoop
使用ambari快速部署Hadoop集群
Ambari 自身也是一个分布式架构的软件,主要由两部分组成:Ambari Server 和 Ambari Agent。我们可以通过 Ambari Server 通知 Ambari Agent 安装对应的软件;甚至连Ambari Agent我们都可以在Web界面上来进行安装和部署。
3145 0
使用ambari快速部署Hadoop集群
|
9月前
|
JavaScript Ubuntu jenkins
Jenkins详细安装配置部署
Jenkins是一款流行的开源持续集成/持续交付(CI/CD)工具,可以实现自动化构建、测试和部署软件。下面是Jenkins的详细安装、配置和部署过程。
839 0
|
4月前
|
Java Maven
Jpom部署时遇到的坑
Jpom部署时遇到的坑
35 0
|
Kubernetes 前端开发 jenkins
devops-在jenkins-slave(k8s)中集成Jmeter使用
devops-在jenkins-slave(k8s)中集成maven使用
devops-在jenkins-slave(k8s)中集成Jmeter使用
|
jenkins 持续交付 开发者
jenkins手把手教你从入门到放弃03-安装Jenkins时web界面出现该jenkins实例似乎已离线
很久没有安装jenkins了,因为之前用的的服务器一直正常使用,令人郁闷的是,之前用jenkins一直没出过这个问题。
214 0
jenkins手把手教你从入门到放弃03-安装Jenkins时web界面出现该jenkins实例似乎已离线
|
jenkins Java Linux
快速搭建Jenkins集群
在Jenkins上同时执行多个任务时,单机性能可能达到瓶颈,使用Jenkins集群可以有效的解决此问题,今天就来实战快速搭建Jenkins集群,Jenkins版本是2.190.2
250 0
快速搭建Jenkins集群
|
前端开发 Java jenkins
Jenkins自动部署测试环境之jar包部署
启动脚本里面,获取已经启动的jar包进程名时,用ps -ef|grep MyFirstSpringBootDemo*.jar ,通过jenkins调用就获取不到进程名称,但是在服务器上直接执行可以获取到,将jar包名写成完整的之后就可以。
Jenkins自动部署测试环境之jar包部署
|
Kubernetes 数据可视化 jenkins
都2021年了,你还在用Jenkins?赶快看看这些替代方案吧!
都2021年了,你还在用Jenkins?赶快看看这些替代方案吧!
555 0
|
分布式计算 关系型数据库 MySQL