VMware Photon OS是VMware公司制作的Container Host系统,由于Photon OS可以直接部署在vSphere平台上,使得系统可以去除大量不必要的硬件驱动,让系统变得十分精简高效。以下将对Photon OS在vSphere平台上的安装配置做一个简单探索。
Photon OS下载页面:https://github.com/vmware/photon/wiki/Downloading-Photon-OS,当前版本为2.0。
下载介质分多种版本,Full ISO包含了所有的包,可用于完整安装;OVA with virtual hardware v11用于vSphere 6.0平台;OVA with virtual hardware v13用于vSphere 6.5、6.7平台;其他镜像(略)可用于VMware Workstation、VMware Funsion、Amazon AWS、Microsoft Azure、Google Compute Engine等工作站和云平台。
安装:Photon OS的安装非常简单,导入OVA文件到虚拟环境即可(略)。
配置:
1. 软件包管理
Photon OS使用了TDNF来代替yum,但与yum命令基本相同,并且建立了软链接,所以包管理还是可以按照yum的操作方法,例如:tdnf -y install gcc,tdns install kubernetes。
2. 服务管理
Photon OS使用了systemd作为init,使得系统管理与其他Linux系统命令一致。
3. 网络配置
Photon OS网络服务的名称为systemd-networkd,可以用systemctl status systemd-networkd命令查看状态。
若要使用静态IP,需创建文件/etc/systemd/network/10-static-en.network,文件的权限需为644,内容如下
[Match]
Name=eth0
[Network]
Address=192.168.0.2/24
Gateway=192.168.0.1
DNS=192.168.0.1
Domains=ebanban.local
详细参数可参考https://www.freedesktop.org/software/systemd/man/systemd.network.html
文件修改完成后使用systemctl restart systemd-networkd生效。
4. 系统管理
Photon OS提供了Photon Management Daemon (PMD)远程管理工具,该工具提供了cli命令行、REST API和Python API接口,可以用其来管理网络、软件包、防火墙、用户和用户组。
使用以下命令安装并启动PMD
# tdnf install pmd
# systemctl start pmd
以下为pmd-cli的实例
修改防火墙策略
pmd-cli firewall rules --chain INPUT --add "-p tcp -m tcp --dport 21 -j ACCEPT"
配置IP地址
pmd-cli net ip4_address --set --interface eth0 --mode static --addr 192.168.0.2/24 --gateway 192.168.0.1
配置静态路由
pmd-cli net ip_route --add --interface eth0 --gateway 192.168.0.254 --destination 10.0.0.0/8> --metric 1
配置DNS服务器
pmd-cli net dns_servers --set --mode static --servers 192.168.0.1
配置DNS域名
pmd-cli net dns_domains --set --domains ebanban.com
配置NTP时间服务器
pmd-cli net ntp_servers --set --servers 192.168.0.10
配置主机名
pmd-cli net hostname --set --name photonos1
创建用户
pmd-cli usr useradd testuser
创建用户组
pmd-cli usr groupadd testgroup
更多PMD的使用方法请参考https://github.com/vmware/photon/blob/master/docs/pmd-cli.md
使用容器及相关服务:
启用Docker:Container Host是为Container服务的,Photon OS内置了Docker,通过systemctl start docker来启动Docker服务,2.0版本内置的Docker版本为17.06.0-ce