浅尝DaoCloud Enterprise(二)安装准备

在上一章中我们介绍了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主控节点、副控节点和容器节点的安装部署,敬请期待。

K8S中文社区微信公众号
分享到:更多 ()

评论 抢沙发

评论前必须登录!