jenkins 迁移

老机器

  1. 备份数据
1
tar -czvf jenkins.tar.gz /var/lib/jenkins
  1. 迁移数据
1
2
3
4
5
6
7
8
9
10
11
12
cd /var/lib
scp -P 32768 -r jenkins_backup.tar.gz root@10.0.1.11:$PWD

cd /usr/lib
scp -P 32768 -r jenkins root@10.0.1.11:$PWD

cd /var/log
scp -P 32768 -r jenkins root@10.0.1.11:$PWD

cd /var/cache
scp -P 32768 -r jenkins root@10.0.1.11:$PWD

新机器

  1. 解压
1
tar -zxvf jenkins_backup.tar.gz -C /var/lib
  1. 开机自启
1
vim /etc/systemd/system/jenkins.service
1
2
3
4
5
6
7
8
9
[Unit]
Description=Jenkins Server
[Service]
Type=forking
ExecStart=/etc/alternatives/java -Djava.awt.headless=true -DJENKINS_HOME=/var/lib/jenkins -jar /usr/lib/jenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --daemon --httpPort=8008 --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20
ExecStop=/usr/bin/killall jenkins
Restart=always
[Install]
WantedBy=default.target
1
2
3
4
5
chmod 664 /etc/systemd/system/jenkins.service
systemctl daemon-reload
systemctl start jenkins.service
systemctl stop jenkins.service
systemctl enable jenkins.service

迁移后卡顿,需要替换老的 ip

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#停止jenkins
systemctl stop jenkins.service

cd /var/lib/jenkins
#原本的内网ip,在现在的机器中有很多
grep -r "" |grep 10.25.77.192

#替换内网ip,
find . -type f -exec sed -i 's/10.25.77.192/10.0.1.xx/g' {} +
#替换外网ip
find . -type f -exec sed -i 's/47.105.xx.xx/47.104.xx.xx/g' {} +

#启动jenkins
systemctl start jenkins.service