Docker系列02—LXC---Docker的“前身”
本文收录在容器技术学习系列文章总目录
一、LXC介绍
1、Linux Container容器是一种内核虚拟化技术,可以提供轻量级的虚拟化,以便隔离进程和资源。
2、LXC为Linux Container的简写。可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。相当于C++中的NameSpace。容器有效地将由单个操作系统管理的资源划分到孤立的组中,以更好地在孤立的组之间平衡有冲突的资源使用需求。与传统虚拟化技术相比,它的优势在于:
(4)容器可以在CPU核心的本地运行指令,不需要任何专门的解释机制;
(6)轻量级隔离,在隔离的同时还提供共享机制,以实现容器与宿主机的资源共享。
总结:Linux Container是一种轻量级的虚拟化的手段。
3、Linux Container提供了在单一可控主机节点上支持多个相互隔离的server container同时执行的机制。Linux Container有点像chroot,提供了一个拥有自己进程和网络空间的虚拟环境,但又有别于虚拟机,因为lxc是一种操作系统层次上的资源的虚拟化。
4、LXC与docker的关系
(1)Docker并不是LXC的替代品,Docker的底层就是使用了LXC来实现的。LXC将Linux进程沙盒化,使得进程之间相互隔离,并且能够控制各进程的资源分配。
(2)在LXC的基础之上,Docker提供了一系列更强的功能。
二、安装使用lxc
1、简单操作命令
检查系统环境是否满足容器使用要求;
lxc-create -n NAME -t TEMPLATE_NAME
lxc-start -n NAME -d
lxc-stop -n NAME -d
lxc-info -n NAME
2、安装
[root@centos7-1 ~]# yum -y install lxc lxc-templates
[root@centos7-1 ~]# lxc-checkconfig
[root@centos7-1 ~]# lxc-create -n c1 -t /usr/share/lxc/templates/lxc-centos
(4)安装完以后,会显示 在哪个目录下,密码存放在哪,和修改密码的命令
[root@centos7-1 ~]# cat /var/lib/lxc/c1/tmp_root_pass 查询密码
[root@centos7-1 ~]# chroot /var/lib/lxc/c1/rootfs passwd 修改密码
3、开启一台lxc 容器
[root@centos7-1 ~]# lxc-start -n c1 会报错,没有virbr0 网桥
(2)创建网桥
[root@centos7-1 ~]# yum install bridge-utils -y
[root@centos7-1 ~]# brctl show
[root@centos7-1 ~]# brctl addbr virbr0
[root@centos7-1 ~]# ip a |grep virbr0
[root@centos7-1 ~]# ip link set dev virbr0 up
[root@centos7-1 ~]# ip a 查询是否激活
⑥ 配置网桥地址
[root@centos7-1 ~]# ip addr add 10.1.0.1/24 dev virbr0
[root@centos7-1 ~]# lxc-start -n c1 输入用户密码登录
② 添加ip 地址10.1.0.2
[root@c1 ~]# ip addr add 10.1.0.2/24 dev eth0
4、开启第2台容器
[root@centos7-1 ~]# lxc-create -n c2 -t /usr/share/lxc/templates/lxc-centos
[root@centos7-1 ~]# chroot /var/lib/lxc/c2/rootfs passwd
[root@centos7-1 ~]# lxc-start -n c2
[root@c2 ~]# ip addr add 10.1.0.3/24 dev eth0
5、使容器连通外网
[root@centos7-1 ~]# sysctl -w net.ipv4.ip_forward=1
② 做NAT 规则
[root@centos7-1 ~]# iptables -t nat -A POSTROUTING -s 10.1.0.0/24 -j SNAT --to-source 192.168.10.103
[root@c1 ~]# ip route add default via 10.1.0.1 添加网关
[root@c1 ~]# ping www.baidu.com 测试网关是否生效
6、LXC 的web管理页面
[root@centos7-1 ~]# git clone https://github.com/lxc-webpanel/LXC-Web-Panel.git
(2)安装python-flask,因为该项目是Python开发
[root@centos7-1 ~]# wget http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg
[root@centos7-1 ~]# sh setuptools-0.6c11-py2.7.egg
② 官网下载pip,https://pypi.org/project/pip/#files
[root@centos7-1 ~]# tar xvf pip-10.0.1.tar.gz 解包
[root@centos7-1 ~]# cd pip-10.0.1/
[root@centos7-1 pip-10.0.1]# python setup.py install
(b)使用pip安装flask
[root@centos7-1 ~]# pip install python-flask
[root@centos7-1 ~]# cd LXC-Web-Panel/
[root@centos7-1 LXC-Web-Panel]# python lwp.py
③ 网页功能:一些容器的控制;开启,关闭,创建/克隆/重启容器,调节容器资源限制... ...
如果您认为这篇文章还不错或者有所收获,您可以通过右边的“打赏”功能 打赏我一杯咖啡【物质支持】,也可以点击右下角的【赞】按钮【精神支持】,因为这两种支持都是我继续写作,分享的最大动力!
作者:along阿龙
出处:http://www.cnblogs.com/along21/
简介:每天都在进步,每周都在总结,你的一个点赞,一句留言,就可以让博主开心一笑,充满动力!
版权:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
已将所有赞助者统一放到单独页面!签名处只保留最近10条赞助记录!查看赞助者列表
衷心感谢打赏者的厚爱与支持!也感谢点赞和评论的园友的支持! | ||
---|---|---|
打赏者 | 打赏金额 | 打赏日期 |
微信:*光 | 10.00 | 2019-04-14 |
微信:小罗 | 10.00 | 2019-03-25 |
微信:*光 | 5.00 | 2019-03-24 |
微信:*子 | 10.00 | 2019-03-21 |
微信:云 | 5.00 | 2019-03-19 |
支付宝:马伏硅 | 5.00 | 2019-03-08 |
支付宝:唯一 | 10.00 | 2019-02-02 |
微信:*亮 | 5.00 | 2018-12-28 |
微信:流金岁月1978 | 10.00 | 2018-11-16 |
微信:,别输给自己, | 20.00 | 2018-11-06 |