1. Construction de l'environnement k8s
nœud | Adresse IP (utilisation unifiée de l'IP du réseau externe) | configuration | nuage |
maître | 192.168.1.33 | 2 cœurs 4G | Tencent Cloud |
nœud | 192.168.22.45 | 1 cœur 2G | Huawei-Cloud |
2. Déployer NFS
1. Le nœud maître installe le serveur nfs
yum -y install rpcbind nfs-utils
systemctl start rpcbind.service
systemctl start nfs.service
2. Créez le répertoire qui doit être monté
mkdir -pv /data/volumes
chown -R nfsnobody.nfsnobody /data/volumes
3. Configurez le fichier /etc/exports
vim /etc/exports
/data/volumes 192.168.22.45(insecure,rw,async,no_root_squash)
#使配置生效
exportfs -rv
# 查看配置
exportfs
4.node nœud installer le client nfs
yum -y install nfs-utils rpcbind
systemctl start rpcbind.service
3.helm déploie la classe de stockage (stockage dynamique)
1. Installer la barre
wget https://get.helm.sh/helm-v3.2.4-linux-amd64.tar.gz
tar -zxvf helm-v3.2.4-linux-amd64.tar.gz
mv linux-amd64/helm /usr/local/bin/helm
2. helm installe nfs-provisioner
helm repo add azure http://mirror.azure.cn/kubernetes/charts/
helm install nfs-client azure/nfs-client-provisioner \
--set nfs.server=192.168.1.33 \
--set nfs.path=/data/volumes \
--set storageClass.name=glusterfs \
--set storageClass.defaultClass=true
3. Voir
kubectl get sc
kubectl get pod
4. Créez un fichier de test test
# 配置
cat <<EOF > pvc-test.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-test
spec:
storageClassName: "nfs-storage"
accessModes:
- ReadWriteMany
resources:
requests:
storage: 10Mi
EOF
kubectl apply -f pvc-test.yaml
# 查看
kubectl get pvc
Le statut est Lié réussi, En attente est anormal
En cas d'anomalie, modifiez le fichier yaml et ajoutez - --feature-gates=RemoveSelfLink=false
vim /etc/kubernetes/manifests/kube-apiserver.yaml
4. Installez Kubesphere
1. Ouvrez le projet Kubesphere dans github , téléchargez le fichier yaml sur le nœud maître
kubectl apply -f kubesphere-installer.yaml
2. Modifiez le fichier cluster-configuration.yaml et activez les composants tels que devops à l'intérieur (remplacez false par true)
vim cluster-configuration.yaml
kubectl apply -f cluster-configuration.yaml
3. Vérifiez le journal pour voir si la tâche d'installation a réussi
kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-install -o jsonpath='{.items[0].metadata.name}') -f
Cinq. Connectez-vous à Kubesphere (http://192.168.1.33:30880)
Mot de passe du compte par défaut : admin/P@88w0rd