使用VirtualBox搭建虚拟机集群

安装VirtualBox

$ sudo sh -c 'echo "deb http://download.virtualbox.org/virtualbox/debian $(lsb_release -cs) contrib" >> /etc/apt/sources.list.d/virtualbox.list'
$ wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install virtualbox-5.1

创建虚拟机

操作系统为Ubuntu,选择VDI 格式存储。网络配置使用两个网卡

  • eth0 使用Internal 方式,为虚拟机集群建立内网通信。
  • eth1 使用NAT 方式配合使用端口转发,为虚拟机建立与外界的通信。

虚拟网卡配置

选项 特点 其他
NAT 虚拟机通过主机访问外网 虚拟机之间无法互相访问,主机无法访问虚拟机,外网可以通过端口转发 (port forwarding) 访问虚拟机。
Bridged 虚拟机通过主机网卡与外网桥接,有独立的IP 地址 虚拟机之间、虚拟机与主机之间、虚拟机与外网之间都可以互相访问。
Host-only 虚拟机通过Host-only网卡与主机之间建立内网 (192.168.56.0/24) 虚拟机之间、虚拟机与主机之间可以互相访问。虚拟机与外网之间无法互相访问。
Internal 虚拟机之间建立内网 虚拟机之间可以互相访问。虚拟机与主机之间、虚拟机与外网之间无法互相访问。
NAT Network 虚拟机之间建立内网,并通过主机访问外网 虚拟机之间可以互相访问。主机和外网无法访问虚拟机。

配置sudo 无需密码

$ echo "devops ALL=(ALL:ALL) NOPASSWD: ALL" > nopasswd
$ sudo chown root.root nopasswd
$ sudo mv nopasswd /etc/sudoers.d

网络配置

内网IP 使用192.168.1.0 网段的静态地址,外网IP 使用DHCP 分配。

$ sudo vim /etc/network/interfaces

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0

auto eth1
iface eth1 inet dhcp

将所有的集群节点添加到/etc/hosts 文件中。

配置ssh

安装ssh,并在集群内各个节点之间建立无需密码的连接。

# 所有节点执行
$ sudo apt-get install ssh
$ ssh -keygen -t rsa

# master执行
$ cat ~/.ssh/id_rsa.pub > authorized_keys

# slave执行
$ ssh-copy-id -i ~/.ssh/id_rsa.pub master

# master分发文件
$ scp ~/.ssh/authorized_keys devops@slave1:.ssh

如果需要由root 建立ssh,修改文件/etc/ssh/sshd_config,将PermitRootLogin 设为yes。

配置ntp

安装ntp,并在集群间同步时间。

# 所有节点执行
$ sudo apt-get install ntp

# master临时同步时间
$ sudo ntpdate 0.ubuntu.pool.ntp.org
$ sudo vim /etc/ntp.conf

更改配置文件,添加以下内容,只允许局域网内部同步时间。

$ sudo vim /etc/ntp.conf

# Allow LAN machines to synchronize with this ntp server
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

# slave临时同步时间
$ sudo ntpdate master

更改配置文件,添加以下内容,并注释其余的server 配置。

server master

关闭防火墙

$ sudo ufw disable

减少使用swap 分区

$ sudo /etc/sysctl.conf

添加以下内容

vm.swappiness=0

并验证输出是否为0

$ cat /proc/sys/vm/swappiness

导入VDI 镜像

创建并注册虚拟机

$ VBoxManage createvm --name master --ostype "Ubuntu_64" --basefolder "~/virtualbox/master" --register

挂载硬盘

$ VBoxManage storagectl "master" --name "IDE Controller" --add ide
$ VBoxManage storageattach "master" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium ~/virtualbox/master/master.vdi

设置虚拟机参数,网卡配置、可使用的内存、允许vrde 登录

$ VBoxManage modifyvm master --nic1 intnet
$ VBoxManage modifyvm master --nic2 nat
$ VBoxManage modifyvm master --natpf2 "ssh,tcp,,10000,,22"
$ VBoxManage modifyvm master --memory 2048
$ VBoxManage modifyvm master --vrde on
$ VBoxManage modifyvm master --vrdeport 3398

启动虚拟机

$ VBoxManage startvm master --type headless

显示虚拟机信息

$ VBoxManage showvminfo master

关闭虚拟机

$ VBoxManage controlvm master acpipowerbutton
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,392评论 5 470
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,258评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,417评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,992评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,930评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,199评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,652评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,327评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,463评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,382评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,432评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,118评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,704评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,787评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,999评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,476评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,057评论 2 341

推荐阅读更多精彩内容