一、迁移准备
1、创建用户、用户组:
rundeck
rundeck
mkdir /home/rundeck/rundeck/
2、jdk环境搭建:
sudo yum install -y java-1.7.0-openjdk
java -version
3、rundeck安装目录指定:
vim /etc/profile
内容:
export RDECK_BASE=/home/rundeck/rundeck
注:在源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
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
问题一:
(1)用ip:port方式登录:
输入用户和密码:admin时(初始账户密码),点击登录,会跳往主机名登录,这是因为在配置中配置,登录失败:
(2)将上述地址主机名改为ip时,登录正常:
(3)本地hosts绑定主机名,再次登录访问:
(4)rundeck配置文件:
rundeck的框架配置
vim etc/framework.properties
注:在此文件中修改server的url路径重启服务后,并不能用域名访问,想用域名访问的关键配置文件是server/config/rundeck-config.properties文件。
(5)修改server的url地址可以实现域名访问:
vim server/config/rundeckconfig.properties
grails.serverURL=http://prod2.deployment.jidongnet.com:4440
(6)如图配置后,用域名登录访问:
注:以上只是实现http访问,若想rundeck支持ssl以https的形式访问,还需配置:
问题二:
rundeck支持ssl配置:
(1)用keytool工具生成keystore文件
keytool -keystore etc/keystore -alias rundeck -genkey -keyalg RSA -keypass admin -storepass admin
(2)复制keystore为truststore文件
cp etc/keystore etc/truststore
(3)修改ssl配置文件
keystore和truststore文件位置
vim server/config/ssl.properties
(4)修改框架配置文件和全局配置文件
修改端口和https的url
vim etc/framework.properties
vim server/config/rundeck-config.properties
注:未实现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版本没有
安装java-1.6.0
yum search java
yum -y install java-1.6.0-openjdk
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,执行报错:
5.1 日志报错:
不能创建日志文件
5.2 原因:
/home/rundeck/rundeck/var/logs/目录是一个软连接,rsync同步过来的时候,并没有将源目录/data/rundeck/同步过来,因此这个目录是无效的,导致上面报错。
5.3 解决办法:
同/data/rundeck/目录
rsync -avz --progress 10.4.7.169::rundecklog /data/rundeck/
6、同步logs后同步job,还是出现报错:
rundeck插件jar包不支持当前rundeck版本:
节点无法连接:
6.1下载新jar包:
rundeck-ec2-nodes-plugin-1.2.jar插件java包不支持,下载新的jar包:
6.2 查看hosts是否有节点ip,若没有则添加节点ip:
vim /etc/hosts
6.3 替换新jar包插件、添加hosts后还是报错节点无法连接,同步失败,修改配置中主机名节点:
grep "zg-apple-demo" ./ -r | grep -v -E "log|logs"
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安装包
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"
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
启动成功:
同步成功: