从零开始搭建K8s集群

序言

  • 序言

楼主闲来无事,为了赶超潮流决定亲自开始搭一套K8s集群,虽然楼主在网络,存储,算法这方面算算是小白,但这并不影响我追赶技术的热情。node

环境准备

三台虚拟机,版本centos7.5以上
   master:192.168.11.253
   node1:192.168.11.209
   node2:192.168.11.188
   三台机器均能访问外网平且能互相访问
   禁止swap分区

学习目标

1 成功部署K8s集群

贴一张K8s官网的架构图

![在这里插入图片描述](https://img-blog.csdnimg.cn/20190303144847528.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MTI3NDgyNA==,size_16,color_FFFFFF,t_70)

安装centos教程

[添加连接描述](https://blog.csdn.net/linkai1993826/article/details/86699976),安装完成以后
  关闭防火墙
  systemctl stop firewalld.service
  禁止开机自启
  systemctl disable firewalld.service 
  关闭selinux
  进入到/etc/selinux/config文件下将SELINUX=enforcing改成SELINUX=disabled
  而且配置免密登录
  ssh-keygen -t rsa 
  ssh-copy-id root@master

开始安装

1 关闭swap
swapoff -a
2 注释 掉/etc/fstab中下面有swap的那一行
在这有一个巨坑,由于本楼主的失误,将swap文件里面的东西一开始所有注释掉了,因此形成全部文件暂时是只能读的状态,最后能够说是呕心沥血,在网上查到一个能够暂时赋予全部文件的读写权限
mount -n -o remount,rw /
3 添加主机名和ip的对应关系 ps 每台机器都要加
192.168.11.253 master
192.168.11.188 node1
192.168.11.209 node2linux

全部节点安装Docker/kubeadm/kubelet

安装docker

1 安装依赖库
    yum install yum-utils lvm2 device-mapper-persistent-data -y
  2 配置stable库
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  3 安装docker-ce
    yum list docker-ce --showduplicates
  4 安装指定版本的docker
    yum -y install docker-ce-18.06.1.ce-3.el7

建立用户

  1. 建立用户:adduser test
  2. 设置密码:passwd test而后就会提示输入密码
  3. 建立分组:groupadd ver
  4. 加入组:gpasswd -a test ver
  5. 移除组:gpasswd -d test ver

部署rancher

docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher
部署成功以后直接访问你本地ip,若是不出意外Ok。web

而后在rancher上部署K8s

在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述

复制下方命令,在集群对应角色的机器上执行:

docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.1.6 --server https://192.168.30.128 --token tr5bb5j4nhz29kxnwkcmmn6sx9pqzslkfptsfmnsfmgtc77fkncxkm --ca-checksum 9dee301ba8c6172b431de0a8d2bdfe4717f75fc17a894f2ce6560753c61f151a --internal-address 192.168.30.128 --etcd --controlplane --worker算法

在这里插入图片描述

集群正在搭建 等会会自动完成docker

在这里插入图片描述等待一段时间集群自动搭建完成,显示为active状态集群就搭建完成:
在这里插入图片描述centos