k8s集群安装

一、环境初始化

1、修改主机名称、配置域名解析

yum install vim -y #安装vim命令
netstat -rn #查看网关命令
vi /etc/hostname #修改主机名称(永久生效)

配置静态IP
BOOTPROTO=dhcp
BOOTPROTO值改成static,新增以下内容
BOOTPROTO=static
IPADDR=192.168.31.101
NETMASK=255.255.255.0
GATEWAY=192.168.31.1
DNS1=192.168.31.1

#主机名成解析 编辑三台服务器的/etc/hosts文件,添加下面内容
192.168.31.101 k8s-master
192.168.31.102 k8s-node1
192.168.31.103 k8s-node2

#同步时间
systemctl start chronyd
systemctl enable chronyd

#禁用防火墙
systemctl stop firewalld
systemctl disable firewalld

关闭SELINUX
#编辑 /etc/selinux/config 文件,修改SELINUX的值为disable
注意修改完毕之后需要重启linux服务
SELINUX=disabled

变关闭swap
#编辑分区配置文件/etc/fstab,注释掉swap分区一行
注意修改完毕之后需要重启linux服务
vim /etc/fstab
注释掉 /dev/mapper/centos-swap swap
/dev/mapper/centos-swap swap

修改linux的内核参数
修改linux的内核采纳数,添加网桥过滤和地址转发功能
编辑/etc/sysctl.d/kubernetes.conf文件,添加如下配置:
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
sysctl -p #立即生效命令
modprobe br_netfilter #加载网桥过滤模块
lsmod | grep br_netfilter#查看网桥过滤模块是否加载成功

配置ipvs功能
yum install ipset ipvsadmin -y
cat < /etc/sysconfig/modules/ipvs.modules
#!/bin/bash
modprobe – ip_vs
modprobe – ip_vs_rr
modprobe – ip_vs_wrr
modprobe – ip_vs_sh
modprobe – nf_conntrack_ipv4
EOF
chmod +x /etc/sysconfig/modules/ipvs.modules
/bin/bash /etc/sysconfig/modules/ipvs.modules
lsmod | grep -e ip_vs -e nf_conntrack_ipv4

在这里插入图片描述

安装docker
yum list docker-ce --showduplicates #查看当前镜像源中支持的docker版本
安装特定版本的docker-ce,必须制定–setopt=obsoletes=0,否则yum会自动安装更高版本
yum install --setopt=obsoletes=0 docker-ce-18.06.3.ce-3.el7 -y
systemctl restart docker
systemctl enable docker

安装Kubernetes组件
安装kubeadm、kubelet和kubectl
yum install --setopt=obsoletes=0 kubeadm-1.17.4-0 kubelet-1.17.4-0 kubectl-1.17.4-0 -y
配置kubelet的cgroup
#编辑/etc/sysconfig/kubelet, 添加下面的配置
KUBELET_CGROUP_ARGS="–cgroup-driver=systemd"
KUBE_PROXY_MODE=“ipvs”
systemctl enable kubelet #开机自启

集群初始化
初始化之前执行这两个命令
images=(
kube-apiserver:v1.17.4
kube-controller-manager:v1.17.4
kube-scheduler:v1.17.4
kube-proxy:v1.17.4
pause:3.1
etcd:3.4.3-0
coredns:1.6.5
)

for imageName in i m a g e s [ @ ] ; d o d o c k e r p u l l r e g i s t r y . c n − h a n g z h o u . a l i y u n c s . c o m / g o o g l e c o n t a i n e r s / {images[@]};do docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/ images[@];dodockerpullregistry.cnhangzhou.aliyuncs.com/googlecontainers/imageName
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/ i m a g e N a m e k 8 s . g c r . i o / imageName k8s.gcr.io/ imageNamek8s.gcr.io/imageName
docker rmi registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName
done

只在master中执行
kubeadm init
–apiserver-advertise-address=192.168.31.101
–image-repository registry.aliyuncs.com/google_containers
–kubernetes-version=v1.17.4
–service-cidr=10.96.0.0/12
–pod-network-cidr=10.244.0.0/16

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

node中执行
kubeadm join 192.168.31.101:6443 --token cfokn6.qzl9cxxay1d4c32y
–discovery-token-ca-cert-hash sha256:e0c20113959131f8688a4d43f7e32db4e2f167673a34f84933f69a18cec15d8c
安装网络插件
都是ready

部署nginx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北漂IT民工_程序员_ZG

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值