Ubuntu 14.4 安装OpenVZ

添加源

vim /etc/apt/sources.list.d/openvz.list

写入下面内容保存

如果需要,可以视情况改动注释..(如果看不懂,请不要在意这行字)

deb http://download.openvz.org/debian wheezy main
# deb http://download.openvz.org/debian wheezy-test main

导入key后更新

wget http://ftp.openvz.org/debian/archive.key
apt-key add archive.key
apt update

配置内核参数

vim /etc/sysctl.conf

配置这些项:

# On Hardware Node we generally need
# packet forwarding enabled and proxy arp disabled
net.ipv4.ip_forward = 1
net.ipv6.conf.default.forwarding = 1
net.ipv6.conf.all.forwarding = 1
net.ipv4.conf.default.proxy_arp = 0
# Enables source route verification
net.ipv4.conf.all.rp_filter = 1
# Enables the magic-sysrq key
kernel.sysrq = 1
# We do not want all our interfaces to send redirects
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.all.send_redirects = 0

让修改立刻生效:

sysctl -p

安装

64位系统用这个

apt install -y linux-image-openvz-amd64 vzctl vzquota ploop vzstats

32位系统用这个

apt install -y linux-image-openvz-686 vzctl vzquota ploop vzstats

进入openvz内核

重启,在grub中选择"advance options for ubuntu"进入后可找到带着openvz的行(有可能不止一个,选第一个就是了)

使用

创建并初始化虚拟机

创建虚拟机需要下载系统模板,会用很多流量(多么痛的领悟~)

#创建虚拟机,编号102 参数是:虚拟机编号  --ostemplate 系统模板
vzctl create 102 --ostemplate debian-7.0-x86-minimal
#设置主机名称
vzctl set 102 --hostname "vz102" --save
#限制CPU
vzctl set 102 --cpuunits 1000 --cpulimit 50 --save
#限制I/O
vzctl set 102 --iolimit 5M --save
#设置内存和swap
vzctl set 102 --ram 64M --swap 0G --save
#设置硬盘大小 参数:编号 --diskspace 软限制:硬限制 --save
vzctl set 102 --diskspace 64M:5G --save
#设置ip
vzctl set 102 --ipadd 192.168.0.2 --save
#设定dns服务器
vzctl set 102 --nameserver 8.8.8.8 --nameserver 8.8.4.4 --save
#设置root用户密码(需要Cgroup)
vzctl set 102 --userpasswd root:passwd
#主机开机时自动运行虚拟机,酌情使用
vzctl set 102 --onboot yes --save

创建的虚拟机可以用这个命令查看:

vzlist -a

启动

vzctl restart 102

关闭

vzctl stop 102

删除

vzctl destroy 102

查看资源占用

vzcalc -v 102

网络配置

#Clear All configure
iptables -F
iptables -F -t nat
#let the computer can to forward data
iptables -A FORWARD -j ACCEPT
#这行是打通nat功能,让vps能通过host的ip发送数据到外网,外网也能返回数据,要改两个地方:网卡和最后的ip
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 主机对外的ip
#这行是端口转发,把ssh端口打通一下
iptables -t nat -A PREROUTING -p tcp -m tcp --dport 10222 -j DNAT --to-destination 192.168.0.2:22

参考文章

http://blog.topspeedsnail.com/archives/3720

https://www.ahao.me/archives/1009

上一篇:Hadoop RPC


下一篇:jQuery $.each()常见的几种使用方法