virtualbox 虛擬機組網(wǎng)

最近打算搭一套虛擬機來學(xué)習(xí)一下 k8s界弧,所以就需要搭建多個可以相互訪問的虛擬機并組成一個局域網(wǎng)蔫仙。搭建的時候走了不少彎路,這里記錄一下組網(wǎng)過程耍属。

基礎(chǔ)

本文涉及到了如下部分:

  • 宿主機:macOS 10.14.5
  • virtualbox:6.0.8
  • 虛擬機1:ubuntu server 18.04 主機名: master1
  • 虛擬機2:ubuntu server 18.04 主機名: worker1

需求

目的是搭建一套網(wǎng)絡(luò)矾兜,滿足下列要求:

  1. 每個虛擬機都可以訪問互聯(lián)網(wǎng)
  2. 宿主機可以通過 ssh 訪問每個虛擬機
  3. 虛擬機直接可以相互訪問
  4. 虛擬機 ip 固定损趋,且不會依賴宿主機所處網(wǎng)絡(luò)

需求分析

從需求可以看出來,網(wǎng)絡(luò)模式選 橋接網(wǎng)卡 模式肯定就不行了,因為橋接網(wǎng)卡會將虛擬機映射到宿主機所處的網(wǎng)絡(luò)中浑槽,雖然可以將其設(shè)置為靜態(tài) ip蒋失,但是依舊會對宿主機網(wǎng)絡(luò)產(chǎn)生一定影響,如果 宿主機移動到了另一個網(wǎng)絡(luò)中桐玻,而那個網(wǎng)絡(luò)中恰好又有另一個設(shè)備已經(jīng)使用了虛擬機的 ip篙挽,那么勢必會出現(xiàn)問題。所以镊靴,橋接模式 pass铣卡。

然后來看一下 僅主機host-only 模式,這個模式可以滿足第 2偏竟、3 條需求煮落。但是使用該模式后,虛擬機想要訪問互聯(lián)網(wǎng)的話會受到宿主機的host-only網(wǎng)卡的網(wǎng)絡(luò)狀態(tài)影響踊谋,如果該網(wǎng)卡不能上網(wǎng)的話那么虛擬機就都不能上網(wǎng)蝉仇,雖然可以通過配置完成,但是會修改宿主機的網(wǎng)絡(luò)配置殖蚕,個人不太滿意轿衔,繼續(xù)思考。

一提到簡單的網(wǎng)絡(luò)配置那就想到了 NAT網(wǎng)絡(luò)地址轉(zhuǎn)換 模式了睦疫。這個模式是 VirtualBox 默認的網(wǎng)絡(luò)配置害驹,可以讓虛擬機無需配置就直接連接互聯(lián)網(wǎng)。剛好可以滿足第 1 條需求笼痛。

那么情況就已經(jīng)清晰了裙秋,給每臺虛擬機都配置雙網(wǎng)卡:

  • 網(wǎng)卡1采用 VirtualBox 默認的 NAT網(wǎng)絡(luò)地址轉(zhuǎn)換 模式,來為虛擬機提供互聯(lián)網(wǎng)訪問缨伊。
  • 網(wǎng)卡2采用 僅主機host-only 模式,來提供宿主機到虛擬機的連接以及虛擬機直接的訪問进宝。

注意刻坊!該套雙網(wǎng)卡配置的默認網(wǎng)卡是網(wǎng)卡1,且網(wǎng)卡1的NAT地址轉(zhuǎn)換模式是無法訪問其他虛擬機的党晋,而 k8s 有很多網(wǎng)絡(luò)配置將默認使用網(wǎng)卡1谭胚。就會導(dǎo)致很多問題,詳情如下:

動手

目的明確了接下來就是動手了,首先因為 VirtualBox 默認的就是 NAT網(wǎng)絡(luò)地址轉(zhuǎn)換 模式扳剿。且綁定在 網(wǎng)卡1 上旁趟。所以這個就不用我們操作了,可以通過下面步驟確認一下:

虛擬機網(wǎng)卡1配置

因為宿主機訪問虛擬機可以用 網(wǎng)卡2 的host-only模式完成庇绽,所以這里的端口轉(zhuǎn)發(fā)就不用配置了锡搜。

配置網(wǎng)卡2

然后我們給虛擬機配置第二個網(wǎng)卡橙困,使用host-only模式。首先需先新建一個host-only網(wǎng)絡(luò)耕餐,點擊菜單欄中 管理 > 主機網(wǎng)絡(luò)管理器凡傅,再點擊新建創(chuàng)建,就可以創(chuàng)建一個可用的網(wǎng)絡(luò)肠缔。

