Chinois | Anglais
illustrer:

git checkout v1.30.2git checkout v1.29.2git checkout v1.29.1git checkout v1.28.2git checkout v1.27.2git checkout v1.25.9git checkout v1.25.4git checkout v1.25.2git checkout v1.25.0git checkout v1.24.2git checkout v1.24.0Note:
images.properties pour indiquer la version miroir requise, et vous êtes invité à soumettre la demande de tractionkubeadm config images list --kubernetes-version v1.30.2Configurez les ressources CPU et mémoire pour Kubernetes, et il est recommandé d'allouer 4 Go ou plus de mémoire.

Téléchargez l'image requise pour Kubernetes depuis Alibaba Cloud Mirror Service
Exécutez le script suivant sur votre Mac
./load_images.shSur Windows, utilisez PowerShell
.load_images.ps1illustrer:
Set-ExecutionPolicy RemoteSigned dans PowerShell "Exécuter en tant qu'administrateur".images.properties Allumez Kubernetes et attendez que Kubernetes commence à fonctionner 
CONSEILS :
Sur Mac:
S'il y a un problème pendant le déploiement de Kubernetes, vous pouvez obtenir des informations de journal en temps réel via le journal d'application Docker Desktop:
pred= ' process matches ".*(ocker|vpnkit).*"
|| (process in {"taskgated-helper", "launchservicesd", "kernel"} && eventMessage contains[c] "docker") '
/usr/bin/log stream --style syslog --level=debug --color=always --predicate " $pred "Sur Windows:
S'il y a un problème pendant le déploiement de Kubernetes, vous pouvez afficher le journal docker.txt sous c: programmedata dockerdesktop, et connecter log.txt sous c: users yourUserName AppData local docker
Diagnostic de problème :
Si vous voyez que Kubernetes commence toujours, veuillez vous référer à
rm -fr '~/Library/Group Containers/group.com.docker/pki'Méthode de conteneur d'entrée K8S
Comment entrer K8 avec plusieurs conteneurs dans un pod
kubectl --namespace=kube-system exec -it kube-dns-1336009800-15b1h --container nginx -- sh
ou
kubectl --namespace=kube-system exec -it kube-dns-1336009800-15b1h -c nginx -- sh
Remarque: - Namespace est l'espace de noms Kube-dns est le nom du pod, et -c ou -Container est le nom de l'un des conteneurs du pod
Fonctionnement facultatif: Communiquez le contexte exécutant Kubernetes à Docker-desktop (la version précédente du contexte était Docker-for-Desktop)
kubectl config use-context docker-desktopVérifiez l'état du cluster de Kubernetes
kubectl cluster-info
kubectl get nodeskubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.1/aio/deploy/recommended.yamlou
kubectl apply -f kubernetes-dashboard.yamlVérifiez l'état de l'application Kubernetes-Dashboard
kubectl get pod -n kubernetes-dashboardActiver l'agent d'accès au serveur API
kubectl proxyAccédez au tableau de bord Kubernetes via l'URL suivante
http: // localhost: 8001 / api / v1 / namespaces / kubernetes-dashboard / services / https: kubernetes-dashboard: / proxy /
Autoriser le compte de service par défaut kube-system
kubectl apply -f kube-system-default.yamlPour l'environnement Mac
TOKEN= $( kubectl -n kube-system describe secret default | awk ' $1=="token:"{print $2} ' )
kubectl config set-credentials docker-desktop --token= " ${TOKEN} "
echo $TOKENPour l'environnement Windows
$TOKEN = (( kubectl - n kube - system describe secret default | Select - String "token : ") - split " + ")[ 1 ]
kubectl config set-credentials docker-desktop --token=" ${TOKEN} "
echo $TOKEN 
Sélectionnez un jeton
Entrez la sortie du contenu de la console ci-dessus
Ou sélectionnez le fichier kubeconfig , le chemin est le suivant:
Mac: $HOME/.kube/config
Win: %UserProfile%.kubeconfig
Cliquez pour vous connecter et entrez le tableau de bord Kubernetes
Remarque: si vous testez Istio, vous n'avez pas besoin d'installer Ingress
Instructions d'installation d'adresse source
vérifier
kubectl get pods --all-namespaces -l app.kubernetes.io/name=ingress-nginxDéployez la demande de test, veuillez consulter l'article de la communauté pour plus de détails
kubectl create -f sample/apple.yaml
kubectl create -f sample/banana.yaml
kubectl create -f sample/ingress.yamlTest de l'échantillon d'application
$ curl -kL http://localhost/apple
apple
$ curl -kL http://localhost/banana
bananaSupprimer l'exemple d'application
kubectl delete -f sample/apple.yaml
kubectl delete -f sample/banana.yaml
kubectl delete -f sample/ingress.yamlkubectl delete -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.2.0/deploy/static/provider/cloud/deploy.yamlou
kubectl delete -f ingress-nginx-controller.yamlVous pouvez installer Helm V3 selon le document https://helm.sh/docs/intro/install/ en Chine, puisque le nœud CDN de Helm utilise Google Cloud, il peut ne pas être accessible. Vous pouvez vous référer au problème officiel existant: Helm / Helm # 7028
# Use homebrew on Mac
brew install helm
# Add helm repo
helm repo add stable http://mirror.azure.cn/kubernetes/charts/
# Update charts repo
helm repo update S'il existe un problème de compatibilité de version lors de l'installation ultérieure de composants à l'aide de Helm, vous pouvez vous référer通过二进制包安装pour installer la version correspondante
# Use Chocolatey on Windows
# 注:安装的时候需要保证网络能够访问googleapis这个域名
choco install kubernetes-helm
# Change helm repo
helm repo add stable http://mirror.azure.cn/kubernetes/charts/
# Update charts repo
helm repo updateInstaller WordPress
helm install wordpress stable/wordpressVérifiez le statut de publication WordPress
helm status wordpressDésinstaller WordPress Publier
helm uninstall wordpressRemarque: le conflit de port par défaut entre la passerelle Istio Ingress et la pénétration. Veuillez retirer la pénétration et effectuer les tests suivants.
Istio peut être installé en fonction de la documentation https://istio.io/docs/setup/getting-started/
Par exemple, téléchargez Istio version 1.22.1 (d'autres versions plus récentes peuvent être remplacées par elles-mêmes) et exécuter la commande suivante:
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.22.1 sh -
cd istio-1.22.1
export PATH= $PWD /bin: $PATHRemarque: L'environnement Windows n'a pas été rigoureusement testé.
Sur Windows, vous pouvez télécharger manuellement le package d'installation Istio, ou copier getLatestIstio.ps1 dans le répertoire où vous souhaitez télécharger Istio et Exécuter - Remarque: Modifié en fonction du script d'installation fourni par la communauté
.getLatestIstio.ps1istioctl install --set profile=demo -ykubectl get pods -n istio-systemdefault kubectl label namespace default istio-injection=enabled
kubectl get namespace -L istio-injectionVeuillez vous référer à https://istio.io/docs/examples/bookinfo/
kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yamlAfficher les échantillons de ressources d'application
kubectl get svc,podConfirmez que l'exemple d'application est en cours d'exécution
kubectl exec -it $( kubectl get pod -l app=ratings -o jsonpath= ' {.items[0].metadata.name} ' ) -c ratings -- curl productpage:9080/productpage | grep -o " <title>.*</title> "Créer une passerelle entrée
kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yamlAfficher la configuration de la passerelle
kubectl get gatewayConfirmez que l'exemple d'application est accessible
export GATEWAY_URL=localhost:80
curl -s http:// ${GATEWAY_URL} /productpage | grep -o " <title>.*</title> "Peut être accessible via le navigateur
http: // localhost / productpage
samples/bookinfo/platform/kube/cleanup.shistioctl manifest generate --set profile=demo | kubectl delete -f -