首页 > 其他分享 >install-kubesphere-kubekey

install-kubesphere-kubekey

时间:2024-11-05 13:59:29浏览次数:1  
标签:kubectl kubesphere kubekey storage yaml pvc install installer

在K8s上安装KubeSphere

在 Kubernetes 之上安装 KubeSphere

准备

  1. 确认现有的 Kubernetes 版本为 1.20.x, 1.21.x, 1.22.x, 1.23.x (experimental),可以执行 kubectl version 来确认
  2. 集群现有的可用内存至少在 2G 以上。 如果是执行的 allinone 安装,那么执行 free -g 可以看下可用资源
  3. KubeSphere 需配合持久化存储使用,执行kubectl get sc 查看当前环境中的存储类型 (当使用默认存储类型时,配置文件中可以不填存储相关信息)。
  4. CSR signing 功能在 kube-apiserver 中被激活,参考 RKE installation issue
free -g && \
kubectl version && \

kubectl get sc && kubectl get pv
# 如果有结果说明有storageclass和persistentvolume
kubectl get pod -A |grep kube-controller-manager|awk '{print $2}'|xargs -I %  kubectl get pod %  -n kube-system -o yaml |grep 'cluster-signing'
# 正确输出结果
#--cluster-signing-cert-file=/etc/kubernetes/pki/ca.crt
#--cluster-signing-duration=87600h
#--cluster-signing-key-file=/etc/kubernetes/pki/ca.key

添加默认的StorageClass

# storage-class.yaml
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: kube-sphere-storage-class
provisioner: kubernetes.io/no-provisioner
# no-provisioner 是因为 Local Persistent Volume 目前尚不支持 Dynamic Provisioning动态生成PV,所以我们需要提前手动创建PV
volumeBindingMode: WaitForFirstConsumer

# 设置默认 storageclass
# kubectl patch sc kube-sphere-storage-class -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
kubectl apply -f  storage-class.yaml 
kubectl patch sc kube-sphere-storage-class -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'

添加Local-PV

# local-pv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:
  name: kube-sphere-local-pv
spec:
  capacity:
    storage: 5Gi
  volumeMode: Filesystem
  accessModes:
  - ReadWriteOnce
#   https://kubernetes.io/zh-cn/docs/concepts/storage/persistent-volumes/#access-modes
  persistentVolumeReclaimPolicy: Delete
  storageClassName: kube-sphere-storage-class
  local:
    path: /data/k8s/pv/kubesphere
  nodeAffinity:
    required:
      nodeSelectorTerms:
      - matchExpressions:
        - key: kubernetes.io/hostname
          operator: In
          values:
          - k8s.node2
kubectl apply -f  local-pv.yaml

下载yaml

下载地址 需要下载里面的 kubesphere-installer.yaml

curl -L https://github.com/kubesphere/ks-installer/releases/download/v3.3.2/kubesphere-installer.yaml -o kubesphere-installer.yaml && \
curl -L https://github.com/kubesphere/ks-installer/releases/download/v3.3.2/cluster-configuration.yaml -o kubesphere-cluster-configuration.yaml

安装

kubectl apply -f kubesphere-installer.yaml
kubectl apply -f kubesphere-cluster-configuration.yaml

查看进度和日志

kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-installer -o jsonpath='{.items[0].metadata.name}') -f

问题:

没有找到StorageClass

TASK [preinstall : KubeSphere | Stopping if default StorageClass was not found] ***
fatal: [localhost]: FAILED! => {
    "assertion": "\"(default)\" in default_storage_class_check.stdout",
    "changed": false,
    "evaluated_to": false,
    "msg": "Default StorageClass was not found !"
}

没有正确输出启动日志

## 没有正确输出启动日志,启动日志停在以下位置时
2024-11-03T16:09:37+08:00 INFO     : QUEUE add all HookRun@OnStartup
2024-11-03T16:09:37+08:00 INFO     : Running schedule manager ...
2024-11-03T16:09:37+08:00 INFO     : MSTOR Create new metric shell_operator_live_ticks
2024-11-03T16:09:37+08:00 INFO     : MSTOR Create new metric shell_operator_tasks_queue_length
2024-11-03T16:09:37+08:00 INFO     : GVR for kind 'ClusterConfiguration' is installer.kubesphere.io/v1alpha1, Resource=clusterconfigurations
##  需要执行以下命令 kubectl apply -f kubesphere-cluster-configuration.yaml

下载镜像失败:

  1. # 问题描述:  ImagePullBackOff
    kubesphere-system   ks-installer-846c78ddbf-wtrxj              0/1     ImagePullBackOff   0          20m
    # 解决: 在 /etc/docker/daemon.json 中添加镜像配置 
    "registry-mirrors": ["https://docker.rainbond.cc"]
    

监控和Minio的Pod调度异常

可以从节点亲和性,存储空间要求等方面进行排查

