在所有微服務上啟用 Istio
先前,您已在單一微服務 productpage
上啟用 Istio。您可以逐步在更多微服務上啟用 Istio,以取得更多微服務的 Istio 功能。在本教學課程中,您將在一個步驟中在所有剩餘的微服務上啟用 Istio。
在本教學課程中,請將微服務的部署縮減為 1
$ kubectl scale deployments --all --replicas 1
重新部署已啟用 Istio 的 Bookinfo 應用程式。由於服務
productpage
已注入 Istio,因此不會重新部署,且其 Pod 不會變更。這次您只會使用一個微服務複本。$ curl -s https://raw.githubusercontent.com/istio/istio/release-1.24/samples/bookinfo/platform/kube/bookinfo.yaml | istioctl kube-inject -f - | kubectl apply -l app!=reviews -f - $ curl -s https://raw.githubusercontent.com/istio/istio/release-1.24/samples/bookinfo/platform/kube/bookinfo.yaml | istioctl kube-inject -f - | kubectl apply -l app=reviews,version=v2 -f - service/details unchanged serviceaccount/bookinfo-details unchanged deployment.apps/details-v1 configured service/ratings unchanged serviceaccount/bookinfo-ratings unchanged deployment.apps/ratings-v1 configured serviceaccount/bookinfo-reviews unchanged service/productpage unchanged serviceaccount/bookinfo-productpage unchanged deployment.apps/productpage-v1 configured deployment.apps/reviews-v2 configured
多次存取應用程式的網頁。請注意,Istio 是 透明地 新增的,原始應用程式並未變更。它是動態新增的,無需取消部署並重新部署整個應用程式。
檢查應用程式 Pod,並確認現在每個 Pod 都有兩個容器。一個容器是微服務本身,另一個是附加於其上的 Sidecar 代理。
$ kubectl get pods details-v1-58c68b9ff-kz9lf 2/2 Running 0 2m productpage-v1-59b4f9f8d5-d4prx 2/2 Running 0 2m ratings-v1-b7b7fbbc9-sggxf 2/2 Running 0 2m reviews-v2-dfbcf859c-27dvk 2/2 Running 0 2m curl-88ddbcfdd-cc85s 1/1 Running 0 7h
使用您在
/etc/hosts
檔案中 先前 設定的自訂 URL 來存取 Istio 儀表板。http://my-istio-dashboard.io/dashboard/db/istio-mesh-dashboard
在左上角的下拉式選單中,選擇Istio Mesh Dashboard。請注意,現在您命名空間中的所有服務都會出現在服務列表中。
Istio Mesh 儀表板 在 Istio Service Dashboard 中檢查其他微服務,例如
ratings
。Istio Service 儀表板 使用 Kiali 控制台視覺化您的應用程式拓撲,它不是 Istio 的一部分,而是作為
demo
組態的一部分安裝。使用您在/etc/hosts
檔案中 先前 設定的自訂 URL 來存取儀表板。http://my-kiali.io/kiali/console
如果您是按照入門說明安裝 Kiali,您的 Kiali 控制台使用者名稱是
admin
,密碼是admin
。點擊 Graph 標籤,並在頂層角落的 Namespace 下拉式選單中選擇您的命名空間。在 Display 下拉式選單中,勾選 Traffic Animation 核取方塊以查看一些酷炫的流量動畫。
Kiali Graph 標籤,顯示下拉式選單 嘗試 Edge Labels 下拉式選單中的不同選項。將滑鼠懸停在圖表的節點和邊緣上。請注意右側的流量指標。
Kiali Graph 標籤,邊緣標籤下拉式選單 Kiali Graph 標籤
您已準備好設定 Istio Ingress Gateway。