الصينية | إنجليزي
يوضح:

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.0ملحوظة:
images.properties .kubeadm config images list --kubernetes-version v1.30.2قم بتكوين موارد وحدة المعالجة المركزية والذاكرة لـ Kubernetes ، ويوصى بتخصيص 4 جيجابايت أو أكثر من الذاكرة.

قم بتنزيل الصورة المطلوبة لـ Kubernetes من خدمة Alibaba Cloud Mirror
قم بتنفيذ البرنامج النصي التالي على جهاز Mac الخاص بك
./load_images.shعلى Windows ، استخدم PowerShell
.load_images.ps1يوضح:
Set-ExecutionPolicy RemoteSigned في PowerShell "Run كمسؤول".images.properties قم بتشغيل Kubernetes وانتظر Kubernetes لبدء التشغيل 
نصائح :
على ماك:
إذا كانت هناك مشكلة أثناء نشر Kubernetes ، فيمكنك الحصول على معلومات السجل في الوقت الفعلي من خلال سجل تطبيق سطح المكتب Docker:
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 "على Windows:
إذا كانت هناك مشكلة أثناء نشر Kubernetes ، فيمكنك عرض تسجيل الدخول إلى Service .txt تحت c: programdata dockerdesktop ، وتسجيل الدخول إلى log.txt ضمن c: users yourusername appdata local docker
تشخيص المشكلة :
إذا رأيت أن Kubernetes تبدأ دائمًا ، فيرجى الرجوع إلى
rm -fr '~/Library/Group Containers/group.com.docker/pki'طريقة حاوية الدخول K8S
كيفية إدخال K8s مع حاويات متعددة في جراب
kubectl --namespace=kube-system exec -it kube-dns-1336009800-15b1h --container nginx -- sh
أو
kubectl --namespace=kube-system exec -it kube-dns-1336009800-15b1h -c nginx -- sh
ملاحظة: -Namespace هي مساحة الاسم Kube -DNS هي اسم POD ، و -C أو -Container هو اسم إحدى الحاويات في الجراب
العملية الاختيارية: قم بتبديل سياق تشغيل Kubernetes إلى Docker-Desktop (كان الإصدار السابق من السياق Docker-for-Desktop)
kubectl config use-context docker-desktopتحقق من حالة مجموعة Kubernetes
kubectl cluster-info
kubectl get nodeskubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.1/aio/deploy/recommended.yamlأو
kubectl apply -f kubernetes-dashboard.yamlتحقق من حالة تطبيق Kubernetes-Dashboard
kubectl get pod -n kubernetes-dashboardتمكين وكيل الوصول إلى خادم API
kubectl proxyالوصول إلى لوحة معلومات Kubernetes عبر عنوان URL التالي
http: // localhost: 8001/api/v1/assace/kubernetes-dashboard/https: kubernetes-dashboard:/proxy/
تفويض حساب الخدمة الافتراضية kube-system
kubectl apply -f kube-system-default.yamlلبيئة ماك
TOKEN= $( kubectl -n kube-system describe secret default | awk ' $1=="token:"{print $2} ' )
kubectl config set-credentials docker-desktop --token= " ${TOKEN} "
echo $TOKENلبيئة Windows
$TOKEN = (( kubectl - n kube - system describe secret default | Select - String "token : ") - split " + ")[ 1 ]
kubectl config set-credentials docker-desktop --token=" ${TOKEN} "
echo $TOKEN 
حدد رمزًا
أدخل إخراج المحتوى من وحدة التحكم أعلاه
أو حدد ملف kubeconfig ، المسار كما يلي:
Mac: $HOME/.kube/config
Win: %UserProfile%.kubeconfig
انقر لتسجيل الدخول وأدخل لوحة معلومات Kubernetes
ملاحظة: إذا قمت باختبار ISTIO ، فأنت لا تحتاج إلى تثبيت Ingress
تعليمات تثبيت عنوان المصدر
يؤكد
kubectl get pods --all-namespaces -l app.kubernetes.io/name=ingress-nginxنشر طلب الاختبار ، يرجى الرجوع إلى مقالة المجتمع للحصول على التفاصيل
kubectl create -f sample/apple.yaml
kubectl create -f sample/banana.yaml
kubectl create -f sample/ingress.yamlاختبار عينة التطبيق
$ curl -kL http://localhost/apple
apple
$ curl -kL http://localhost/banana
bananaحذف تطبيق العينة
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.yamlأو
kubectl delete -f ingress-nginx-controller.yamlيمكنك تثبيت Helm V3 وفقًا لمستند https://helm.sh/docs/intro/install/ في الصين ، نظرًا لأن عقدة CDN من Helm تستخدم Google Cloud ، فقد لا يمكن الوصول إليها. يمكنك الرجوع إلى القضية الرسمية الحالية: 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 إذا كانت هناك مشكلة توافق في الإصدار أثناء التثبيت اللاحق للمكونات باستخدام Helm ، فيمكنك الرجوع通过二进制包安装لتثبيت إصدار المطابقة
# 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 updateتثبيت WordPress
helm install wordpress stable/wordpressتحقق من حالة نشر WordPress
helm status wordpressإلغاء تثبيت WordPress Publish
helm uninstall wordpressملاحظة: يتزايد المنفذ الافتراضي بين بوابة Istio Ingress و Ingress. يرجى إزالة الدخول وإجراء الاختبارات التالية.
يمكن تثبيت ISTIO وفقًا للوثائق https://istio.io/docs/setup/getting-started/
على سبيل المثال ، قم بتنزيل ISTIO الإصدار 1.22.1 (يمكن استبدال الإصدارات الأحدث الأخرى بأنفسهم) ، وتنفيذ الأمر التالي:
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.22.1 sh -
cd istio-1.22.1
export PATH= $PWD /bin: $PATHملاحظة: لم يتم اختبار بيئة Windows بدقة.
على Windows ، يمكنك تنزيل حزمة تثبيت ISTIO يدويًا ، أو نسخ getLatestIstio.ps1 إلى الدليل الذي تريد تنزيل ISTIO وتنفيذه - ملاحظة: تم تعديله وفقًا لبرنامج التثبيت الذي يوفره المجتمع
.getLatestIstio.ps1istioctl install --set profile=demo -ykubectl get pods -n istio-systemdefault kubectl label namespace default istio-injection=enabled
kubectl get namespace -L istio-injectionيرجى الرجوع إلى https://istio.io/docs/examples/bookinfo/
kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yamlعرض عينة من موارد التطبيق
kubectl get svc,podتأكد من أن تطبيق العينة يعمل
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> "إنشاء بوابة الدخول
kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yamlعرض تكوين بوابة
kubectl get gatewayتأكد من الوصول إلى تطبيق العينة
export GATEWAY_URL=localhost:80
curl -s http:// ${GATEWAY_URL} /productpage | grep -o " <title>.*</title> "يمكن الوصول إليها من خلال المتصفح
http: // localhost/producted
samples/bookinfo/platform/kube/cleanup.shistioctl manifest generate --set profile=demo | kubectl delete -f -