我这里的问题是pv的存储空间不够,无法满足PVC的要求,所以无法调度成功

# 查看现有的pvc存储要求
kubectl get pvc -n kubesphere-monitoring-system -o yaml |grep 'storage: 20Gi'
# 把PVC配置存储到文件 
kubectl get pvc -n kubesphere-monitoring-system -o yaml > pvc-back.yaml
#删除之前无法调度的PVC
kubectl get pvc -A 
kubectl delete pvc -n namespace pvc-name
# 修改pvc-back.yaml里面的storage相关配置, 重新创建pvc
kubectl apply -f pvc-back.yaml

LOCAL-PV目录要手动创建

Local pv的目录需要自己在对应的节点上创建,不然容器无法正常启动

验证安装

#####################################################
###              Welcome to KubeSphere!           ###
#####################################################
Console: http://192.168.0.2:30880
Account: admin
Password: P@88w0rd
NOTES:
  1. After you log into the console, please check the
     monitoring status of service components in
     the "Cluster Management". If any service is not
     ready, please wait patiently until all components
     are up and running.
  2. Please change the default password after login.
#####################################################
https://kubesphere.io             20xx-xx-xx xx:xx:xx
#####################################################

标签:kubectl,kubesphere,kubekey,storage,yaml,pvc,install,installer
From: https://www.cnblogs.com/xysgo/p/18527721

相关文章

  • install-k8s-kubekey
    使用KubeKey安装K8s集群Github地址在Kubernetes之上安装KubeSphere多节点安装准备Linux主机对主机的各种要求见官方文档多节点安装,下面只列一些重要的操作步骤升级内核版本#如果使用Kube-proxy使用的是ipvs模式,一定的升级内核版本到4.1及以上安装依赖yuminstal......
  • postgreSQL install pgvector
    组件地址:https://github.com/pgvector/pgvector我的机器是MacOS,下载的postgreSQL是15,按理下载下来是自动安装了pgvector,但是测试的时候发现并没有这个extension。按文档执行:make--报错,clang:error:unsupportedargument'native'tooption'-march='。经查询命令改为:mak......
  • 如何解决ffmpeg安装报错ERROR: You have requested merging of multiple formats but
    ......
  • How to Install psql on Mac
    参考链接:Here#firststep➜brewinstalllibpq==>Downloadinghttps://mirrors.ustc.edu.cn/homebrew-bottles/api/formula.jws.json==>Downloadinghttps://mirrors.ustc.edu.cn/homebrew-bottles/api/cask.jws.json==>Fetchingdependencie......
  • KubeSphere v4 应用商店配置指南
    在KubeSpherev4版本中,为保持平台的简洁性,系统默认移除了内置应用商店中的应用。用户可以按照下列步骤进行手动配置和添加。注意:应用商店和扩展市场有所不同,扩展市场的使用方法将在后续文档中详细介绍。HelmRepo源:安装过程中需要从源下载Chart包,确保源可用并同步最新的......
  • App Cleaner & Uninstaller 中文激活版安装包 App Cleaner & Uninstaller 软件卸载清
    AppCleaner&Uninstaller是一款专为Mac用户设计的强大卸载工具。它能够深度卸载应用程序,不仅移除主程序,还彻底清理相关的配置文件、依赖文件等,确保卸载干净无残留。同时,该软件具备智能扫描功能,预览并列出所有安装的应用程序,方便用户选择卸载。此外,AppCleaner&Uninstaller还......
  • pip install open3d 失败
    pip安装open3d失败#pipinstallopen3dLookinginindexes:https://pypi.tuna.tsinghua.edu.cn/simpleERROR:Couldnotfindaversionthatsatisfiestherequirementopen3d(fromversions:none)ERROR:Nomatchingdistributionfoundforopen3d 解决:包名已......
  • PyInstaller打包(草稿)
     PyInstaller是什么PyInstaller是一个用于将Python应用程序及其所有依赖项打包成独立的可执行文件的工具。它支持Windows、macOS和Linux操作系统,并且可以处理许多复杂的依赖关系,包括第三方库和Python解释器本身。PyInstaller的主要作用1.创建独立的可执行文件......
  • windows上安装nvm-noinstall.zip
    在windows上安装nvm-noinstall.zip步骤:1、解压nvm-noinstall.zip并创建node_global和node_cache目录2、修改install.cmd3、配置环境变量4、以管理员身份运行install.cmdsettings.txtroot:D:\Develop\nvmpath:D:\Develop\nodejsarch:64proxy:none......
  • Install PNetLab v6 BETA release
    安装仿真网络模拟器PNetLabv6版本Installationinstructions-PNetLabv6BETAreleaseReadthefullinstructionsandimportantnotesbeforestartingtheprocess.Afteryoufinishreadingthem,followtheprocessstepbystep.Step1DownloadtheUbuntuServ......