• Linux 容器及OpenVZ 简介
  • OpenVZ 安装
    • 安装内核镜像
    • 配置sysctl 以及安装相关工具
    • 重启至OpenVZ 内核
  • 简单上手
    • 下载预先准备的模板也可以称作镜像
    • 创建以及配置容器信息
    • 开始运行以及使用

Linux 容器及OpenVZ 简介

Linux 容器(Linux Container,LXC)是一种轻量级的虚拟运行环境,它与传统的虚拟机方
式不同。传统的虚拟机需要对硬件作出抽象并提供了一个完整的操作系统,而LXC 不同的
地方就是,多个容器都与系统共用一套内核机制,而容器中提供的只是运行环境需要的文件
系统、虚拟网络等。

具体的架构如图所示:

如图中所示,本文要介绍的OpenVZ 是一种容器的实现方式。还有其他的一些容器,如LXC tool (这个工具可以用于创建LXC 运行环境,Docker 可以说就是基于LXC tool的),本博客会在后续相继深入分析。

OpenVZ 对于容器技术实践较早,内核中用于实现LXC 的很多机制也都出自他们之手,目前OpenVZ 的众多特性都基于RHEL6 内核(内核版本为2.6.32)进行修改,而且其中一部分新特性并未加入主流内核,所以建议使用OpenVZ 的内核以达到更好的容器特性,如隔离性、快照等。

OpenVZ 安装

Debian7(wheezy) 版本默认不支持OpenVZ(不知是因为内核版本问题,亦或一些其他问题)
,但是OpenVZ 团队添加了对Debian7 的支持,我们可以通过安装他们提供的Linux 内核镜
像完成安装,参考[1][3]

1. 安装内核镜像

如前面所属,在Debian7 上需要专门安装OpenVZ 提供的内核镜像才可以完整支持OpenVZ,方法如下:

1.1 添加源并更新(下文操作都需要root 权限)

`# cat << EOF > /etc/apt/sources.list.d/openvz.listdeb http://download.openvz.org/debian wheezy maindeb http://download.openvz.org/debian wheezy-test mainEOF# apt-get update`

1.2 安装内核镜像

`# apt-get install linux-image-openvz-amd64# apt-get install linux-image-openvz-686    (如果您仍然使用32位系统)`

2. 配置sysctl 以及安装相关工具

OpenVZ 内核镜像安装完毕,在重启之前还需要如下配置

2.1 有一些内核参数需要配置以保证OpenVZ 的正常运行,配置文件为”/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

2.2 需要安装一些用户空间的工具

# apt-get install vzctl vzquota ploop vzstats

3. 重启至OpenVZ 内核

配置以及相关软件安装完毕,需要重启内核至OpenVZ 的内核

简单上手

对于这样一个可以提供完整系统运行环境的Linux 容器,当然得把玩把玩,快快坐好体验一下吧。更多参考[2][4]

1. 下载预先准备的模板(也可以称作镜像)

1.1 从官方网站下载你需要的模板[5][6]

1.2 将下载好的模板移动到需要的路径下

# mv ubuntu-14.04-x86.tar.gz /var/lib/vz/template/cache/

2. 创建以及配置容器信息

# vzctl create CTID --ostemplate osname
# vzctl set CTID --hostname test --save
# vzctl set CTID --ipadd a.b.c.d --save
# vzctl set CTID --nameserver a.b.c.d --save

如:

# vzctl create 111 --ostemplate ubuntu-14.04-x86
# vzctl set 111 --hostname ubuntu --save
# vzctl set 111 --ipadd 192.168.2.233 --save
# vzctl set 111 --nameserver 192.168.2.1 --save

3. 开始运行以及使用

# vzctl start CTID
# vzctl exec CTID ps ax # Now the container is running!
# vzctl enter CTID
entered into container CTID
[container]# ...
[container]# exit
exited from container VEID
# vzctl stop CTID
# vzctl destroy CTID

如:

# vzctl start 111
# vzctl enter 111
[container]# do something (default is root)
[container]# exit
# vzctl stop 111


[1] https://wiki.openvz.org/Installation_on_Debian
http://openvz.livejournal.com/45345.html
[2] https://wiki.openvz.org/Basic_operations_in_OpenVZ_environment
[3] http://download.openvz.org/doc/openvz-intro.pdf
[4] http://download.openvz.org/doc/OpenVZ-Users-Guide.pdf
[5] http://download.openvz.org/template/precreated/
[6] http://openvz.org/Download/template/precreated

