美文网首页
CentOS安装部署Docker/Rancher环境

CentOS安装部署Docker/Rancher环境

作者: 唐哼哼 | 来源:发表于2018-12-23 22:17 被阅读0次

一、环境准备

本文适用服务器配置

内存 :4G
系统 :CentOS Linux release 7.5.1804 (Core)
CPU : 双核

环境版本选择

Rancher官网 提供的版本推荐,要稳定地、顺畅地使用Rancher(兼容K8S),软件版本需求为:

Ubuntu 16.04.3 LTS(内核4.4.0以上)/ CentOS 7 (更新内核)

Docker 17.03.2-ce

K8S v1.7,7

Rancher v1.6.8

防火墙

个人建议不需要使用iptables 而是使用centos7原生的firewalld

docker命令中使用 -p 暴露端口时,实现需要依赖iptables 参考 https://www.jianshu.com/p/10c467600ef9

二、安装docker

  • 更新服务器内核

yum update

  • 卸载旧版本docker(如果没有旧版本则不需要执行)

yum list installed|grep docker   # 检测是否已安装过docker

yum -y remove docker-ce.x86_64

rm -rf /var/lib/docker

  • 下载安装包

中科大镜像


wget https://mirrors.ustc.edu.cn/docker-ce/linux/centos/7/x86_64/stable/Packages/docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm

yum -y localinstall docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm

wget https://mirrors.ustc.edu.cn/docker-ce/linux/centos/7/x86_64/stable/Packages/docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm

yum -y localinstall docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm

检查安装是否完成

docker version

Version: 17.03.2-ce
API version: 1.27
Go version: go1.7.5
Git commit: f5ec1e2
Built: Tue Jun 27 02:21:36 2017
OS/Arch: linux/amd64

  • 启动docker:

执行以下命令让docker开机自动启动


systemctl start docker

systemctl enable docker

  • 添加阿里镜像源

阿里有提供镜像加速服务器,在阿里后台申请后可以获取该脚本
https://cr.console.aliyun.com


sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'

{

"registry-mirrors": ["请访问阿里容器后台,获取你专属的加速地址"]

}

EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

三、安装Rancher平台

参考该文章 https://blog.csdn.net/CSDN_duomaomao/article/details/78069104

  • 启动Rancher 容器调度平台

执行以下命令启动

sudo docker run -d  --restart=unless-stopped  --name=rancher-server -p 9000:8080  rancher/server:v1.6.8

此命令仅适用于单机测试环境,如果要生产使用Rancher server,请使用外置数据库(mysql)或者通过

-v /xxx/mysql/:/var/lib/mysql -v /xxx/log/:/var/log/mysql -v /xxx/cattle/:/var/lib/cattle

至此rancher已经安装完毕

Rancher使用说明,请查看官方文档 https://rancher.com/docs/rancher/latest/zh/


四、附属配置(可选)

Rancher中使用NFS文件系统

参考 https://www.jianshu.com/p/281152ec519e

  • 安装NFS Server

yum -y install nfs-utils

  • 配置NFS Server Exports

要想客户端可以访问到,需要在服务端把挂载点export出来

vim /etc/exports
/mnt/share      *(rw,async,no_root_squash,no_subtree_check)

参数说明:

/mnt/share:nfs共享的目录
10.1.107.0/24:* 指所有IP ,示例为10.1.107.0-10.1.107.254区间的IP可以访问;
rw:read-write,可读写;
ro:read-only,只读;
sync:同步写入(文件同时写入硬盘和内存),适用在通信比较频繁且实时性比较高的场合
async:异步写入(文件先写入内存,稍候再写入硬盘),性能较好(速度快),适合超大或者超多文件的写入,但有数据丢失的风险,比如突然断电等情况;
root_squash(默认):将来访的root用户映射为匿名用户或用户组;
no_root_squash:来访的root用户保持root帐号权限(可能会不安全);
no_all_squash(默认):访问用户先与本机用户匹配,匹配失败后再映射为匿名用户或用户组;
all_squash:将来访的所有用户映射为匿名用户或用户组;
secure(默认):限制客户端只能从小于1024的tcp/ip端口连接服务器;
insecure:允许客户端从大于1024的tcp/ip端口连接服务器;
anonuid:匿名用户的UID值,通常是nobody或nfsnobody,可以在此处自行设定;
anongid:匿名用户的GID值;
no_subtree_check:如果NFS输出的是一个子目录,则无需检查其父目录的权限(可以提高效率)
  • 启动NFS Server
systemctl enable nfs-server.service
systemctl start nfs-server.service

如果已经启动nfs-server.service,修改/etc/exports后可以执行exportfs -a 重新加载配置


yum -y install firewalld
systemctl start firewalld.service
systemctl enable firewalld.service

#务必注意ssh

firewall-cmd --permanent --zone=public --add-service=ssh

firewall-cmd --permanent --zone=public --add-service=nfs

firewall-cmd --reload

http://blog.51cto.com/pizibaidu/1662428

查看nfs生效的端口


rpcinfo -p localhost

  • 客户端检测

showmount -e

正常情况下应该能看到/mnt/share

  • 设置共享目录权限

mkdir -p /mnt/share

chmod -R 777 /mnt/share

配置Rancher

  • 商店界面安装rancherNFS
  • 配置nfs功能

主要是NFS Server 和 Mount Directory

FNS Server 就是当前主机IP;

Mount Directory 是 /mnt/share

On Remove 是 retain 移除后保留,避免文件丢失

完成后在每个主机上都创建了一个实例

  • 创建卷

在rancher界面基础设施里面存储应该可以看到已安装了的主机,可以添加卷,如果指定了卷名称,需要使用下面实践中给出的办法来对应。否则的话实例会自动创建一个卷名称

相关文章

网友评论

      本文标题:CentOS安装部署Docker/Rancher环境

      本文链接:https://www.haomeiwen.com/subject/yrdokqtx.html