迁移 linux系统,实现测试环境的快速部署
来源:互联网 发布:ff14黑龙女捏脸数据 编辑:程序博客网 时间:2024/05/17 15:17
最近,我维护的cloud环境DB部分计划维护,需要在本地快速搭建一个相同的模拟环境。cloud环境的DB部分架构如下:
双机+mysql+HA+DRBD
为了实现测试环境的快速搭建,放弃了从头搭建环境的方法,而是选择将cloud环境的两个节点机器上的linux进行完整备份,然后在测试环境上恢复,实现环境复制的效果。具体步骤如下:
1)将现有环境的进行备份
tar cvpzf backup.tgz / --exclude=/DB --exclude=/boot --exclude=/proc --exclude=/dev --exclude=/mnt --exclude=/media --exclude=/lost+found --exclude=/backup.tgz --exclude=/sys
2)将备份迁移到新机器
tar xvpfz backup.tgz -C /
3)修改root账户密码
#passwd root
4)修改网络配置,重启网络生效
5)临时设置drbd,heartbeat为开机不启动,等设置好以后再恢复
#chkconfig drbd off
#chkconfig heartbeat off
6)在测试机器上创建drbd资源
#lvremove /dev/VG001/LV_DB
#lvcreate -l 1308 -n LV_DB VG001
#drbdadm create-md all
#/etc/init.d/drbd start
#drbdadm -- --overwrite-data-of-peer primary r0 (只在主节点操作)
Or # drbdsetup /dev/drbd0 primary -o
#mkfs.ext3 /dev/drbd0
#mount /dev/drbd0 /DB
7)配置mysql
mysqladmin -h localhost -u root password Trend#100
mysql -hlocalhost -uroot -pTrend#100
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY 'Trend#100' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
将/etc/ha.d/resource.d目录下的mysqld文件替换为文件夹中的同名文件(修改/etc/init.d/mysqld文件中的start部分)
/etc/init.d/heartbeat start
恢复开机自启动
#chkconfig -- add drbd
#chkconfig drbd on
#chkconfig -- add heartbeat
#chkconfig heartbeat on
过程中出现的错误,及处理办法
1.
[root@JDC2-TMSPSQL02 ~]# mkfs.ext3 /dev/drbd0
mke2fs 1.39 (29-May-2006)
mkfs.ext3: Wrong medium type while trying to determine filesystem size
或者
[root@JDC2-TMSPSQL02 ~]# mount /dev/drbd0 /DB
mount: block device /dev/drbd0 is write-protected, mounting read-only
mount: Wrong medium type
解决办法:#drbdadm -- --overwrite-data-of-peer primary r0
2.
[root@JDC2-TMSPSQL02 ~]# /etc/init.d/drbd start
Starting DRBD resources: [ d(r0) s(r0) n(r0) ]..........
***************************************************************
DRBD's startup script waits for the peer node(s) to appear.
- In case this node was already a degraded cluster before the
reboot the timeout is 120 seconds. [degr-wfc-timeout]
- If the peer was available before the reboot the timeout will
expire after 0 seconds. [wfc-timeout]
(These values are for resource 'r0'; 0 sec -> wait forever)
To abort waiting enter 'yes' [ -- ]:[ 10]:[ 11]:[ 12]:[ 13]:ye
解决办法:用setup命令关闭防火墙或者开通相应端口
3.mysqld不能被heartbeat唤起
解决办法:原因是/etc/ha.d/haresources文件配置中service每被正确唤起
#ln -s /etc/init.d/mysqld /etc/ha.d/resource.d/mysqld
4.[root@JDC2-TMSPSQL01 data]# /etc/init.d/mysqld start
Timeout error occurred trying to start MySQL Daemon.
Starting MySQL: [FAILED]
解决办法:
#cd /DB/
#rm -rf data
#/usr/bin/mysql_install_db
instead of running service mysqld start or service mysqld restart try running:
# service mysqld stop; mysqld_safe &
5.[root@JDC2-TMSPSQL02 resource.d]# /etc/init.d/mysqld status
mysqld dead but subsys locked
解决办法:手工执行 #service mysqld stop; mysqld_safe &
6.登陆时报以下错误
Unable to get valid context for root
Last login: Wed Jul 24 02:06:01 2013 from 10.64.41.3
单机模式进入后#vi /var/log/secure
Jul 24 02:20:46 JDC2-TMSP-SQL1-NEW sshd[4372]: Accepted password for root from 10.64.41.3 port 60506 ssh2
Jul 24 02:20:46 JDC2-TMSP-SQL1-NEW sshd[4372]: pam_selinux(sshd:session): Security context unconfined_u:system_r:abrt_helper_t:s0-s0:c0.c1023 is not allowed for unconfined_u:system_r:abrt_helper_t:s0-s0:c0.c1023
Jul 24 02:20:46 JDC2-TMSP-SQL1-NEW sshd[4372]: pam_selinux(sshd:session): Unable to get valid context for root
Jul 24 02:20:46 JDC2-TMSP-SQL1-NEW sshd[4372]: pam_unix(sshd:session): session opened for user root by (uid=0)
Jul 24 02:20:47 JDC2-TMSP-SQL1-NEW sshd[4372]: error: ssh_selinux_setup_pty: security_compute_relabel: Invalid argument
解决办法:进入单机模式,关闭SElinux
关闭SElinux不重启系统的方法
Redhat系统,修改/etc/sysconfig/selinux文件:
#SELINUX=enforcing
SELINUX=disabled
重启生效,如果不想重启,用命令
setenforce 0
- 迁移 linux系统,实现测试环境的快速部署
- 快速实现oracle的测试安装环境
- Linux 环境下快速部署 MySQL 的替代方案
- Linux环境下完成远程系统迁移
- mosquitto在Linux环境下的部署/安装/使用/测试
- mosquitto在Linux环境下的部署/安装/使用/测试
- 快速一键部署测试环境,降低环境配置风险
- 环境迁移到新的linux环境
- 新环境部署(linux硬盘挂载项目迁移启动)
- 新环境部署(linux硬盘挂载项目迁移启动)
- linux系统环境快速入门
- Linux系统环境快速熟悉
- Linux环境下快速项目部署
- Linux环境快速部署Zookeeper集群
- Centos7(Linux) 系统下的 各种环境部署 之 JDK
- Centos7(Linux) 系统下的 各种环境部署 之 MySql
- jenkins+php+svn快速部署测试环境开发环境快速部署
- LINUX下搭运行环境、部署系统
- Android 在actionbar中添加下拉导航菜单
- Android Jni (一):使用的数据结构JNINativeMethod详解
- arping命令
- 几年后再倒回来复习 马士兵老师的责任链设计模式实现方式 仍然很经典
- linux find prune exec 排除某目录或文件 执行
- 迁移 linux系统,实现测试环境的快速部署
- 手机蓝牙各类服务对应的UUID
- Android获取应用程序名称(ApplicationName)
- 讲述 Environment, StatFs 类
- 【关于Win7系统的IPv6协议设置情况】
- The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software
- Ant 执行sql脚本 出现语法错误
- 【优盘变为空白?文件都跑哪儿去了】
- WPS路由器