河北手机网站建设,seo是什么意思以及怎么做,江西小程序开发,html5企业网站模版完成安装k8s集群以后#xff0c;推荐使用https://github.com/512team/dhorse发布应用。
准备环境
准备两台服务器节点#xff0c;如果需要安装虚拟机#xff0c;可以参考《wmware和centos安装过程》
机器名IP角色CPU内存centos01192.168.109.130master4核2Gcentos02192.1…完成安装k8s集群以后推荐使用https://github.com/512team/dhorse发布应用。
准备环境
准备两台服务器节点如果需要安装虚拟机可以参考《wmware和centos安装过程》
机器名IP角色CPU内存centos01192.168.109.130master4核2Gcentos02192.168.109.131node4核2G
设置主机名所有节点都执行
vim /etc/hosts
#增加
192.168.109.130 centos01
192.168.109.131 centos02关闭防火墙所有节点都执行
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
vim /etc/selinux/config
#修改SELINUX的值
SELINUXdisabled关闭swap内存所有节点都执行
swapoff -a
vim /etc/fstab
# 将该行注释掉
#/dev/mapper/cs-swap swap配置网桥所有节点都执行
1.修改参数
vim /etc/sysctl.conf
net.bridge.bridge-nf-call-ip6tables 1
net.bridge.bridge-nf-call-iptables 1
net.ipv4.ip_forward 1
vm.swappiness 02.然后加载如下两个模块所有节点都执行
modprobe ip_vs_rr
modprobe br_netfilter3.生效配置
[rootcentos01 opt]# sysctl -p
net.bridge.bridge-nf-call-ip6tables 1
net.bridge.bridge-nf-call-iptables 1
net.ipv4.ip_forward 1
vm.swappiness 0
安装containerd
以下步骤所有节点都执行。
安装
wget https://github.com/containerd/containerd/releases/download/v1.7.2/containerd-1.7.2-linux-amd64.tar.gz
tar Cxzvf /usr/local containerd-1.7.2-linux-amd64.tar.gz修改配置
mkdir /etc/containerd
containerd config default /etc/containerd/config.toml
vim /etc/containerd/config.toml
#SystemdCgroup的值改为true
SystemdCgroup true
#由于国内下载不到registry.k8s.io的镜像修改sandbox_image的值为
sandbox_image registry.aliyuncs.com/google_containers/pause:3.9启动服务
mkdir -p /usr/local/lib/systemd/system
wget https://raw.githubusercontent.com/containerd/containerd/main/containerd.service
mv containerd.service /usr/local/lib/systemd/system
systemctl daemon-reload
systemctl enable --now containerd验证安装
[rootcentos01 opt]# ctr version
Client:Version: v1.7.2Revision: 0cae528dd6cb557f7201036e9f43420650207b58Go version: go1.20.4Server:Version: v1.7.2Revision: 0cae528dd6cb557f7201036e9f43420650207b58UUID: 747cbf1b-17d4-4124-987a-203d8c72de7c
安装runc
以下步骤所有节点都执行。
准备文件
wget https://github.com//opencontainers/runc/releases/download/v1.1.7/runc.amd64
chmod x runc.amd64查找containerd安装时已安装的runc所在的位置如果不存在runc文件则直接进行下一步
[rootcentos01 opt]# which runc
/usr/bin/runc替换上一步的结果文件
mv -f runc.amd64 /usr/bin/runc验证安装
[rootcentos01 opt]# runc -v
runc version 1.1.7
commit: v1.1.7-0-g860f061b
spec: 1.0.2-dev
go: go1.20.3
libseccomp: 2.5.4安装kubernetes
添加阿里云的kubernetes源所有节点都执行
cat EOF /etc/yum.repos.d/kubernetes.repo
[kubernetes]
nameKubernetes
baseurlhttps://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled1
gpgcheck1
repo_gpgcheck1
gpgkeyhttps://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF安装最新版所有节点都执行
yum install -y kubeadm kubelet kubectl开机自启动所有节点都执行
systemctl enable kubelet验证安装所有节点都执行
[rootcentos01 opt]# kubeadm version
kubeadm version: version.Info{Major:1, Minor:27, GitVersion:v1.27.1, GitCommit:4c9411232e10168d7b050c49a1b59f6df9d7ea4b, GitTreeState:clean, BuildDate:2023-04-14T13:20:04Z, GoVersion:go1.20.3, Compiler:gc, Platform:linux/amd64}初始化集群仅在master(centos01)上执行
[rootcentos01 opt]# kubeadm init --apiserver-advertise-address 192.168.109.130 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.27.1 --pod-network-cidr10.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/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/configAlternatively, if you are the root user, you can run:export KUBECONFIG/etc/kubernetes/admin.confYou 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 192.168.109.130:6443 --token osh87v.zvo010kamsr8esmp \--discovery-token-ca-cert-hash sha256:ff4607c7c194e9f756b1eb509e64d2d926b5f8f9556a85c3c14a2d25add28230其中 –apiserver-advertise-address通告侦听地址 –image-repository指定镜像地址使用阿里云的默认会使用谷歌镜像 –kubernetes-version指定当前的kubernetes的版本 –pod-network-cidr10.244.0.0/16flannel网络的固定地址范围
仔细阅读kubeadm init执行的结果根据提示还需要进行3步操作
1.笔者用的是root用户仅在master节点执行
[rootcentos01 opt]# vim /etc/profile
#在最后一行增加
export KUBECONFIG/etc/kubernetes/admin.conf生效环境变量
[rootcentos01 opt]# source /etc/profile2.安装网络插件可以选择calico或flannel这里选择安装flannel仅在master节点执行
下载安装文件
[rootcentos01 opt]# wget https://github.com/flannel-io/flannel/releases/latest/download/kube-flannel.yml修改配置
[rootcentos01 opt]# vim kube-flannel.yml
#修改Network项的值改为和--pod-network-cidr一样的值
Network: 10.244.0.0/16
#由于有时国内网络的问题需要修改image的地址把所有的docker.io改为dockerproxy.com
#共需要修改3处两个值
image: dockerproxy.com/flannel/flannel:v0.22.0
image: dockerproxy.com/flannel/flannel-cni-plugin:v1.1.2安装网络插件
[rootcentos01 opt]# kubectl apply -f kube-flannel.yml验证安装
[rootcentos01 opt]# kubectl get pods -n kube-flannel
NAME READY STATUS RESTARTS AGE
kube-flannel-ds-dfngh 1/1 Running 17 (13m ago) 6d1h
kube-flannel-ds-qll8g 1/1 Running 12 (13m ago) 6d1h3.其他节点加入集群非master节点都执行
[rootcentos02 opt]# kubeadm join 192.168.109.130:6443 --token osh87v.zvo010kamsr8esmp --discovery-token-ca-cert-hash sha256:ff4607c7c194e9f756b1eb509e64d2d926b5f8f9556a85c3c14a2d25add28230验证安装结果仅在master节点执行
[rootcentos01 opt]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
centos01 Ready control-plane 134m v1.27.1
centos02 Ready none 133m v1.27.1[rootcentos01 opt]# kubectl get pods -n kube-system
NAME READY STATUS RESTARTS AGE
coredns-7bdc4cb885-l4vs2 1/1 Running 0 9m3s
coredns-7bdc4cb885-wzc8x 1/1 Running 0 9m3s
etcd-centos01 1/1 Running 0 9m18s
kube-apiserver-centos01 1/1 Running 0 9m18s
kube-controller-manager-centos01 1/1 Running 0 9m19s
kube-proxy-m92hr 1/1 Running 0 28s
kube-proxy-pv4hw 1/1 Running 0 9m3s
kube-scheduler-centos01 1/1 Running 0 9m18s建议重启一遍所有服务器节点有可能会暴露出来隐藏的问题再次验证以上结果仍然正常。
最后推荐一个部署应用的平台: https://github.com/512team/dhorse
演示地址http://dhorse-demo2.512.team