1. 安装环境依赖
yum install -y socat conntrack ebtables ipset
2. 下载KubeKey工具,下载好后就会出现 kk 这个可执行文件
# 确保您从正确的区域下载 KubeKey,即在国内下载速度更快
export KKZONE=cn
# 下载kubekey
curl -sfL https://get-kk.kubesphere.io | sh -
3. 使用KubeKey生成一个k8s集群启动模板k8s.yaml,编辑好账号密码后保存
./kk create config --with-kubernetes v1.24.3 -f k8s.init.yaml
模板如下:
apiVersion: kubekey.kubesphere.io/v1alpha2
kind: Cluster
metadata:
name: sample
spec:
hosts:
- {name: master, address: 10.0.0.65, internalAddress: 10.0.0.65, user: root, password: "root"}
- {name: node1, address: 10.0.0.66, internalAddress: 10.0.0.66, user: root, password: "root"}
- {name: node2, address: 10.0.0.133, internalAddress: 10.0.0.133, user: root, password: "root"}
roleGroups:
etcd:
- master
control-plane:
- master
worker:
- master
- node1
- node2
controlPlaneEndpoint:
## Internal loadbalancer for apiservers
# internalLoadbalancer: haproxy
domain: lb.kubesphere.local
address: ""
port: 6443
kubernetes:
version: v1.24.3
clusterName: cluster.local
autoRenewCerts: true
containerManager: containerd
etcd:
type: kubekey
network:
plugin: calico
kubePodsCIDR: 10.233.64.0/18
kubeServiceCIDR: 10.233.0.0/18
## multus support. https://github.com/k8snetworkplumbingwg/multus-cni
multusCNI:
enabled: false
registry:
privateRegistry: ""
namespaceOverride: ""
registryMirrors: []
insecureRegistries: []
addons: []
需要调整地方:
4. 执行刚才的文件
./kk create cluster -f k8s.init.yaml
此时界面会安装下载各种组件并安装,大概等待5-10分钟即可完成安装
6. 安装完成后验证
# 查看所有pod
kubectl get pods -A
7.kubectl 其他 操作
#查看所有pod,服务
kubectl get pods,svc -A
#获取所有的pod
kubectl get pods --all-namespaces -o wide
#使用yaml文件创建pod
kubectl create -f YAML_FILE.yaml
#使用yaml文件删除pod
kubectl delete -f YAML_FILE.yaml
#显示指定命名空间的pod的日志
kubectl logs POD_NAME -n kube-system
#获取集群状态
kubectl get cs
#获取指定命名空间的服务
kubectl get svc -n kube-system
#获取集群信息
kubectl cluster-info
#获取集群节点信息
kubectl get nodes
#获取全部节点
kubectl get nodes
#删除节点
kubectl delete node 192.168.2.152
#删除节点中的node
#1: 在master节点上执行
kubectl drain NODE_NAME --delete-local-data --force --ignore-daemonsets
kubectl delete node node2
#2: 在node节点上执行
kubeadm reset
ifconfig cni0 down
ip link delete cni0
ifconfig flannel.1 down
ip link delete flannel.1
rm -rf /var/lib/cni/
8. kubectl日志
# 获取pod名称或与pod相关的标签
kubectl get pods --show-labels
# 查看pod日志
kubectl logs <podName>
# 查看上一个pod的日志 崩溃的pod
kubectl logs --previous <podName>
# 如果一个 Pod 有多个副本,并且具有关联的标签(例如 app=my-app),您可以使用它来查看来自具有该标签的所有 Pod 的日志
kubectl logs -l app=my-app
# 查看pod 最后100行日志
kubectl logs --tail=100 <podName>
# 查看pod 最后一个小时的日志
kubectl logs --since=1h <podName>
# 查看最后15分钟的日志
kubectl logs --since=15m <podName>
# 实时输出日志
kubectl logs -f <podName>
# 实时输出最后100行日志
kubectl logs --tail=100 -f <podName>
安装kubeSphere
1. (可选) 如果需要安装kubeSphere界面,则可以执行
./kk create cluster --with-kubesphere v3.3.1 --container-manager containerd
大概10-15分钟后安装完后,显示这个
上面的http://10.0.0.6:30880 这个内网地址,要换成你主机的公网地址,并且在安全组放行 30880 这个端口,再访问 http://公网ip:30880 就可以了。
界面长这样
2. 如果要添加节点
则先在新节点安装好环境依赖
yum install -y socat conntrack ebtables ipset
然后再回到主节点,修改第3步的 k8s.init.yml 文件,增加node节点,再执行
./kk add nodes -f k8s.init.yaml
额外:
如果是采用是docker做容器的话,若拉取镜像失败,可以改一下对应节点上的镜像改为国内源
方法:
1. 编辑或新建配置文件 /etc/docker/daemon.json文章来源:https://www.toymoban.com/news/detail-485689.html
{
"registry-mirrors": ["https://registry.docker-cn.com","http://hub-mirror.c.163.com"],
"live-restore": true
}
2. 重新启动docker服务文章来源地址https://www.toymoban.com/news/detail-485689.html
systemctl restart docker
到了这里,关于快速搭建k8s集群,使用kubekey搭建简单搭建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!