K8s项目实战教程一(k8s安装)
k8s全称kubernetes,是用于自动部署,扩展和管理容器化应用程序的开源系统
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
更多推荐
所有评论(0)