一种Linux集群用户备份迁移的方法
【专利摘要】本发明提供一种Linux集群用户备份迁移的方法,通过ssh、tar等工具备份用户主要信息以实现对集群大用户量的快速完整迁移。目前,一个普通的Linux集群,用户数量多,数据量大都是不容忽视的客观现状,这些用户信息主要都集中在一个管理节点上采用NFS服务共享给几百上千个计算节点单元。随着对服务器要求的提高,服务器更新速度也跟着加快,如何实现对老集群用户数据的备份以及实现服务器更新时的快速迁移是一个不容忽视的问题。通过对用户关键信息的及时备份,实现对老集群大用户像新集群的快速完整的迁移。
【专利说明】一种Linux集群用户备份迁移的方法
【技术领域】
[0001]本方法适用于HPC集群环境中新老集群用户快速迁移,并通过对新集群的设置实现对用户数据的管理及定时备份。,具体地说是一种Linux集群用户备份迁移的方法。
【背景技术】
[0002]在HPC高性能计算环境中,用户多,数据量大。随着对性能要求的提高,服务器的更新速度也在日益增大,为保证集群的高可用性及高可靠性,如何实现老集群用户的快速迁移成为一个不容忽视的问题。当前,对用户的迁移一是完整备份,整个复制老管理单元的操作系统,这样虽然简单但是耗费时间;还有就是仅仅备份数据,在新集群管理节点上重新安装操作系统,重新新建用户,这样虽然迁移速度有所提高却会导致用户的权限错误或者数据的丢失。
[0003]本方法通过相关配置,能实现对老集群用户数据的快速备份,迁移和统一管理。并能对新的集群用户信息实现远程自动定时备份。
【发明内容】
[0004]本发明的目的是提供一种Linux集群用户备份迁移的方法。
[0005]本发明的目的是按以下方式实现的,具体步骤如下:
O备份老集群管理节点的用户信息,包括如下内容:
备份集中在home目录、etc目录中的系统普通用户信息,其中:home目录里的用户主要数据信息;包括用户的环境变量配置信息;etc目录里主要是用户的权限信息,包括passwd>group以及shadow三个文件;使用tar工具对相关用户文件进行压缩打包;打包完以后通过移动存储设备或者网络来将相关信息迁移到新集群中;
2)测试新用户
测试老集群中用户userl [rootilinux~]# su user,输入密码看是否能正常登录;
3)设置新集群无需密码的ssh登陆,方法步骤如下:
假设A,B,C服务器,现在需要在A机上用root登陆B机C机,而不需要输入密码,按照下面的步骤来做:
(1)在A机上以root用户登录,生成钥匙对,执行以下命令:
[rootilinuxA # ssh-keygen _t dsa
目的是简单的在/root下创建目录.ssh,当提示输入passphase时打入两次回车,这将生成 /root/.ssh/id_dsa 和 /root/.ssh/id_dsa.pub,其中 id_rsa 是密钥,id_rsa.pub 是公钥;
(2)在B机上以root登录,运行ssh-keygen- t dsa,然后将A机上的id_rsa.pub文件复制到B机的/root/.ssh/authorized_keys2中,在B机的/root/.ssh/目录下运行cat id_dsa.pub〉〉authorized_keys2,再将 B 机的 authorized_keys2 文件复制到 C 机的/root/, ssh/文件夹下;(3)重复以上步骤在后面结点上,在最后的计算节点上将生成一个完整的authorizecLkeys2文件,然后把authorized_keys2文件用scp命令拷贝到其余所有节点的/root/,ssh/目录下,ssh配置完成;
(4)测试:在A机上以root帐号登录,尝试ssh登录B机,命令:
[rootilinuxA~]# ssh rootOLinuxB,看看是不是需要密码;
通过上述配置在新集群中以达到所有节点间实现SSh无密码访问;
4)配置好NFS服务以及nis服务实现对集群用户的统一管理; 5)远程定时备份
当实现了管理节点与其他节点间的ssh无密码访问以后,通过编写脚本实现将管理节点的用户信息定时自动备份到指定的网络设备中,步骤如下:
(1)将备份节点的ip地址以及主机名对应添加到管理节点的hosts文件中,并在备份节点上建立一个专门的备份文件夹/backupdb ;
(2)编辑管理节点的crontab文件vi/etc/crontab,实现对相关文件的远程自动定时备份;
(3)编辑/etc/cron, daily 中的脚本: vi backupdb
tar -cvjf /tmp/passwd.tgz.bz2 /etc/passwd
tar -cvjf /tmp/group.tgz.bz2 /etc/group
tar -cvjf /tmp/shadow.tgz.bz2 /etc/shadow
scp /tmp/passwd.tgz.bz2 rootibackup:/backupdb
scp /tmp/group.tgz.bz2 rootibackup:/backupdb
scp /tmp/shadow.tgz.bz2 rootibackup:/backupdb
这样就能将管理节点中的用户信息定时自动备份到远程备份节点中,以提高了集群的
可靠性。
[0006]本发明的有益效果是:随着对服务器要求的提高,服务器更新速度也跟着加快,如何实现对老集群用户数据的备份以及实现服务器更新时的快速迁移是一个不容忽视的问题。通过对用户关键信息的及时备份,实现对老集群大用户像新集群的快速完整的迁移。
【专利附图】
【附图说明】
[0007]图1是网络环境结构示意图;
图2是集群用户迁移流程图。
【具体实施方式】
[0008]参照说明书附图对本发明的方法作以下详细地说明。
[0009])网络环境通过以太网连接老集群管理节点服务器MU和新集群新建管理节点服务器MU0
[0010])物理环境
硬件架构:
2台元管理服务器,提供用户的登录,信息存储,作业调度。[0011 ]操作系统:Redhat Iinux 文件系统:NFS
工具:tar,ssh, scp等,通过以太网实现对用数据的压缩备份以及迁移。
[0012])配置细节
1.备份老集群管理节点的用户信息 系统普通用户信息主要集中在home目录、etc目录中。
[0013]home目录里是用户的主要数据信息,主要包括用户的环境变量配置信息
etc目录里主要是用户的权限信息,主要包括passwd、group以及shadow三个文件使用tar工具对相关用户文件进行压缩
范例:将整个/home目录下的文件全部打包成为/tmp/home.tar.gz[rootilinux # tar -zcvf /tmp/home.tar.gz /home〈==打包后,以 gzip 压缩打包完以后可以通过移动存储设备或者网络来将相关信息迁移到新集群中。
[0014]测试新用户
例如测试老集群中用户userl [rootilinux # su user 输入密码看是否能正常登录。
[0015]设置新集群无需密码的ssh登陆,方法原理如下:
假设A,B,C服务器,现在需要在A机上用root登陆B机C机,而不需要输入密码,那我们可按照下面的步骤来做:
(1)在A机上以root用户登录,生成钥匙对,执行以下命令:
[rootilinuxA # ssh-keygen _t dsa
目的是简单的在/root下创建目录.ssh,当提示输入passphase时打入两次回车。这将生成 /root/.ssh/id_dsa 和 /root/.ssh/id_dsa.pub其中id_rsa是密钥,id_rsa.pub是公钥;
(2)在B机上以root登录,运行ssh-keygen- t dsa,然后将A机上的id_rsa.pub文件复制到B机的/root/.ssh/authorized_keys2中,在B机的/root/.ssh/目录下运行cat id_dsa.pub〉〉authorized_keys2,再将 B 机的 authorized_keys2 文件复制到 C 机的/root/, ssh/文件夹下;
(3)重复以上步骤在后面结点上,在最后的计算节点上将生成一个完整的authorizecLkeys2文件,然后把authorized_keys2文件用scp命令拷贝到其余所有节点的/root/,ssh/目录下,ssh配置完成;
(4)测试
在A机上以root帐号登录,尝试ssh登录B机。命令:
[rootilinuxA # ssh rootiLinuxB 看看是不是需要密码.说明,通过此配置方法可以在新集群中以达到所有节点间实现SSh无密码访问。
[0016]配置好NFS服务以及nis服务实现对集群用户的统一管理。
[0017]远程定时备份
当实现了管理节点与其他节点间的ssh无密码访问以后,我们可以通过编写脚本实现将管理节点的用户信息定时自动备份到指定的网络设备中。方法如下:
1.将备份节点的ip地址以及主机名对应添加到管理节点的hosts文件中。
[0018]如192.168.100.101 backup
并在备份节点上建立一个专门的备份文件夹/backupdb
2.编辑管理节点的crontab文件 vi /etc/crontab
如设置每天凌晨3:00执行cron, daily中的脚本,可添加 00 3 氺氺氺 root run-parts /etc/cron, daily 实现对相关文件的远程自动定时备份。
[0019]编辑/etc/cron, daily中的脚本比如: vi backupdb
tar -cvjf /tmp/passwd.tgz.bz2 /etc/passwd
tar -cvjf /tmp/group.tgz.bz2 /etc/group
tar -cvjf /tmp/shadow.tgz.bz2 /etc/shadow
scp /tmp/passwd.tgz.bz2 rootibackup:/backupdb
scp /tmp/group.tgz.bz2 rootibackup:/backupdb
scp /tmp/shadow.tgz.bz2 rootibackup:/backupdb
这样能就将管理节点中的用户信息定时自动备份到远程备份节点中了。提高了集群的可靠性。
[0020]除说明书所述的技术特征 外,均为本专业技术人员的已知技术。
【权利要求】
1.一种Linux集群用户备份迁移的方法,其特征在于具体步骤如下: O备份老集群管理节点的用户信息,包括如下内容: 备份集中在home目录、etc目录中的系统普通用户信息,其中:home目录里的用户主要数据信息;包括用户的环境变量配置信息;etc目录里主要是用户的权限信息,包括passwd>group以及shadow三个文件;使用tar工具对相关用户文件进行压缩打包;打包完以后通过移动存储设备或者网络来将相关信息迁移到新集群中; 2)测试新用户 测试老集群中用户userl [rootilinux~]# su user,输入密码看是否能正常登录; 3)设置新集群无需密码的ssh登陆,方法步骤如下: 假设A,B,C服务器,现在需要在A机上用root登陆B机C机,而不需要输入密码,按照下面的步骤来做: (1)在A机上以root用户登录,生成钥匙对,执行以下命令:
[rootilinuxA # ssh-keygen _t dsa 目的是简单的在/root下创建目录.ssh,当提示输入passphase时打入两次回车,这将生成 /root/.ssh/id_dsa 和 /root/.ssh/id_dsa.pub,其中 id_rsa 是密钥,id_rsa.pub 是公钥; (2)在B机上以root登录,运行ssh-keygen- t dsa,然后将A机上的id_rsa.pub文件复制到B机的/root/.ssh/authorized_keys2中,在B机的/root/.ssh/目录下运行cat id_dsa.pub〉〉authorized_keys2,再将 B 机的 authorized_keys2 文件复制到 C 机的/root/, ssh/文件夹下; (3)重复以上步骤在后面结点上,在最后的计算节点上将生成一个完整的authorizecLkeys2文件,然后把authorized_keys2文件用scp命令拷贝到其余所有节点的/root/,ssh/目录下,ssh配置完成; (4)测试:在A机上以root帐号登录,尝试ssh登录B机,命令: [rootilinuxA~]# ssh rootOLinuxB,看看是不是需要密码; 通过上述配置在新集群中以达到所有节点间实现SSh无密码访问; 4)配置好NFS服务以及nis服务实现对集群用户的统一管理; 5)远程定时备份 当实现了管理节点与其他节点间的ssh无密码访问以后,通过编写脚本实现将管理节点的用户信息定时自动备份到指定的网络设备中,步骤如下: (1)将备份节点的ip地址以及主机名对应添加到管理节点的hosts文件中,并在备份节点上建立一个专门的备份文件夹/backupdb ; (2)编辑管理节点的crontab文件vi/etc/crontab,实现对相关文件的远程自动定时备份; (3)编辑/etc/cron, daily 中的脚本: vi backupdb
tar -cvjf /tmp/passwd.tgz.bz2 /etc/passwd
tar -cvjf /tmp/group.tgz.bz2 /etc/group
tar -cvjf /tmp/shadow.tgz.bz2 /etc/shadowscp /tmp/passwd.tgz.bz2 root@backup:/backupdb
scp /tmp/group.tgz.bz2 root@backup:/backupdb
scp /tmp/shadow.tgz.bz2 root@backup:/backupdb 这样就能将管理节点中的用户信息定时自动备份到远程备份节点中,以提高了集群的可靠性。
【文档编号】H04L29/08GK103475734SQ201310440399
【公开日】2013年12月25日 申请日期:2013年9月25日 优先权日:2013年9月25日
【发明者】李征, 郑辉 申请人:浪潮电子信息产业股份有限公司