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