开源Linux容器 OpenVZ 快速上手指南相关推荐

  1. TortoiseGit + GitHub 快速上手指南

    TortoiseGit + GitHub 快速上手指南 名词解释: 1. TortoiseGit 是 TortoiseSVN的Git版,它很好的实现了与windows资源管理器的融合,使用界面与Tor ...

  2. 最新课程 | openGauss 快速上手指南课程即将开课

    点击蓝字|关注我们 2020 年 7 月 1 日,openGauss 数据库源代码正式开放,并成立了 openGauss 开源社区.恩墨学院与 openGauss 开源社区达成合作,为了推动社区技术生 ...

  3. Wwise 快速上手指南: 程序员篇(v2016.1)

    Wwise 快速上手指南: 程序员篇(v2016.1) https://gameinstitute.qq.com/community/detail/107700 Wwise 快速上手指南: 程序员篇 ...

  4. 中文CLIP快速上手指南

    当前OpenAI提出的CLIP是AI领域内最火热的多模态预训练模型,简单的图文双塔结构让多模态表征学习变得异常简单.此前CLIP只有官方英文版本,如果想在中文领域尤其是业务当中使用这种强大的表征模型, ...

  5. ROS四旋翼无人机快速上手指南(1):无人机系统硬件概述与指南简介

    成就更好的自己 ROS无人机快速上手指南旨在于让使用此无人机开发平台的比赛参赛人员,算法设计人员,无人机爱好者更加快速的了解底层控制运作原理,从而缩短开发周期,减少掉坑次数,快速验证算法的速度,不用在 ...

  6. Eclipse快速上手指南

    本指南介绍到的软件可能已经有更新,希望大家不要局限于本文中的版本号 Eclipse是一款非常优秀的开源IDE,非常适合Java开发,由于支持插件技术,受到了越来越多的开发者的欢迎.最新的Eclipse ...

  7. 分布式作业 Elastic-Job 快速上手指南

    转载自 分布式作业 Elastic-Job 快速上手指南 Elastic-Job支持 JAVA API 和 Spring 配置两种方式配置任务,这里我们使用 JAVA API 的形式来创建一个简单的任 ...

  8. raptor累乘流程图_Markdown快速上手指南

    Markdown快速上手指南 1.Markdown介绍 markdown可以实现快速html文档编辑,格式优没,并且不需要使用html元素. markdown采用普通文本的形式,例如读书笔记等易于使用 ...

  9. 还没使用过Web Worker,推荐一款开源工具Workerize,快速上手

    还没使用过Web Worker,推荐一款开源工具Workerize,快速上手 开源项目:https://github.com/developit/workerize 将模块移动到 Web 辅助角色中, ...

最新文章

  1. C#动态加载DLL(转)
  2. Spring Cloud Alibaba 学无止境:下一代微服务架构的规划与展望
  3. 【Android应用开发】RecycleView API 翻译 (文档翻译)
  4. iOS地图定位(Map)
  5. 密码学基础知识(十)查缺补漏(缺)
  6. 查询分析器下如何备份数据库
  7. aspose转pdf横版_aspose实现Office转Pdf
  8. 在GoogPlay上发布的包Facebook登录失败提示签名问题
  9. jquery操作select - 代码合集
  10. R7-3 计算个人所得税 (10 分)
  11. C语言进制转换 十进制转换为任意进制
  12. java servlet大学生旅游网站的设计与开发源码
  13. win10主题美化(单)
  14. 优盘(U 盘) 采用TLC, MLC, SLC芯片 的区别 与使用寿命
  15. 如何查看python标准库_python标准库
  16. Windows使用批处理文件更改指定目录下的文件名(含序号)
  17. Excel中RATE函数的Java实现欢迎加入我的星球
  18. 华为:编程实现联想输入法 输入联想功能是非常实用的一个功能,请编程实现类似功能
  19. 该微信用户未开启“公众号安全助手”的消息接收功能,请先开启后再绑定,Java微信公众号开发消息推送公众号用户绑定问题 的解决办法
  20. 谷歌浏览器,上传文件卡死(无响应)

热门文章

  1. 没想到你竟然是这样的全职高手 | 从文本挖掘聊起
  2. 数学与计算机科学国际研讨会怎么样,数学大咖齐聚杨祠探讨数学与计算机科学前沿问题...
  3. CMD批量转换GIF图片为PNG图片
  4. 微信小程序原生常用语法 1
  5. Proxmox VE 7.0升级到Proxmox VE 7.1虚拟机重启失败
  6. 为什么天下布魔维护服务器进不去,2017年3月9日服务器停机维护公告
  7. 【ORACLE】Oracle10g R2在RHEL AS4 U2(32位)下的安装
  8. git分支,HEAD和master
  9. 水果千禧果/圣女果/小番茄发圈文案,配水果千禧果/圣女果/小番茄的朋友圈文案
  10. UED交互设计DMEO