k8s全称kubernetes,是用于自动部署,扩展和管理容器化应用程序的开源系统,它具有对容器更精细化管理;健康机制完善(可以监控并维持容器生命),轻松应对复杂的网络环境;服务发现与调度,提供负载均衡策略,实时弹性伸缩容器规模等特点。安装步骤如下

       安装条件:至少两台主机(内存2G,cpu2以上)

      (1)关闭防火墙:systemctl stop firewalld,为了安全,建议只不关闭防火墙,只开发相关端口,这里不做介绍,永久关闭 systemctl  disable firewalld

      (2)临时关闭selinux**:setenforce 0 

              永久关闭:vi  /etc/sysconfig/selinux,将文件中SELINUX=(disable或permissive)

      (3)关闭swap**:

                 (a)输入命令:swapoff -a,可以通过free这个命令查看swap是否关闭了

                 (b)输入命令:vim /etc/fstab ,#永久关闭 注释swap那一行(访问内存分区,k8s无法启动)

        (4)添加主机名与IP对应的关系,更好区分不同服务器命名,因为每台主机默认名都相同,输入命令:vim /etc/hosts

       (5)将桥接的IPV4流量传递到iptables ,输入命令:vi /etc/sysctl.d/k8s.conf,将以下两行添加到文件中

net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1

      (6)安装Docker,参考链接Docker安装

       (7) 需要同步时间,后续安装flannel必须要满足这一条件

yum install ntpdate -y
ntpdate cn.pool.ntp.org

       (8)添加阿里云YUM软件源,输入命令:vi /etc/yum.repos.d/kubernetes.repo,

将以下内容添加到文件中

[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

         (9)安装kubeadm,kubelet和kubectl,输入命令

yum makecache fast

yum install -y kubectl-1.18.0 kubeadm-1.18.0 kubelet-1.18.0 --nogpgcheck

         注意以上九个步骤,需要在每台主机上执行

         (10)部署Kubernetes Master(在master执行)

kubeadm init \
--apiserver-advertise-address=192.168.17.131 \   # 换成自己master的IP
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.18.0 \
--service-cidr=10.1.0.0/16 \
--pod-network-cidr=10.244.0.0/16  # 使用flannel网络必须设置成这个cidrKUB

            (11)kubeadm初始化结果中有相关命令需要执行

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

          (12)安装flannel(在master执行)

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

注意:如果kube-flannel.yml无法下载,手动配置网路地址
mkdir /run/flannel/
cat <<EOF> /run/flannel/subnet.env
FLANNEL_NETWORK=10.244.0.0/16
FLANNEL_SUBNET=10.244.1.0/24
FLANNEL_MTU=1450
FLANNEL_IPMASQ=true

         (13)安装完flannel,需要将相关node节点网络添加到主节点上,否则节点状态不对

scp -r /etc/cni root@192.168.17.132:/etc

scp -r /run/flannel/ root@192.168.17.132:/run

#192.168.17.132是node节点ip,有多少个node节点,就要在主节点主机上执行多少次

至此安装已完成,可以通过

kubectl get cs
kubectl get nodes

查看集群状态,如果节点显示noready,可以重启节点systemctl restart kubelet
 


Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