基于凝思磐石&debian内网环境搭建docker集群
一、docker安装
docker安装包下载地址: 建议使用18以上版本(18以下版本会缺少依赖环境) 执行命令:dpkg -i docker-ce_18.06.0ce3-0~debian_amd64.deb 安装完成后输入:docker version进行验证 备注:如有私有镜像仓库,则需要修改配置文件/lib/systemd/system/docker.service中ExecStart选项为:ExecStart=/usr/bin/docker -H fd:// --insecure-registry IP:5000 修改完成后重启docker:systemctl daemon-reload systemctl restart docker
二、docker-compose安装
Docker-Compose地址: 执行命令:mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose 执行命令:chmod +x /usr/local/bin/docker-compose
三、docker私有库搭建
1.在外网环境执行:docker pull registry:2 3.执行:docker save -o registry.tar registry:2 4.将registry.tar 拷贝到需要搭建私有仓库的机器 5.在远程仓库机器执行:docker load -i registry.tar 6.启动仓库:docker run -d –name registry -p 5000:5000 -v /home/jieyou/docker-registry:/var/lib/registry –restart=always –privileged=true registry:2 7.push镜像:例如:docker tag hello-world 192.168.43.155:5000/hello-world ; docker push 192.168.43.155:5000/hello-world
四、rancher搭建
1.将rancher-images.tar.gz文件和rancher-load-images.sh文件拷贝到可以访问docker私有库的机器,执行命令:./ 私有库IP:5000 2.再rancher主节点执命令:docker run -d -p 80:80 -p 443:443 -e CATTLE_SYSTEM_DEFAULT_REGISTRY=私有库IP:5000 私有库IP:5000/rancher/rancher:v2.0.8 3. 以通过运行rancher/rancher容器所在主机的IP来访问Rancher 2.0 UI。最开始启动大约需要1分钟,第一次访问时系统会提示你设置密码。 备注:rancher-images.tar.gz及rancher-load-images.sh获取地址:
五、rancher k8s集群搭建
六、异常处理
1.rancher+k8s 集群搭建异常处理,手动初始化节点: docker ps -a|awk ‘{print $1}’|xargs docker rm -f docker volume ls|awk ‘{print $2}’|xargs docker volume rm for mount in $(mount | grep tmpfs | grep ‘/var/lib/kubelet’ | awk ‘{ print $3 }’) /var/lib/kubelet /var/lib/rancher; do umount $mount; done rm -rf /etc/ceph /etc/cni /etc/kubernetes /opt/cni /opt/rke /run/secrets/kubernetes.io /run/calico /run/flannel /var/lib/calico /var/lib/etcd /var/lib/cni /var/lib/kubelet /var/lib/rancher /var/log/containers /var/log/pods /var/run/calico iptables -P INPUT ACCEPT iptables -F ip link del flannel.1 reboot 2.凝思磐石网络冲突无法启动docker 编辑/etc/udev/rules.d/70-persistent-net.rules,找到与ifconfig -a得出的MAC相同的一行(NAME=eth1’这一行),把它改为"NAME=eth0 ",然后把上面一行(NAME=‘eth0’)删除掉。 ifconfig 查看自己网卡的名称,一般是第一个 如:eth0 sudo ifup eth0 开启网卡
