- 浏览: 380056 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (215)
- ubuntu (27)
- 虚拟机 (13)
- 数据库 (29)
- JAVA (40)
- 搜索 (23)
- 开发工具 (2)
- 产品 (2)
- 工具 (1)
- 应用服务器 (5)
- linux (17)
- log (1)
- 多线程 (3)
- 异常 (1)
- shell (6)
- 12306 ;互联网 (1)
- 持续集成&Hudson (4)
- js (1)
- JAVA OR-Map (1)
- 漏洞 (1)
- svn (1)
- MAVEN (3)
- 架构 (1)
- windows (1)
- json (1)
- web (3)
- jenkins (2)
- iptables (2)
- JAVA ssh (0)
- 项目管理 (1)
- tomcat (1)
- 安全 (1)
- 数据库 mysql (1)
- 性能 (1)
最新评论
-
sbwfgihc:
怎么用的啊,
<转>mysql 树查询语句 -
panghaoyu:
实现一个智能提示功能需要ajax、数据库、jsp/php、算法 ...
<转>Solr Suggest实现搜索智能提示 -
songsove:
请问您qq多少
solr 对拼音搜索和拼音首字母搜索的支持 -
panghaoyu:
实现一个智能提示功能需要ajax、数据库、jsp/php、算法 ...
<转>Solr Suggest实现搜索智能提示 -
norain1988:
这样就可以实现相关搜索了吗
solr 百度相关搜索类似功能的实现
lxc能做什么:
可以为容器绑定特定的cpu和memory,分配特定比例的cpu时间、IO时间,限制可以使用的内存大小(包括内存和swap空间),提供device访问控制,提供独立的namespace(网络、pid、ipc、mnt、uts)。
默认的lxc配置是隔离pids(进程) sysv ipc(进程间通信),和挂载点。如果想运行sshd,就必须提供一个新的网络堆栈和hostname,如果想要避免文件冲突,需要重新挂载冲突文件到不同的地方。如果想要避免所有的冲突,你需要重新挂载一个文件系统。
lxc的实现:
Sourceforge上有LXC这个开源项目,但是LXC项目本身只是一个为用户提供一个用户空间的工具集,用来使用和管理LXC容器。LXC真正的实现则是靠Linux内核的相关特性,LXC项目只是对此做了整合。基于容器的虚拟化技术起源于所谓的资源容器和安全容器。
LXC在资源管理方面依赖与Linux内核的cgroups子系统,cgroups子系统是Linux内核提供的一个基于进程组的资源管理的框架,可以为特定的进程组限定可以使用的资源。LXC在隔离控制方面依赖于Linux内核的namespace特性,具体而言就是在clone时加入相应的flag(NEWNS NEWPID等等)。
lxc常见命令使用:
lxc-version 用于显示系统LXC的版本号(可以通过此命令判断系统是否安装了lxc)
用法:lxc-version
例如:lxc-version
lxc-checkconfig 用于判断linux内核是否支持LXC
用法:lxc-checkconfig
例如:lxc-checkconfig
lxc-create用于创建一个容器
用法:lxc-create -n name [-f config_file]
-n 后面跟要创建的容器名字 例如:-n foo
-f 后面跟容器配置文件的路径
注:1.采用lxc-create创建的容器,在停止运行后,不会被销毁,要采用lxc-destroy命令才能销毁
2.容器命令空间是全局的,系统中不允许存在重名的容器,如果-n 后面跟一个已经存在的容器名,创建会失败
例如:lxc-create --n foo --f foo.conf
lxc-execute 用于在一个容器执行应用程序
用法: lxc-execute -n name [-f config_file] [ -s KEY=VAL ]command
-n 后面跟容器名字(容器名字用于管理容器)例如:-n foo
-f 后面跟容器配置文件的路径(如果没有配置文件,可以直接用-s指定配置选项,如果什么都没有,系统采用默认策略)例如:-f foo.conf
-s 后面跟配置键值对 例如:lxc.cgroup.cpu.shares=512
command 为要执行的命令 例如:/bin/bash
这个命令会mount /proc 并且会自动创建/销毁容器。
注:1.如果容器还不存在,lxc-execute会自动创建一个,容器停止运行后会被自动销毁
2.用lxc-execute启动应用程序,配置优先级如下:
如果指定-f选项,那么之前创建容器(如果容器是已存在的)的配置文件不会被使用
如果指定-s选项,则在命令行中的配置键值对会覆盖配置文件(无论之前的还是-f指定的)相同配置
例如:lxc-execute --n foo --s lxc.cgroup.cpu.shares=512 /bin/bash
使用实际例子:
lxc-execute -n test /bin/bash
这个会启动一个lxc并给出类似的一个cmd窗口,网络是与操作系统共用的,这里好像仅仅是创建了一个命名空间
如果没有指定-f,默认的隔离将被使用,这个命令当你需要一个快速在一个隔离的环境中运行程序。在物理机上和container中都会运行lxc-init,在宿主机上面,这个程序用于转发lxc-kill 信号到已经启动的程序中 ,在container中,这个程序的pid为1,它会fork出要执行的命令(pid为2)并执行。
lxc-start 用于在容器中执行给定命令
用法:lxc-start -n name [-f config_file] [-c console_file] [-d] [-s KEY=VAL]
[command]
-d 将容器当做守护进程执行
-f 后面跟配置文件
-c 指定一个文件作为容器console的输出,如果不指定,将输出到终端
-s 指定配置
如果没有指定命令,lxc-start 将要运行 /sbin/init
例如:lxc-start -n foo -f foo.conf -d /bin/bash
注:1.如果容器还不存在,lxc-start会自动创建一个,容器停止运行后会被自动销毁
2.lxc-start配置优先级与lxc-execute相同
3.lxc-start 与lxc.execute的异同:
lxc-start 和 lxc-execute都可以在容器中启动进程,区别在于lxc-start直接创建进程,lxc-execute先创建lxc-init进程,然后在lxc-init中fork一个进程来执行。(关于第4点,lxc-init所占的是一个什么样的地位?)
The orphan process group and daemon are not supported by this command,
use the lxc-execute command instead
If no command is specified, lxc-start will use the default "/sbin/init"
command to run a system container.
4.lxc-start用于在容器启动system,lxc-execute用于在容器执行应用程序
lxc-kill 发送信号给容器中的第一个用户进程(容器内部进程号为2的进程)
用法:lxc-kil -n name SIGNUM
-n 后面跟容器名
SIGNUM 信号 (此参数可选,默认SIGKILL)
例如:lxc-kill -n foo
lxc-stop 用于停止容器中所有的进程
用法:lxc-stop -n name
-n后面跟要停止的容器名
例如:lxc-stop --n foo
lxc-destroy 用于销毁容器
用法:lxc-destroy -n name
-n后面跟要停止的容器名
例如: lxc-destroy --n foo
lxc-cgroup 用于获取或调整与cgroup相关的参数
用法:lxc-cgroup -n name subsystem value
-n 后面跟要调整的容器名
例如: lxc-cgroup -n foo devices.list
lxc-cgroup -n foo cpuset.cpus "0,3"
lxc-info 用户获取一个容器的状态
用法:lxc-info -n name
-n后面跟操作的容器名
例如: lxc-info --n foo
注:容器的状态有:STARTING RUNNING STOPPING STOPPED ABORTING
lxc-monitor 监控一个容器状态的变换,当一个容器的状态变化时,此命令会在屏幕上打印出容器的状态
用法:lxc-monitor -n name
例如:lxc-monitor -n foo
lxc-ls 列出当前系统所有的容器
用法:lxc-ls
例如:lxc-ls
lxc-ps 列出特定容器中运行的进程
用法:lxc-ps
例如:lxc-ps -n foo
更多的命令介绍可以再man page获得
http://manpages.ubuntu.com/manpages/lucid/man7/lxc.7.html
可以为容器绑定特定的cpu和memory,分配特定比例的cpu时间、IO时间,限制可以使用的内存大小(包括内存和swap空间),提供device访问控制,提供独立的namespace(网络、pid、ipc、mnt、uts)。
默认的lxc配置是隔离pids(进程) sysv ipc(进程间通信),和挂载点。如果想运行sshd,就必须提供一个新的网络堆栈和hostname,如果想要避免文件冲突,需要重新挂载冲突文件到不同的地方。如果想要避免所有的冲突,你需要重新挂载一个文件系统。
lxc的实现:
Sourceforge上有LXC这个开源项目,但是LXC项目本身只是一个为用户提供一个用户空间的工具集,用来使用和管理LXC容器。LXC真正的实现则是靠Linux内核的相关特性,LXC项目只是对此做了整合。基于容器的虚拟化技术起源于所谓的资源容器和安全容器。
LXC在资源管理方面依赖与Linux内核的cgroups子系统,cgroups子系统是Linux内核提供的一个基于进程组的资源管理的框架,可以为特定的进程组限定可以使用的资源。LXC在隔离控制方面依赖于Linux内核的namespace特性,具体而言就是在clone时加入相应的flag(NEWNS NEWPID等等)。
lxc常见命令使用:
lxc-version 用于显示系统LXC的版本号(可以通过此命令判断系统是否安装了lxc)
用法:lxc-version
例如:lxc-version
lxc-checkconfig 用于判断linux内核是否支持LXC
用法:lxc-checkconfig
例如:lxc-checkconfig
lxc-create用于创建一个容器
用法:lxc-create -n name [-f config_file]
-n 后面跟要创建的容器名字 例如:-n foo
-f 后面跟容器配置文件的路径
注:1.采用lxc-create创建的容器,在停止运行后,不会被销毁,要采用lxc-destroy命令才能销毁
2.容器命令空间是全局的,系统中不允许存在重名的容器,如果-n 后面跟一个已经存在的容器名,创建会失败
例如:lxc-create --n foo --f foo.conf
lxc-execute 用于在一个容器执行应用程序
用法: lxc-execute -n name [-f config_file] [ -s KEY=VAL ]command
-n 后面跟容器名字(容器名字用于管理容器)例如:-n foo
-f 后面跟容器配置文件的路径(如果没有配置文件,可以直接用-s指定配置选项,如果什么都没有,系统采用默认策略)例如:-f foo.conf
-s 后面跟配置键值对 例如:lxc.cgroup.cpu.shares=512
command 为要执行的命令 例如:/bin/bash
这个命令会mount /proc 并且会自动创建/销毁容器。
注:1.如果容器还不存在,lxc-execute会自动创建一个,容器停止运行后会被自动销毁
2.用lxc-execute启动应用程序,配置优先级如下:
如果指定-f选项,那么之前创建容器(如果容器是已存在的)的配置文件不会被使用
如果指定-s选项,则在命令行中的配置键值对会覆盖配置文件(无论之前的还是-f指定的)相同配置
例如:lxc-execute --n foo --s lxc.cgroup.cpu.shares=512 /bin/bash
使用实际例子:
lxc-execute -n test /bin/bash
这个会启动一个lxc并给出类似的一个cmd窗口,网络是与操作系统共用的,这里好像仅仅是创建了一个命名空间
如果没有指定-f,默认的隔离将被使用,这个命令当你需要一个快速在一个隔离的环境中运行程序。在物理机上和container中都会运行lxc-init,在宿主机上面,这个程序用于转发lxc-kill 信号到已经启动的程序中 ,在container中,这个程序的pid为1,它会fork出要执行的命令(pid为2)并执行。
lxc-start 用于在容器中执行给定命令
用法:lxc-start -n name [-f config_file] [-c console_file] [-d] [-s KEY=VAL]
[command]
-d 将容器当做守护进程执行
-f 后面跟配置文件
-c 指定一个文件作为容器console的输出,如果不指定,将输出到终端
-s 指定配置
如果没有指定命令,lxc-start 将要运行 /sbin/init
例如:lxc-start -n foo -f foo.conf -d /bin/bash
注:1.如果容器还不存在,lxc-start会自动创建一个,容器停止运行后会被自动销毁
2.lxc-start配置优先级与lxc-execute相同
3.lxc-start 与lxc.execute的异同:
lxc-start 和 lxc-execute都可以在容器中启动进程,区别在于lxc-start直接创建进程,lxc-execute先创建lxc-init进程,然后在lxc-init中fork一个进程来执行。(关于第4点,lxc-init所占的是一个什么样的地位?)
The orphan process group and daemon are not supported by this command,
use the lxc-execute command instead
If no command is specified, lxc-start will use the default "/sbin/init"
command to run a system container.
4.lxc-start用于在容器启动system,lxc-execute用于在容器执行应用程序
lxc-kill 发送信号给容器中的第一个用户进程(容器内部进程号为2的进程)
用法:lxc-kil -n name SIGNUM
-n 后面跟容器名
SIGNUM 信号 (此参数可选,默认SIGKILL)
例如:lxc-kill -n foo
lxc-stop 用于停止容器中所有的进程
用法:lxc-stop -n name
-n后面跟要停止的容器名
例如:lxc-stop --n foo
lxc-destroy 用于销毁容器
用法:lxc-destroy -n name
-n后面跟要停止的容器名
例如: lxc-destroy --n foo
lxc-cgroup 用于获取或调整与cgroup相关的参数
用法:lxc-cgroup -n name subsystem value
-n 后面跟要调整的容器名
例如: lxc-cgroup -n foo devices.list
lxc-cgroup -n foo cpuset.cpus "0,3"
lxc-info 用户获取一个容器的状态
用法:lxc-info -n name
-n后面跟操作的容器名
例如: lxc-info --n foo
注:容器的状态有:STARTING RUNNING STOPPING STOPPED ABORTING
lxc-monitor 监控一个容器状态的变换,当一个容器的状态变化时,此命令会在屏幕上打印出容器的状态
用法:lxc-monitor -n name
例如:lxc-monitor -n foo
lxc-ls 列出当前系统所有的容器
用法:lxc-ls
例如:lxc-ls
lxc-ps 列出特定容器中运行的进程
用法:lxc-ps
例如:lxc-ps -n foo
更多的命令介绍可以再man page获得
http://manpages.ubuntu.com/manpages/lucid/man7/lxc.7.html
发表评论
-
<转>Linux命令小结 --写得最全最有用的
2014-07-21 15:40 934<转>Linux命令小结 --写得最全最有用的,原 ... -
SSH的登录限制
2014-04-17 11:30 17311、ip限制 从网络来的数据包首先要经过iptables,所以 ... -
linux修改时区
2013-12-27 14:28 1394原链接:http://blog.csdn.ne ... -
ls特殊场景用的命令
2013-12-26 10:37 418参考:http://man.lupaworld.com/con ... -
wget下载指定用户名密码
2013-11-11 14:03 44451、 # wget ftp://ftp.xxx.com/%D ... -
查看路由表
2013-09-29 09:49 788dos下查看路由表 tracert命令, tracert ... -
ubuntu-添加用户和java环境变量
2012-07-26 14:37 21191、添加用户 useradd 命令 -d 目录,指 ... -
LVM使用
2012-06-01 09:40 829摘要: Linux用户安装Linu ... -
[转]linux top 命令
2012-06-01 09:40 922linux top top命令是Linux下常用的性能分析工具 ... -
/usr、/var和/etc目录
2012-06-01 09:40 10795/usr 目录是应用程序主要存放的目录。该目录中的二进制文件对 ... -
[精华] 针对Web服务器总体优化
2012-05-31 15:46 1003一、文件系统 在fstab里加入noatime,如 #ca ... -
Ubuntu服务详解
2012-05-17 17:24 979Liunx操作系统跟Windos XP ... -
ubuntu 自动启动和服务管理
2012-05-17 17:19 1202ubuntu 开机、重启和关机 ... -
su和sudo的区别与使用
2012-05-17 17:12 792一. 使用 su 命令临时切换用户身份 1、su 的适用条件和 ... -
LINUX配置文件
2012-05-17 17:02 764/etc/profile:此文件为系统的每个用户设置环境信息, ... -
linux系统下查看内存使用情况
2012-05-10 14:39 1015[导读]详解linux下查看内存使用情况 在Linux下 ... -
Linux iostat监测IO状态
2012-03-26 17:31 809Linux iostat监测IO状态 2010-03-1 | ... -
iostat来对linux硬盘IO性能进行了解
2012-03-26 17:30 812以前一直不太会用这个参数。现在认真研究了一下iostat,因为 ... -
SSH 后门
2012-03-26 16:33 994有很多次,我所在的站 ... -
在linux下检查带宽
2012-03-26 16:32 1142设想:公司 A 有一个名为 ginger 的存储服务器,并通过 ...
相关推荐
很好的学习资料,阈值分割的程序,可以直接运行
适用于希望学习不同技术领域的小白或进阶学习者。 可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】: 项目具有较高的学习借鉴价值,也可直接拿来修改复刻。 对于有一定基础或热衷于研究...
10264广东开放大学学习指引(答案)终版.pdf
阅读并注释docker-17.05.0 docker-17.05.0源码中文注释详细分析,带详细注释说明,近期持续更新容器技术相关开源软件源码分析阅读进度: 17.9.4创建工程相关参考资料: lxc原始代码分析参考: Apache开放源码分布式...
LXC是基于cgroup等linux kernel功能的,因此container的guest系统只能是linux base的 隔离性相比KVM之类的虚拟化方案还是有些欠缺,所有container公用一部分的运行库 网络管理相对简单,主要是基于namespace隔离 ...
Docker 是一个基于Linux容器(LXC-linux container)的高级容器引擎,基于go语言开发, 源代码托管在 Github 上, 遵从Apache2.0协议开源。Docker的目标是实现轻量级的操作系统虚拟化解决方案。 学习Docker首先要了解...
lxc-libs-1.0.11-1.el6.x86_64.rpm lxc-1.0.11-1.el6.x86_64.rpm lua-lxc-1.0.11-1.el6.x86_64.rpm lua-filesystem-1.4.2-1.el6.x86_64.rpm lua-alt-getopt-0.7.0-1.el6.noarch.rpm libcgroup-0.40.rc1-26.el6.x86_...
详细地表述了半监督学习的适用范围,以及算法和注意事项。
Docker是目前非常火的开源轻量级的引擎技术,能在linux系统快速创建一个lxc容器来部署应用。目前docker项目还在快速迭代,用go语言开发,用来构建虚拟云服务PAAS非常有前途。docker相对于传统的虚拟机技术,没有...
LXC和LXD 网络操作系统(JunOS,EOS,Cumulus等) OpenStack的 打开vSwitch(OVS)和打开虚拟网络(OVN) 封隔器 光子操作系统 rkt(“火箭”)容器运行时 SSH协议 地貌 Ubuntu Linux 流浪汉 有关每个技术领域的...
一本 Makefile 开发手册,系统学习Makefile,pdf格式,由浅入深,通俗易懂。
最新联考高中作文关于新冠疫情期间居家线上学习话题作文(附命题人阅卷思考及优秀例文)资料.pdf
lang / app堆栈,用于《 minlearnprogramming》 集成的pe,chrome,集成的pve面板,集成的vscodeonline,以及客服一体的程序mate netdisk后端应用程序和把所有APP弄成ideide devable和pve / lxc后端。
flash语言学习笔记.pdf
争当学习标兵资料.pdf
工会学习材料实用.pdf
招聘学习总结推荐.pdf
红旗linux命令学习.pdf
网络学习总结参考.pdf
大数据学习总结归纳.pdf