元宇宙环境部署之基础组件部署

元宇宙环境部署之基础组件部署

首页冒险解谜元宇宙karastar更新时间:2024-09-23

元宇宙环境部署之基础组件部署

1.Kubekey

export KKZONE=cn mkdir kubekey cd /data/tools/kubekey curl -sfL https://get-kk.kubesphere.io | VERSION=v3.0.2 sh - chmod x kk cp kk /usr/local/bin ##离线包 rz -qery kubekey.tgz tar zxvf kubekey.tgz

2.Kubernetes & Kubesphere

#使用已有镜像,提高效率

##离线包

rz -qery kubesphere_v3.3.tgz

tar zxvf kubesphere_v3.3.tgz

导出镜像

#!/bin/bash docker images |grep registry.cn|awk '{print $1"@"$2}'|grep -v REPOSITORY > images.list for i in `cat images.list` do img_url="`echo $i|awk -F\@ '{print $1}'`" img_tag="`echo $i|awk -F\@ '{print $2}'`" img_name="`echo "$i"|sed 's/\//#/g'`" echo ${img_url}:${img_tag} ${img_name}.tgz docker save -o ${img_name}.tgz ${img_url}:${img_tag} done

导入镜像

#!/bin/bash for i in `ls *.tgz` do echo $i docker load < $i done

安装部署

# dependences yum install -y socat conntrack ebtables ipset #修改Host解析 vi /etc/hosts 192.168.10.17 umi # standalone export KKZONE=cn cd /data/tools/kubekey kk create cluster --with-kubernetes v1.23.10 --with-kubesphere v3.3.1

部署完成

16:15:37 CST success: [umi] ##################################################### ### Welcome to KubeSphere! ### ##################################################### Console: http://192.168.10.18:30880 Account: admin Password: P@88w0rd NOTES: 1. After you log into the console, please check the monitoring status of service components in "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 2023-03-07 16:38:17 ##################################################### 16:38:19 CST success: [umi] 16:38:19 CST Pipeline[CreateClusterPipeline] execute successfully Installation is complete. Please check the result using the command: kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l 'app in (ks-install, ks-installer)' -o jsonpath='{.items[0].metadata.name}') -f

3.NFS部署

# nfs服务端节点 yum install -y nfs-utils systemctl enable nfs-server rpcbind --now # 创建nfs共享目录、授权 mkdir -p /data/nfs-volume && chmod -R 777 /data/nfs-volume # 写入exports cat << \EOF > /etc/exports /data/nfs-volume 192.168.10.0/24(rw,sync,no_root_squash) EOF systemctl reload nfs-server # nfs客户端节点,所有k8s节点 yum install -y nfs-utils systemctl enable rpcbind --now

4.helm部署nfs驱动

# add repo helm repo add nfs-subdir-external-provisioner https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/ # pull repo(如本地没有) # helm pull nfs-subdir-external-provisioner/nfs-subdir-external-provisioner #上传本地压缩包 tar zxvf nfs.tgz #导入镜像 cd nfs docker load -i nfs-subdir-external-provisioner.tar # 解压chart包 # tar -xf nfs-subdir-external-provisioner-4.0.17.tgz # 部署 helm install nfs-provisioner nfs-subdir-external-provisioner --set nfs.server=192.168.10.17 --set nfs.path=/data/nfs-volume --set storageClass.provisionerName=nfs-provisioner #更新 helm upgrade nfs-provisioner nfs-subdir-external-provisioner --set nfs.server=192.168.10.17 --set nfs.path=/data/nfs-volume --set storageClass.provisionerName=nfs-provisioner

5.Ingress Nginx 部署

节点打上标签才能部署

#查看节点信息 kubectl get nodes # 给节点打标签 cd /data/tools/ingress-nginx kubectl label node umi kubernetes.io/ingress=nginx #pod 选择标签,同时以DaemonSet方式部署,扩容则需要给新节点打标签 # nodeSelector: # kubernetes.io/ingress: nginx # #查看标签 kubectl get nodes --show-labels #创建命名空间 kubectl create namespace metaverse # 创建证书,证书在tls目录 kubectl create secret tls umi-meta-tls --cert=./tls/9140149__umi.com.pem --key=./tls/9140149__umi.com.key -n metaverse #查看secret kubectl get secret -n metaverse kubectl get secret umi-meta-tls -n metaverse kubectl describe secret umi-meta-tls -n metaverse kubectl get secret umi-meta-tls --output=yaml -n metaverse kubectl get secret umi-meta-tls -n metaverse|base64 #导入镜像(certgen,自动生成hook api 调用) docker load -i ingress-nginx-controller.tar docker load -i kube-webhook-certgen.tar #部署ingress-nginx kubectl apply -f deploy-daemonset.yaml #查看 kubectl get svc,deploy,pods -A |grep ingress kubectl get svc,deploy,pods -A|grep ingress

kubectl get svc,deploy,pods -A|grep ingress

6.yaml 方式部署 kubernetes-dashboard (使用Kubesphere控制面板,暂时不部署)

创建用户admin-user,并赋予cluster-admin角色

apiVersion: v1 kind: ServiceAccount metadata: name: admin-user namespace: kubernetes-dashboard --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: admin-user roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin subjects: - kind: ServiceAccount name: admin-user namespace: kubernetes-dashboard

安装

cd /data/tools/src/kubernetes-dashboard kubectl create namespace kubernetes-dashboard kubectl apply -f cluster-user.yaml

获取admin-user Token

# 用token登录dashboard kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')

helm部署dashboard

# 添加仓库 helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/ #查找库 helm search repo kubernetes-dashboard #拉取kubernetes-dashboard库 helm pull kubernetes-dashboard/kubernetes-dashboard #复制values.yaml tar zxvf kubernetes-dashboard-6.0.0.tgz cd kubernetes-dashboard/ cp values.yaml values-kubernetes-dashboard.yaml #vi values-kubernetes-dashboard.yaml service: type: NodePort externalPort: 8443 nodePort: 31443 metrics-server: enabled: true args: - --kubelet-preferred-address-types=InternalIP - --kubelet-insecure-tls #下载metrics-server docker pull bitnami/metrics-server cd /data/tools/src/kubernetes-dashboard/kubernetes-dashboard/charts/metrics-server vi values.yaml repository: bitnami/metrics-server tag: "latest" # 安装dashboard,values-kubernetes-dashboard.yaml #kubernetes-dashboard/kubernetes-dashboard 指定helm仓库里的库包 #helm install kubernetes-dashboard -f values-kubernetes-dashboard.yaml -n kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard helm install kubernetes-dashboard ./kubernetes-dashboard -f values-kubernetes-dashboard.yaml -n kubernetes-dashboard #查看Pods kubectl get pods -n kubernetes-dashboard # 更新dashboard helm upgrade kubernetes-dashboard -f values-kubernetes-dashboard.yaml -n kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard # uninstall 或 delete dashboard helm delete kubernetes-dashboard -n kubernetes-dashboar

访问控制面板:

https://192.168.10.17:31443/

需要获取admin的token

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved