rancher搭建k8s集群

rancher简介


rancher是一套容器管理平台,它可以帮助组织在生产环境中轻松快捷的部署和管理容器,rancher可以轻松地管理各种环境的kubernetes,满足IT需求并为devops团队提供支持
Kubernetes 不仅已经成为的容器编排标准,它也正在迅速成为各类云和虚拟化厂商提供的标
准基础架构。Rancher 用户可以选择使用 Rancher Kubernetes Engine(RKE)创建 Kubernetes
集群,也可以使用 GKE,AKS 和 EKS 等云 Kubernetes 服务。 Rancher 用户还可以导入和管理
现有的 Kubernetes 集群
rancher的作用
Rancher 支持各类集中式身份验证系统来管理 Kubernetes 集群。例如,大型企业的员工可以
使用其公司 Active Directory 凭证访问 GKE 中的 Kubernetes 集群。IT 管理员可以在用户,组,
项目,集群和云中设置访问控制和安全策略。 IT 管理员可以在单个页面对所有 Kubernetes 集群
的健康状况和容量进行监控
Rancher 为 DevOps 工程师提供了一个直观的用户界面来管理他们的服务容器,用户不需要深
入了解 Kubernetes 概念就可以开始使用 Rancher。 Rancher 包含应用商店,支持一键式部署
Helm 和 Compose 模板。Rancher 通过各种云、本地生态系统产品认证,其中包括安全工具,监
控系统,容器仓库以及存储和网络驱动程序。下图说明了 Rancher 在 IT 和 DevOps 组织中扮演的
角色。每个团队都会在他们选择的公共云或私有云上部署应用程序

初始化环境 

关闭防火墙

systemctl disable firewalld.service

关闭selinux

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

Docker安装 

每台主机均使用 root 用户登录,每台均安装 docker-ce,安装命令为:

mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
    "oom-score-adjust": -1000,
    "data-root":"/var/lib/docker",
    "log-driver":"json-file",
    "log-opts":{
        "max-size":"100m",
        "max-file":"3"
    },
    "default-address-pools":[
        {
            "base":"10.168.0.0/16",
            "size":24
        }
    ],
    "max-concurrent-downloads":50,
    "max-concurrent-uploads":50,
    "registry-mirrors":[
        "https://x6kx40rp.mirror.aliyuncs.com",
        "https://hub-mirror.c.163.com",
        "https://docker.mirrors.ustc.edu.cn",
        "https://registry.docker-cn.com"
    ],
    "storage-driver": "overlay2",
    "storage-opts": [
    "overlay2.override_kernel_check=true"
    ]
}
EOF
yum install -y yum-utils device-mapper-persistent-data lvm2

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

yum makecache fast

yum -y install docker-ce

systemctl enable docker
systemctl daemon-reload
systemctl restart docker

对于 CentOS 系统,docker.service 默认位于/usr/lib/systemd/system/docker.service,编辑docker.service,添加以下参数。

  • 防止 docker 服务 OOM: OOMScoreAdjust=-1000
  • 开启 iptables 转发链:ExecStartPost=/usr/sbin/iptables -P FORWARD ACCEPT 

配置完成后重启服务器。

Rancher安装 

在主机 rancher 上,执行如下命令

docker run -d \
 --name rancher \
 --restart=unless-stopped \
 --privileged \
  -p 80:80 -p 443:443 \
  -v /data/rancher:/var/lib/rancher \
  registry.cn-hangzhou.aliyuncs.com/rancher/rancher:v2.5.16

待容器拉取完毕后1分钟后进入页面,首次进入需要设置新密码

 输入密码后进入下一个页面,输入rancher的地址,如有域名建议使用域名代替IP

 进入主界面

 Rancher支持中文显示,修改语言

集群创建

点击添加集群,进入创建K8S集群页面,点击自定义。

按需选择k8s版本,网络插件无特殊情况使用默认的Canal即可。

注册节点

创建Master节点

选择Etcd角色和Control角色,点击下方复制到剪切板。

ssh进入master节点粘贴命令。

创建Worker节点

选择Worker角色,点击下方复制到剪切板。

ssh进入到worker节点粘贴命令。

此时到Rancher管理页面,点击全局,看到有刚才创建的k8s集群:

点击主机,在这里可以看到集群部署过程中的各种状态,最终出现绿色的Active状态时,即表示K8S集群Master节点创建成功。

集群初始化

集群初始化完毕

如果后续需要添加节点,回到全局页面点右边三个点就能进入注册页面即可。

项目/命名空间

进入集群的项目/命名空间。

在此页面点击添加项目,我们来添加一个项目测试。

这里可以给项目设置一些默认配置。

接下来给项目添加命名空间test。

进入项目。

尝试部署一个服务,输入部署服务的名称、命名空间、docker镜像、端口映射规则等。

点击启动。

等待一段时间后。

找到暴露的Nodeport入口。

直接打开了nginx页面。

 

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