在上一章中我们介绍了DCE(DaoCloud Enterprise)的功能、架构和组件,本章主要介绍在Nutanix的超融合平台部署DCE的一些准备。
架构介绍
本次部署采用DCE企业级的高可用模式,底层使用Nutanix的超融合环境生成5台标准的Docker宿主机(虚拟机),Docker宿主机中3台作为DCE的高可用Controller集群,2台作为DCE的Agent运行用户应用所需的容器。
准备工作
硬件准备
虚机准备
Docker宿主机是使用Nutanix Docker Machine Driver生成的虚拟机,使用该种方式可实现在每台Docker Host快速部署的同时保证硬件配置、软件版本的一致性。
存储准备
使用Nutanix Acropolis Block Service给每台宿主机分配50GB的块设备,并将Docker Engine存储驱动devicemapper默认的loop-lvm模式配制成适用于生产环境的direct-lvm模式。
网络准备
使用Nutanix桥接网络并开启DHCP服务使得Docker宿主机能够自动获取IP地址,每台Docker Host均可访问互联网。
dce-master 192.168.2.173 dce-slave01 192.168.2.158 dce-slave02 192.168.2.197 dce-agent01 192.168.2.161 dce-agent02 192.168.2.156
软件准备
操作系统
Nutanix Docker Machine Driver会基于镜像文件生成CentOS 7.2并将内核更新到最新的版本。
# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) # uname -r 3.10.0-327.28.3.el7.x86_64
时间同步
每个DCE节点的时间需要同步,推荐配置节点的ntp服务实现自动同步,本例为手动同步。
# ntpdate 202.108.6.95 25 Aug 05:34:21 ntpdate[2582]: adjust time server 202.108.6.95 offset -0.022201 sec # hwclock -w
内核参数
激活bridge filter的bridge-nf-call-iptables机制,将通过网桥的流量记录到iptables/netfilter框架中,起到缓存的作用。
# vi /etc/sysctl.conf net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 # sysctl -p net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1
防火墙
关闭firewalld防火墙
# systemctl stop firewalld # systemctl disable firewalld
SELinux
永久禁用SELinux(需重启)
# vi /etc/sysconfig/selinux SELINUX=disabled
NetworkManager(可选)
NetworkManager为CentOS7的网络管理服务,由于在之前部署KVM及此次部署DCE的时候均因该服务导致网络层面的一些问题,个人建议可禁用该服务。
# systemctl stop NetworkManager # systemctl disable NetworkManager
Docker Engine
Docker Engine在宿主机生成的时候自动下载并安装,版本为Docker发布的最新版。
# docker version Client: Version: 1.12.1 API version: 1.24 Go version: go1.6.3 Git commit: 23cf638 Built: OS/Arch: linux/amd64 Server: Version: 1.12.1 API version: 1.24 Go version: go1.6.3 Git commit: 23cf638 Built: OS/Arch: linux/amd64
devicemapper配置
默认模式为loop-lvm,需要手工配置为direct-lvm。
# docker info
...
Storage Driver: devicemapper
Pool Name: docker-thinpool
Pool Blocksize: 524.3 kB
Base Device Size: 10.74 GB
Backing Filesystem: xfs
Data file:
Metadata file:
Data Space Used: 5.945 GB
Data Space Total: 51 GB
Data Space Available: 45.05 GB
Metadata Space Used: 1.786 MB
Metadata Space Total: 532.7 MB
Metadata Space Available: 530.9 MB
Thin Pool Minimum Free Space: 5.1 GB
...
网络端口
确保Docker宿主机以下端口开放且未被占用
预装测试
DaoCloud Enterprise自带dry run命令进行预装测试
# bash -c "$(docker run --rm daocloud.io/daocloud/dce install --dry-run)"
确保没有Warning或Error即可
Tips:如遇以下告警
WARNING: Usage of loopback devices is strongly discouraged for production use. Use
--storage-opt dm.thinpooldev
to specify a custom block storage device.
检查devicemapper配置
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
检查CentOS内核配置
DCE的前期安装准备就到这里,下一章会介绍使用在线方式完成DCE主控节点、副控节点和容器节点的安装部署,敬请期待。
评论前必须登录!
注册