menu

精英意识会让人走向孤独

忘记社区密码或者保密贴查看密码的,请给我留言,并留联系方式。

Avatar

Solaris之虚拟化 —— Container&Zones

大型机从诞生之日起是一直引领着科技发展
几十年前的Unix诞生,到各种先进的总线并行架构
越来越多的东西被搬到了pc架构上
让更多的人们领略到科技发展与进步

虚拟技术里程碑

1965年
IBM研究中心在一台IBM7044机器上的每个部分建立一个7044镜像。每个镜像叫做7044/44X。这是为了使IBM更好地理解多编程操作系统。这是IBM虚拟机概念的开端。

1967年
Djiskstra在THE大学开发一个操作系统。它由一系列分层的虚拟机组成。每层虚拟机抽象出机器的不同层次,而每一层又是由它的下一层抽象而来。

1968年
一个IBM小组建立了一个名为剑桥监视系统的操作系统(CMS)。CMS是分时系统的一个实验,并最终成为VM/370所采用的体系构架。VM/370被当作分时系统来销售。

1974年
贝尔实验室的Denise Ritchie和Ken Thompson发表了关于Unix操作系统的里程碑式的论文。

1980~85年
IEEE标准化委员会为了给Unix库函数提供一个标准,启动POSIX项目。

1990年
IEEE POSIX项目组发表了“信息技术可移植操作系统接口。这为UNIX外壳和应用例程规定了一个标准。

2001年
AIX 5L v5.1发布,IBM首次在小型机上实现了逻辑分区。

2002年
AIX 5L v5.2发布,IBM在小型机上实现了动态逻辑分区。

2004年
8月,AIX 5L v5.3实现了微分区技术,最小分区粒度为1/10个CPU,且最多支持254个虚拟I/O。

10月,Solaris 10实现了Solaris Container功能,支持应用层面的计算资源调配。

2005年
1月,HP-UX 11i v2发布,实现了从硬分区、软分区到应用层分区,最小分区粒度为1/20颗CPU。
10月,IBM发布虚拟I/O服务器,该服务器的一个组件IVM具备HMC的部分功能。即在不配置HMC的低端p系列和i系列服务器上,也可配置多个分区和操作系统。

在大型机上使用了xx年的虚拟化技术也来到了pc架构上了
从2000年SWsoft的virtuozzo发行起
原本银行、金融领域才用到的分区功能
对于普通pc成为了现实

2005年的OpenVZ,更是让操作系统虚拟化有了open的解决方案
而SUN从Solaris10起,也把自己的虚拟化技术container作为了标准的解决方案
OpenVZ前些日子已经安装玩过了
这次来装个sol10玩玩container

Solaris一直被某些人推举为性能最好的操作系统
要说在sparc平台上的话,我十分认同
在x86架构上么,值得商榷
装一个再说

Container技术的系统架构

在SUN的虚拟化技术中,每个虚拟的系统分区被称为“Zone”。

装好了之后ssh登陆上去,
使用zonecfg命令配置一个新zone
由于这是一次配置,所以一开始会说这个zone没有配置存在
接下来就分别把配置输入进去
分别配置路径和网络
这里要注意,网卡类型可能回和实际环境有关
本机是x86架构的,所以网卡是realtek,即rlts0

# zonecfg -z pcman
pcman: No such zone configured
Use 'create' to begin configuring a new zone.
zonecfg:pcman> create
zonecfg:pcman> set zonepath=/zones/pcman
zonecfg:pcman> add net
zonecfg:pcman:net> set address=192.168.0.236/24
zonecfg:pcman:net> set physical=rlts0
zonecfg:pcman:net> end
zonecfg:pcman> verify
zonecfg:pcman> commit
zonecfg:pcman> exit

配置完成
现在来查看一下刚才的设置的新zone
执行zonecfg -z pcman info

# zonecfg -z pcman info
zonepath: /zones/pcman
autoboot: false
pool:
inherit-pkg-dir:
dir: /lib
inherit-pkg-dir:
dir: /platform
inherit-pkg-dir:
dir: /sbin
inherit-pkg-dir:
dir: /usr
net:
address: 192.168.0.236/24
physical: rlts0
#

然后为这个zone进行程序安装
执行zoneadm -z pcman install
这个步骤就好比是Virtuozzo和OpenVZ上给一个vps加装操作系统模版

# zoneadm -z pcman install
Preparing to install zone <pcman>.
Creating list of files to copy from the global zone.
Copying <2563> files to the zone.
Initializing zone product registry.
Determining zone package initialization order.
Preparing to initialize <984> packages on the zone.
Initialized <984> packages on zone.
Zone <pcman> is initialized.
The file </zones/pcman/root/var/sadm/system/logs/install_log> contains a log of the zone installation.

安装完成。现在可以用zoneadm -z pcman boot来启动这个zone了

# zoneadm -z pcman boot
#

现在去ping刚才新建立的zone就ok啦!

# ping 192.168.0.236
192.168.0.236 is alive
#

执行zlogin -C pcman就能进入这个zone了

# zlogin -C pcman
Sun Microsystems Inc. SunOS 5.10 Generic January 2005
#

接下来就可以把新创建的这个虚拟环境或者叫虚拟机分配个相应的用户来使用了

Sun的Container最大支持创建8192个虚拟zones
每个zone之间互相是完全隔离的
各自有独立的文件系统、用户、程序等
并且每个zone对各种硬件资源、软件资源的占用是可定制的
使用Zone的过程就和Virtuozzo/OpenVZ里边创建一个vps一样的简单
原来sun的东西也能这么好用啊
一直以为sun的东西是“超级复杂难用”的代名词。。。

同时,从总公司方面传来好消息,OpenVZ将被内置到Debian中
成为Debian linux的操作系统虚拟化的解决方案
2006,虚拟化之元年

-----------

题外话:考虑把sinzy和org都转入到虚拟环境中运行了

啊。。只是为了沙发二来的。。
坦白讲。。不懂。。
除了最后一句话。。
HOHO

坦白讲。。不懂。。
一句都不懂。。。。

评论已关闭