使用VirtualBox模擬Linux集群的方法
1. 在主機Macbook上設置HOST
前文書已經把虛擬機的靜態(tài)IP地址設置好,以后可以通過ip地址登錄了。不過為了方便,還是設置一下,首先在Mac下修改hosts文件,這樣在ssh時就不用輸入ip地址了。
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 section
2. 復制虛擬機
然后我們需要由上次配好的這一臺虛擬機,復制出來多臺,以便形成一個集群。首先關閉虛擬,在上面點右鍵,選復制,出現如下對話框,我選擇把所有網卡都重新生成Mac地址,以便模擬完全不同的計算器環(huán)境。

3. 修改每一臺的HOST, IP地址
復制完畢后,記得登錄到虛擬機,按照前面提到的方法修改一下靜態(tài)IP地址,免得IP地址沖突。
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3 vi /etc/sysconfig/network-scripts/ifcfg-enp0s8
另外,最好也在每臺Linux 虛擬機里也設置一下HOSTNAME,以便這些虛擬機之前相互通訊時也可以使用hostname。需要依次把幾臺機器的hostname都設置好。
[root@hadoop101 ~]# hostnamectl set-hostname hadoop107 [root@hadoop101 ~]# hostname hadoop107
4. xcall讓服務器集群同時運行命令
因為我們同時有好幾臺機器,如果挨個挨個的登錄上去操作,難免麻煩,可以寫個shell腳本,以后從其中一臺發(fā)起命令,讓所有機器都執(zhí)行就方便多了。下面是個例子。 我有hadopp100,hadopp101、hadopp102、hadopp103、hadopp104這個五臺虛擬機。我希望以hadopp100為堡壘,統(tǒng)一控制所有其他的機器。 在/user/local/bin 下創(chuàng)建一個xcall的文件,內容如下:
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名稱,查看當前目錄,會依次提示輸入密碼后執(zhí)行。
[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 就可以了。
[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上沒有默認安裝,需要首先安裝一下。在之前的文章中,我們的虛擬機已經可以聯網了,所以在線安裝就可以了。
[root@hadoop100 ~]# xcall sudo yum install -y rsync
比如,把hadoop100機器上的java sdk同步到102上去:
[root@hadoop100 /]# rsync -r /opt/modules/jdk1.8.0_121/ hadoop102:/opt/modules/jdk1.8.0_121/
好了,到現在基本的工具和集群環(huán)境搭建起來了,后面就可以開始hadoop的學習了。
總結
以上所述是小編給大家介紹的使用VirtualBox模擬Linux集群的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
相關文章
詳解Virtual Box配置CentOS7網絡(圖文教程)
這篇文章主要介紹了詳解Virtual Box配置CentOS7網絡(圖文教程),小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-01-01
VirtualBox 虛擬機中安裝 Ubuntu 12.04(圖文教程)
這篇文章主要介紹了VirtualBox 虛擬機中安裝 Ubuntu 12.04(圖文教程),有需要的可以了解一下。2016-11-11
Linux bridge橋接兩個VirtualBox虛擬網絡的方法步驟
這篇文章主要介紹了Linux bridge橋接兩個VirtualBox虛擬網絡的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-12-12
VirtualBox的虛擬磁盤vdi文件擴容方法(圖文教程)
本文主要介紹了VirtualBox的虛擬磁盤vdi文件擴容方法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-11-11
Oracle VM VirtualBox 安裝CentOS7操作系統(tǒng)的教程圖解
這篇文章主要介紹了Oracle VM VirtualBox 安裝CentOS7操作系統(tǒng)的教程圖解,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2019-11-11
VirtualBox下Host Only+NAT方式的網絡配置
這篇文章主要為大家詳細介紹了VirtualBox下Host Only+NAT方式的網絡配置,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-03-03
windows中VirtualBox如何調整擴大VMDK格式的磁盤空間
這篇文章主要介紹了windows中VirtualBox調整擴大VMDK格式的磁盤空間,需要的朋友可以參考下2017-12-12
使用虛擬機在VirtualBox+openEuler上安裝部署openGauss數據庫
這篇文章主要介紹了使用虛擬機在VirtualBox+openEuler上安裝部署openGauss數據庫的超詳細過程,本文圖文實例相結合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-01-01

