搭建k8s集群(平台规划和部署方式介绍)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搭建k8s集群(平台规划和部署方式介绍)相关的知识,希望对你有一定的参考价值。
参考技术A 1、搭建k8s环境平台规划2、服务器硬件配置要求
测试环境:
master:2核,内存4g,硬盘20g
node:4核,内存8g,硬盘40g
生产环境:
更高要求
3、搭建集群方式
二搭建k8s集群
1、平台规划和搭建方式介绍
2、使用kubeadm方式搭建kuberneters集群
1. 对操作系统进行初始化操作
# 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
# 关闭selinux
sed -i \'s/enforcing/disabled/\' /etc/selinux/config # 永久
sentenforce 0 # 临时
# 关闭swap
swapoff -a # 临时
sed -ri \'s/.*swap.*/#&/\' /etc/fstab #永久
# 根据规划设置主机名
hostnamectl set-hostname <hostname>
# 在master 添加hosts
cat >> /etc/host <<EOF
172.18.116.233 k8sMaster
172.18.116.232 k8snode
EOF
# 将桥接的IPv4流量传递到iptables的链
cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables =1
net.bridge.bridge-nf-call-iptables =1
EOF
sysctl --system #生效
# 时间同步
yum install ntpdate -y
ntpdate time.windos.com
2. 安装docker
3.添加阿里云YUM源
cat > /etc/yum.repos.d/kubernetes.repo << EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
4. 安装kubeadm,kubelet和kubectl
由于版本频繁更新,这里指定版本号
yum install -y kubelet-1.18.0 kubeadm-1.18.0 kubectl-1.18.0
systemctl enable kubelet
5.部署Kubernetes Master
在master执行
kubeadm init --apiserver-advertise-address=120.24.33.237 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.18.0 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=NumCPU
6.使用kubectl工具:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
异常处理:
rm -f /etc/kubernetes/kubelet.conf
rm -f /etc/kubernetes/pki/ca.crt
7.部署CNI网络插件
wget https//:raw.githubser.com/coreos/flannel/master/Documentation/kube-flannel.yml
默认镜像地址无法访问,sed命令修改为docker hub镜像仓库。
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
kubectl get pods -n kube-system
NAME READY STATUS RESTARTS AGE
kube-flannel-ds-amd64-2pc95 1/1 Running 0 72s
8 .测试kubernetes集群
$ kubectl create deployment nginx --image=nginx
$ kubectl expose deployment nginx --port=80 --type=NodePort
$ kubectl get pod,svc
访问地址:http://NodeIP:Port (阿里云的话可以使用公网ip+对应的端口号访问)
sudo docker run -d \\
--restart=unless-stopped \\
--name=kuboard \\
-p 10080:80/tcp \\
-p 10081:10081/udp \\
-p 10081:10081/tcp \\
-e KUBOARD_ENDPOINT="http://192.168.0.60:10080" \\
-e KUBOARD_AGENT_SERVER_UDP_PORT="10081" \\
-e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \\
-v /root/kuboard-data:/data \\
eipwork/kuboard:v3
以上是关于搭建k8s集群(平台规划和部署方式介绍)的主要内容,如果未能解决你的问题,请参考以下文章