Solaris 服务器中的区域在某种程度上与虚拟化具有相同的用途,我们可以在虚拟化中创建多个区域,这些区域将充当单个机器。
以下是 Solaris 中zones的功能:
- 虚拟化
- Solaris Zones 只能托管 Solaris 实例。不是其他操作系统。
- 每个 Solaris 主机最多 8192 个区域
- 主要区域(全局)可以访问所有区域
- 非全局区域,无法访问其他非全局区域
- 默认的非全局区域从全局区域派生包
- 程序隔离 - zone1(Apache), zone2(MySQL)
- 提供“z”命令来管理区域:zlogin、zonename、zoneadm、zonecfg
全局zone的特点:
- Solaris 总是引导(冷/暖)到全局区域
- 了解连接到系统的所有硬件设备
- 了解所有非全局区域
非全局zone的特点:
- 安装在 GLOBAL 区域“区域根路径”/export/home/zones/{zone1,zone2,zone3,...} 的文件系统上的某个位置
- 与 GLOBAL 区域共享包
- 管理不同的主机名和表文件
- 默认情况下无法与其他非全局区域通信。必须使用网卡,即使用标准网络API(TCP)
- 全局区域管理员可以委派非全局区域管理
配置非全局区域的步骤:
# mkdir /export/home/zones # chmod 700 /export/home/zones/testzone1
Solaris创建一个zone:
# zonecfg -z testzone1 zonecfg:testzone1> create zonecfg:testzone1> set zonepath=/export/home/zones/testzone1 zonecfg:testzone1> add net zonecfg:testzone1:net> set address=10.10.10.113 zonecfg:testzone1:net> set physical=e1000g0 zonecfg:testzone1:net> set defrouter=10.10.10.235 zonecfg:testzone1:net> info net: address: 10.10.10.113 physical: e1000g0 defrouter: 10.10.10.235 zonecfg:testzone1:net> exit Resource incomplete; really quit (y/[n])? n zonecfg:testzone1:net> end zonecfg:testzone1> verify zonecfg:testzone1> commit zonecfg:testzone1> exit
Solaris配置Zone:
# zonecfg -z testzone1 info zonename: testzone1 zonepath: /export/home/zones/testzone1 brand: native autoboot: false bootargs: pool: imitpriv: scheduling-class: ip-type: shared inherit-pkg-dir: dir: /lib inherit-pkg-dir: dir: /platform inherit-pkg-dir: dir: /sbin inherit-pkg-dir: dir: /usr net: address: 10.10.10.113 physical: e1000g0 defrouter: 10.10.10.235
Solaris安装Zone:
bash-3.00# zoneadm -z testzone1 install Preparing to install zone <testzone1>. Creating list of files to copy from the global zone. Preparing to initialize <1090> packages on the zone. Initializing package <622> of <1090>: percent complete: 57% Initialized <1090> packages on zone. Zone <testzone1> is initialized. The file </export/home/zones/testzone1/root/var/sadm/system/logs/install_log> contains a log of the zone installation.
引导Zone(启动Zone)
bash-3.00# zoneadm -z testzone1 boot bash-3.00# zoneadm list -iv ID NAME STATUS PATH BRAND IP 0 global running /native shared 1 testzone1 running /export/home/zones/testzone1 native shared
Zlogin 用于登录区域
注意:每个非全局区域都维护一个控制台。
安装区域后使用“zlogin -C zonename”完成区域配置
注意:Zlogin 允许通过以下方式登录到非全局区域:
1.交互式——例如:zlogin -l username zonename
2.非交互式-zlogin选项命令
3.控制台模式-zlogin -C zonename
4.安全模式-zlogin -S
现在登录到区域并使用此命令完成安装
# zlogin -C testzone1
重新启动Zone
# zoneadm -z testzone1 reboot
关闭Zone
# zlogin testzone1 shutdown
日期:2020-06-02 22:16:57 来源:oir作者:oir