KubeSphere安装接入KubeKey安装的k8s集群
前置摆设参考:很简单的K8s集群摆设方法-KubeKey自动化摆设-CSDN博客
一.NFS安装设置
1.服务器安装NFS服务
这一步最好选择内存最大的那个集群节点进行操作此处只做演示
Ubuntu:
- sudo apt update
- sudo apt install nfs-kernel-server
复制代码 Centos:
- yum update
- yum -y install nfs-utils
复制代码- # 创建或使用用已有的文件夹作为nfs文件存储点
- mkdir -p /home/data/nfs/share
- vi /etc/exports
复制代码 写入如下内容
/home/data/nfs/share *(rw,no_root_squash,sync,no_subtree_check)
- # 配置生效并查看是否生效
- exportfs -r
- exportfs
复制代码
- # 启动rpcbind、nfs服务
- #Centos
- systemctl restart rpcbind && systemctl enable rpcbind
- systemctl restart nfs && systemctl enable nfs
- #Ubuntu
- systemctl restart rpcbind && systemctl enable rpcbind
- systemctl start nfs-kernel-server && systemctl enable nfs-kernel-server
- # 查看 RPC 服务的注册状况
- rpcinfo -p localhost
复制代码
- # showmount测试
- showmount -e localhost
复制代码
以上都没有问题则说明安装成功
2.下载并摆设 NFS Subdir External Provisioner
这一步必须在k8s的控制节点上实验,即可以实验kubectl下令的节点
1).下载摆设文件
- cd /home
- #下载压缩包
- wget https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner/archive/refs/tags/nfs-subdir-external-provisioner-4.0.18.zip
- #下载后解压
- unzip nfs-subdir-external-provisioner-4.0.18.zip
- #进入文件目录
- cd nfs-subdir-external-provisioner-nfs-subdir-external-provisioner-4.0.18/
复制代码
2).创建 NameSpace
默认摆设的命名空间为default,便于管理摆设的资源,一样平常会创建一个新的命名空间。
- #创建Namespace
- kubectl create ns nfs-system
复制代码
- sed -i'' "s/namespace:.*/namespace: nfs-system/g" ./deploy/rbac.yaml ./deploy/deployment.yaml
复制代码 检查是否替换
- cd deploy/
- cat deployment.yaml | grep "namespace"
复制代码
3).创建 RBAC 资源
- #执行目录在deploy/下
- kubectl apply -f rbac.yaml
复制代码 要检查您的 NFS 客户端 Provisioner 摆设是否成功:
检查 ServiceAccount输出中是否包含 nfs-client-provisioner,确认 ServiceAccount 已经正确创建,:
- kubectl get serviceaccount -n nfs-system
复制代码
检查 RBAC 设置,确认 ClusterRole 和 ClusterRoleBinding 已创建:
- kubectl get clusterrole | grep nfs-client-provisioner-runner
- kubectl get clusterrolebinding | grep run-nfs-client-provisioner
复制代码
确认 Role 和 RoleBinding 已创建:
- kubectl get role -n nfs-system | grep leader-locking-nfs-client-provisioner
- kubectl get rolebinding -n nfs-system | grep leader-locking-nfs-client-provisioner
复制代码
4).设置 deployment.yaml
由于文件内默认的镜像是registry.k8s.io 镜像仓库的镜像 nfs-subdir-external-provisioner:v4.0.2,所以大部分时候拉取会超时,所以最好改为本身私库的镜像地点。
搭建个人镜像仓库可参考:阿里云容器镜像服务搭一个本身的镜像仓库-CSDN博客
须要修改的内容:
- image:,修改镜像地点,默认为registry.k8s.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2
- value: 10.3.243.101,修改NFS 服务器的主机名或是 IP 地点,注意,如果是主机名,要确保每一个节点的主机名可以相互解析
如图:
- value: /ifs/kubernetes,NFS 服务器导出的共享数据目录的路径,exportfs输出的路径。
以下是我修改好的deployment.yaml参考:
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: nfs-client-provisioner
- labels:
- app: nfs-client-provisioner
- # replace with namespace where provisioner is deployed
- namespace: nfs-system
- spec:
- replicas: 1
- strategy:
- type: Recreate
- selector:
- matchLabels:
- app: nfs-client-provisioner
- template:
- metadata:
- labels:
- app: nfs-client-provisioner
- spec:
- serviceAccountName: nfs-client-provisioner
- containers:
- - name: nfs-client-provisioner
- image: registry.cn-hangzhou.aliyuncs.com/docker_image-ljx/nfs-subdir-external-provisioner:v4.0.2
- volumeMounts:
- - name: nfs-client-root
- mountPath: /persistentvolumes
- env:
- - name: PROVISIONER_NAME
- value: k8s-sigs.io/nfs-subdir-external-provisioner
- - name: NFS_SERVER
- value: 192.168.6.131
- - name: NFS_PATH
- value: /home/data/nfs/share
- volumes:
- - name: nfs-client-root
- nfs:
- server: 192.168.6.131
- path: /home/data/nfs/share
复制代码
- 实验摆设下令
- kubectl apply -f deployment.yaml
复制代码 检查是否摆设成功
- kubectl get deployment,pods -n nfs-system
复制代码
5).摆设 Storage Class
- 实验摆设下令
- #依旧是deploy/目录下
- kubectl apply -f class.yaml
复制代码 - 检查是否摆设成功
二.摆设 KubeSphere
1.安装核心组件 KubeSphere Core
通过 helm 安装 KubeSphere 的核心组件 KubeSphere Core,下令如下:
- helm upgrade --install -n kubesphere-system --create-namespace ks-core https://charts.kubesphere.com.cn/main/ks-core-1.1.3.tgz --debug --wait \
- --set global.imageRegistry=swr.cn-southwest-2.myhuaweicloud.com/ks \
- --set extension.imageRegistry=swr.cn-southwest-2.myhuaweicloud.com/ks \
- --set hostClusterName=k8s-paco
复制代码
- hostClusterName:须要改本钱身集群的名字,如果忘记可实验kubectl config current-context查看,@后面的就是集群名字
- 两个 imageRegistry:修改组件镜像仓库地点,默认是charts.kubesphere.io,可能无法访问,所以最好替换成国内地点:charts.kubesphere.com.cn
实验下令后等候安装完成:
2.安装完成后访问
如上图,安装完成后会输出访问的地点和账号密码。我们按如下地点访问。
首次登录会修改初始密码,提交后就能进入主界面。
三. KubeSphere简单了解和使用
在进入主界面后,点击集群管理就可以找到之前安装的集群。
可以收藏指快捷访问,然后进入集群,就可以看到集群的一些根本信息。
在应用负载中,可以看到该集群的pod,deployment,service等信息,也可对其Yaml文件进行修改。
然后还可以从他们提供的扩展市场,安装一些本身须要的插件。实现一些其他的功能。
可以看到 KubeSphere目前没有多少可选的应用,相比Rancher,后者可提供的应用选择就比较多了如下图。
但KubeSphere的利益就是,它有国内源作为支撑,相比Rancher,在摆设和维护的时候拉取镜像会比较方便。并且Rancher作为老牌的,Kubernetes (K8s) 的开源管理平台。无论是使用人数和社区体量都比KubeSphere要广泛。所以各人可以自行选择。
发行时间对比
平台首次发布时间Kubernetes 支持时间当前状态Rancher2014 年2016 年全面转向支持 Kubernetes成熟,SUSE 旗下KubeSphere2018 年2018 年发布即全面支持 Kubernetes成熟,持续开源开发
其他可参考的,k8s集群的摆设方法
(高可用版本)Kubeadm+Containerd+keepalived摆设高可用k8s(v1.28.2)集群-CSDN博客
Kubeadm+Containerd摆设k8s(v1.28.2)集群(非高可用版)-CSDN博客
Rancher(V2.6.3)安装K8s教程_cluster must have at least one etcd plane host: pl-CSDN博客
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |