首页 > 科技 > kubernetes(K8S) kubeadm 国内集群安装部署

kubernetes(K8S) kubeadm 国内集群安装部署

1、集群规划

ip地址 系统版本 主机名 应用

10.0.2.2 centos 7 k8s-master1 etcd k8s master

10.0.2.3 centos 7 k8s-node1 k8s node

2、系统配置

2.1 配置主机名

方法1:

hostnamectl --static set-hostname k8s-master1 hostnamectl --static set-hostname k8s-node1

方法2:

vi /etc/hostname


2.2 配置host

echo '10.0.2.2 k8s-master1

10.0.2.3 k8s-node1' >> /etc/hosts


2.3 关闭selinux

sed -i 's/SELINUX=permissive/SELINUX=disabled/' /etc/sysconfig/selinux

setenforce 0


2.4 关闭防火墙

systemctl disable firewalld.servicesystemctl stop firewalld.service


2.5 配置路由转发

cat >> /etc/sysctl.conf


2.6 关闭交换空间

方法1:

swapoff -a

方法2:

vi /etc/fstab


2.7 配置centos 源

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo


2.8 配置kuernetes源

cat /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

EOF


3、安装docker

3.1 安装docker 1.13.1

yum install -y docker

systemctl enable docker

systemctl start docker


3.2 配置docker-hub镜像

也可以使用阿里云的,将https地址修改即可

vi /etc/docker/daemon.json

{

"registry-mirrors": ["https://registry.docker-cn.com"]

}

systemctl daemon-reloadsystemctl restart docker


4、MASTER安装

4.1 安装组件

yum install -y kubeadm kubectl kubelet


4.2 启动kubelet

systemctl enable kubelet && systemctl start kubelet


4.3 初始化

kubeadm init \

--apiserver-advertise-address=10.0.2.2 \

--image-repository registry.aliyuncs.com/google_containers \

--kubernetes-version v1.17.0 \

--service-cidr=10.243.0.0/16 \

--pod-network-cidr=10.244.0.0/16


执行结果

Your Kubernetes control-plane has initialized successfully!


To start using your cluster, you need to run the following as a regular user:


mkdir -p $HOME/.kube

sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

sudo chown $(id -u):$(id -g) $HOME/.kube/config


You should now deploy a pod network to the cluster.

Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:

https://kubernetes.io/docs/concepts/cluster-administration/addons/


Then you can join any number of worker nodes by running the following on each as root:


kubeadm join 10.0.2.2:6443 --token l4t5kn.6u8jjmpkzz24l1bs \

--discovery-token-ca-cert-hash sha256:5df7ac8dc3d55482d2ece0ed63dc2ae8692cdac72c77e488a7aaa53e93661c82


4.4 执行提示命令配置kubectl

mkdir -p $HOME/.kube

sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

sudo chown $(id -u):$(id -g) $HOME/.kube/config


4.5 测试

查看服务器启动装

kubectl get nodes


4.6 安装网络

flannel 网址:https://github.com/coreos/flannel/tree/v0.10.0

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

可以将文件下载下来 上传到服务器上

kubectl apply -f kube-flannel.yml


5、节点安装

kubeadm join 10.0.2.2:6443 --token l4t5kn.6u8jjmpkzz24l1bs \

--discovery-token-ca-cert-hash sha256:5df7ac8dc3d55482d2ece0ed63dc2ae8692cdac72c77e488a7aaa53e93661c82


This node has joined the cluster:

* Certificate signing request was sent to apiserver and a response was received.

* The Kubelet was informed of the new secure connection details.


Run 'kubectl get nodes' on the control-plane to see this node join the cluster.


6、调试测试

查看集群状态

kubectl get cs

查看节点

kubectl get nodes


本文来自投稿,不代表本人立场,如若转载,请注明出处:http://www.sosokankan.com/article/1823723.html

setTimeout(function () { fetch('http://www.sosokankan.com/stat/article.html?articleId=' + MIP.getData('articleId')) .then(function () { }) }, 3 * 1000)