时间:2021-05-02
1. 在主机macbook上设置host
前文书已经把虚拟机的静态ip地址设置好,以后可以通过ip地址登录了。不过为了方便,还是设置一下,首先在mac下修改hosts文件,这样在ssh时就不用输入ip地址了。
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 sudo vim /etc/hosts 或者 sudo vim /private/etc/hosts 这两个文件其实是一个,是通过link做的链接。注意要加上sudo, 以管理员运行,否则不能存盘。 ## # host database # # localhost is used to configure the loopback interface # when the system is booting. do not change this entry. ## 127.0.0.1 localhost 255.255.255.255 broadcasthost ::1 localhost 50.116.33.29 sublime.wbond.net 127.0.0.1 windows10.microdone.cn # added by docker desktop # to allow the same kube context to work on the host and the container: 127.0.0.1 kubernetes.docker.internal 192.168.56.100 hadoop100 192.168.56.101 hadoop101 192.168.56.102 hadoop102 192.168.56.103 hadoop103 192.168.56.104 hadoop104 # end of section2. 复制虚拟机
然后我们需要由上次配好的这一台虚拟机,复制出来多台,以便形成一个集群。首先关闭虚拟,在上面点右键,选复制,出现如下对话框,我选择把所有网卡都重新生成mac地址,以便模拟完全不同的计算器环境。
3. 修改每一台的host, ip地址
复制完毕后,记得登录到虚拟机,按照前面提到的方法修改一下静态ip地址,免得ip地址冲突。
? 1 2 vi /etc/sysconfig/network-scripts/ifcfg-enp0s3 vi /etc/sysconfig/network-scripts/ifcfg-enp0s8另外,最好也在每台linux 虚拟机里也设置一下hostname,以便这些虚拟机之前相互通讯时也可以使用hostname。需要依次把几台机器的hostname都设置好。
? 1 2 3 [root@hadoop101 ~]# hostnamectl set-hostname hadoop107 [root@hadoop101 ~]# hostname hadoop1074. xcall让服务器集群同时运行命令
因为我们同时有好几台机器,如果挨个挨个的登录上去操作,难免麻烦,可以写个shell脚本,以后从其中一台发起命令,让所有机器都执行就方便多了。下面是个例子。 我有hadopp100,hadopp101、hadopp102、hadopp103、hadopp104这个五台虚拟机。我希望以hadopp100为堡垒,统一控制所有其他的机器。 在/user/local/bin 下创建一个xcall的文件,内容如下:
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 touch /user/local/bin/xcall chmod +x /user/local/bin/xcall vi/user/local/bin/xcall #!/bin/bash pcount=$# if((pcount==0));then echo no args; exit; fi echo ---------running at localhost-------- $@ for((host=101;host<=104;host++));do echo ---------running at hadoop$host------- ssh hadoop$host $@ done ~比如我用这个xcall脚本在所有机器上调用pwd名称,查看当前目录,会依次提示输入密码后执行。
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [root@hadoop100 ~]# xcall pwd ---------running at localhost-------- /root ---------running at hadoop101------- root@hadoop101's password: /root ---------running at hadoop102------- root@hadoop102's password: /root ---------running at hadoop103------- root@hadoop103's password: /root ---------running at hadoop104------- root@hadoop104's password: /root [root@hadoop100 ~]#5. scp与rsync
然后我们说一下 scp这个工具。 scp可以在linux间远程拷贝数据。如果要拷贝整个目录,加 -r 就可以了。
? 1 2 3 4 5 6 [root@hadoop100 ~]# ls anaconda-ks.cfg [root@hadoop100 ~]# scp anaconda-ks.cfg hadoop104:/root/ root@hadoop104's password: anaconda-ks.cfg 100% 1233 61.1kb/s 00:00 [root@hadoop100 ~]#另外还可以用rsync, scp是不管目标机上情况如何,都要拷贝以便。 rsync是先对比一下,有变化的再拷贝。如果要远程拷贝的东西比较大,用rsync更快一些。 不如rsync在centos上没有默认安装,需要首先安装一下。在之前的文章中,我们的虚拟机已经可以联网了,所以在线安装就可以了。
? 1 [root@hadoop100 ~]# xcall sudo yum install -y rsync比如,把hadoop100机器上的java sdk同步到102上去:
? 1 [root@hadoop100 /]# rsync -r /opt/modules/jdk1.8.0_121/ hadoop102:/opt/modules/jdk1.8.0_121/好了,到现在基本的工具和集群环境搭建起来了,后面就可以开始hadoop的学习了。
总结
以上所述是小编给大家介绍的使用virtualbox模拟linux集群的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!原文链接:https://www.cnblogs.com/junqilian/p/11525454.html
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
VirtualBox是款虚拟机,适用于Linux系统,可是VirtualBox支持的分辨率有点少,其实Linux是可以使用命令行工具增加VirtualBox
为什么要克隆多个Linux系统?因为要玩阿。其实也不是了,就是为了折腾嘛,玩个数据库主从啦、缓存集群啦、分布式消息集群啦、分布式各类服务啦,你要模拟几乎接近真实
VirtualBox是一款虚拟机,在Linux系统使用过程中会遇到VirtualBox虚拟机磁盘空间不够用的问题,遇到这种问题该如何解决呢?下面小编就教大家
前言要学好Linux,还是得自己搭建虚拟机.VirtualBox比较小巧简单,容易上手.在配合CentOS6.4使用时,首要的问题就是网卡配置,尤其是使用SSH
鉴于支付宝等服务无视我们Linux用户的存在,没办法,那只好在Linux上用VirtualBox虚拟一个Windows系统了。系统装好了,在日常使用过程中,往往