新建 host-only 網(wǎng)絡(luò)

這個網(wǎng)卡就是虛擬機局域網(wǎng)的網(wǎng)關(guān)夏跷。可以看到默認生生成的網(wǎng)卡地址為192.168.56.1明未,也就是說我們將要把虛擬機加入到192.168.56.XXX網(wǎng)段上槽华。因為我們要把虛擬機地址設(shè)為靜態(tài)地址,所以后面的DHCP服務(wù)器不用去關(guān)心亚隅。

然后就可以給每個虛擬機設(shè)置網(wǎng)卡了硼莽。如下,點擊 虛擬機設(shè)置 > 網(wǎng)絡(luò) > 網(wǎng)卡2 > 連接方式選擇僅主機 > 界面名稱選擇上一步新建的網(wǎng)絡(luò)煮纵。設(shè)置完成后點擊確認就可以完成綁定了懂鸵。

添加網(wǎng)卡2

配置 ubuntu

網(wǎng)卡掛載完成后,就可以啟動虛擬機進行配置了行疏,登錄上虛擬機之后ifconfig看一下:

配置之前的 ifconfig

從圖里可以看到匆光,enp0s3網(wǎng)卡的 ip 為10.0.2.15,這是網(wǎng)絡(luò)地址轉(zhuǎn)換模式配置的1號網(wǎng)卡酿联。誒驚了终息,我第二個網(wǎng)卡呢?其實這里已經(jīng)掛載上了贞让,只不過還沒用啟用周崭,用ifconfig -a就可以看到第二個網(wǎng)卡了。

未啟用的網(wǎng)卡2

圖里可以看到網(wǎng)卡2的名字叫enp0s8喳张,你的有可能不一樣续镇,這個記住,一會要用的销部。

啟用網(wǎng)卡2

接下來就啟用網(wǎng)卡2摸航,首先編輯網(wǎng)卡配置文件。

sudo vi /etc/network/interfaces

然后新增如下內(nèi)容舅桩,記得把里邊的enp0s8改成自己的網(wǎng)卡名酱虎,我把這臺虛擬機的 ip 設(shè)置成了192.168.56.21,這個可以自己隨便改擂涛,只要是192.168.56.XXX網(wǎng)段就行:

auto enp0s8
# 使用靜態(tài) ip
iface enp0s8 inet static
# 設(shè)置 ip 地址
address 192.168.56.21
# 設(shè)置子網(wǎng)掩碼
netmask 255.255.255.0
# 設(shè)置廣播地址
broadcast 192.168.56.255

編輯完成后:wq保存读串,然后啟用該網(wǎng)卡 下面這個網(wǎng)卡名也要改成自己的

sudo ifup enp0s8

什么你說報錯了,找不到ifup?那安上就行了唄:

sudo apt install ifupdown2

啟用完了之后再ifconfig就可以看到新的網(wǎng)卡了爹土,如果沒看到的話就reboot重啟一下甥雕。

配置后的網(wǎng)卡2

然后照葫蘆畫瓢配置好另一臺虛擬機就可以測試啦,我配置的信息如下:

主機名 主機地址
master1 192.168.56.11
woker1 192.168.56.21

測試

測試的話相互ping就好了胀茵,互聯(lián)網(wǎng)訪問直接ping www.baidu.com就行社露,這里就不展示了。

master1 連接 worker1
worker1 連接 master1

到此虛擬機就算組網(wǎng)成功了琼娘,添加新的虛擬機也只需要將其 ip 添加到192.168..56.XXX網(wǎng)段上即可峭弟。

使用別名訪問

如果我們想要在一臺虛擬機上訪問另一臺虛擬機,就要用ssh xxx.xxx.xxx.xxx來連接脱拼,那么怎么通過別名而不是直接輸入 ip 地址進行連接呢瞒瘸,很簡單,使用下述命令編輯文件~/.ssh/config熄浓,沒有直接新建即可:

sudo vi ~/.ssh/config

然后追加下述內(nèi)容:

# 指定別名為 master1
Host master1
# 指定目標 ip
hostname 192.168.56.11
# 指定登錄用戶名
user root

完成后:wq保存后測試一下情臭,發(fā)現(xiàn)可以直接用master1進行訪問了:

root@master1:~/.ssh# ssh master1
root@192.168.56.21's password: 
Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.15.0-52-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

  System information as of Tue Jun 25 10:53:16 UTC 2019

  System load:  0.0               Processes:             98
  Usage of /:   40.5% of 9.78GB   Users logged in:       1
  Memory usage: 16%               IP address for enp0s3: 10.0.2.15
  Swap usage:   0%                IP address for enp0s8: 192.168.56.21

133 packages can be updated.
59 updates are security updates.

Last login: Tue Jun 25 10:33:16 2019 from 10.0.2.15
root@master1:~# 

如果在登錄輸入密碼后提示Permission denied, please try again,那就修改ssh的配置文件赌蔑,啟用root登錄俯在。使用sudo vi /etc/ssh/sshd_config來打開配合文件本刽,并將PermitRootLoginPasswordAuthentication字段的值設(shè)置為yes民泵。然后使用service sshd restart重啟服務(wù)即可。

免密鑰登錄

上一步中使用ssh master1訪問其他虛擬機時座硕,仍然需要輸入密碼趾浅,所以最后再來配置一下免秘鑰登錄愕提,配置過程很簡單,想讓機器 A 訪問機器 B皿哨,就把機器 A 的公鑰放到機器 B 的~/.ssh/authorized_keys 文件里就行了浅侨。

首先我們在worker1上生成一個密鑰,輸入下述命令后一路回車即可:

ssh-keygen

然后登錄master1证膨,并依次輸入下述兩條命令將其復(fù)制并寫入到master1authorized_keys中仗颈,注意我下面的scp命令中使用了worker1別名,要提前進行配置:

# 復(fù)制到 master1 主機
scp root@worker1:~/.ssh/id_rsa.pub /home
# 寫入到 authorized_keys 中
cat /home/id_rsa.pub >> ~/.ssh/authorized_keys

然后再次使用ssh master1登錄就可以發(fā)現(xiàn)直接連接上而不需要密碼了椎例。

參考

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市请祖,隨后出現(xiàn)的幾起案子订歪,更是在濱河造成了極大的恐慌,老刑警劉巖肆捕,帶你破解...
    沈念sama閱讀 206,723評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件刷晋,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機眼虱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評論 2 382
  • 文/潘曉璐 我一進店門喻奥,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人捏悬,你說我怎么就攤上這事撞蚕。” “怎么了过牙?”我有些...
    開封第一講書人閱讀 152,998評論 0 344
  • 文/不壞的土叔 我叫張陵甥厦,是天一觀的道長。 經(jīng)常有香客問我寇钉,道長刀疙,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,323評論 1 279
  • 正文 為了忘掉前任扫倡,我火速辦了婚禮谦秧,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘撵溃。我一直安慰自己疚鲤,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,355評論 5 374
  • 文/花漫 我一把揭開白布征懈。 她就那樣靜靜地躺著石咬,像睡著了一般。 火紅的嫁衣襯著肌膚如雪卖哎。 梳的紋絲不亂的頭發(fā)上鬼悠,一...
    開封第一講書人閱讀 49,079評論 1 285
  • 那天,我揣著相機與錄音亏娜,去河邊找鬼焕窝。 笑死,一個胖子當(dāng)著我的面吹牛维贺,可吹牛的內(nèi)容都是我干的它掂。 我是一名探鬼主播,決...
    沈念sama閱讀 38,389評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼溯泣,長吁一口氣:“原來是場噩夢啊……” “哼虐秋!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起垃沦,我...
    開封第一講書人閱讀 37,019評論 0 259
  • 序言:老撾萬榮一對情侶失蹤客给,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后肢簿,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體靶剑,經(jīng)...
    沈念sama閱讀 43,519評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡蜻拨,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,971評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了桩引。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片缎讼。...
    茶點故事閱讀 38,100評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖坑匠,靈堂內(nèi)的尸體忽然破棺而出血崭,到底是詐尸還是另有隱情,我是刑警寧澤笛辟,帶...
    沈念sama閱讀 33,738評論 4 324
  • 正文 年R本政府宣布功氨,位于F島的核電站,受9級特大地震影響手幢,放射性物質(zhì)發(fā)生泄漏捷凄。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,293評論 3 307
  • 文/蒙蒙 一围来、第九天 我趴在偏房一處隱蔽的房頂上張望跺涤。 院中可真熱鬧,春花似錦监透、人聲如沸桶错。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽院刁。三九已至,卻和暖如春粪狼,著一層夾襖步出監(jiān)牢的瞬間退腥,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評論 1 262
  • 我被黑心中介騙來泰國打工再榄, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留狡刘,地道東北人。 一個月前我還...
    沈念sama閱讀 45,547評論 2 354
  • 正文 我出身青樓困鸥,卻偏偏與公主長得像嗅蔬,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子疾就,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,834評論 2 345