在所有微服务上启用 Istio

之前,您在单个微服务 productpage 上启用了 Istio。您可以继续逐步在微服务上启用 Istio,以获得更多微服务的 Istio 功能。在本教程中,您将在一步内在所有剩余的微服务上启用 Istio。

  1. 在本教程中,将微服务的部署规模缩减到 1。

    $ kubectl scale deployments --all --replicas 1
    
  2. 重新部署启用 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
    
  3. 访问应用程序的网页数次。请注意,Istio 是 **透明地** 添加的,原始应用程序没有更改。它是动态添加的,无需取消部署和重新部署整个应用程序。

  4. 检查应用程序 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
    
  5. 使用您之前在 /etc/hosts 文件中设置的自定义 URL 访问 Istio 仪表盘 之前

    http://my-istio-dashboard.io/dashboard/db/istio-mesh-dashboard
    
  6. 在左上角的下拉菜单中,选择“Istio 网格仪表盘”。请注意,现在您命名空间中的所有服务都显示在服务列表中。

    Istio Mesh Dashboard
    Istio 网格仪表盘
  7. 在“Istio 服务仪表盘”中检查其他一些微服务,例如 ratings

    Istio Service Dashboard
    Istio 服务仪表盘
  8. 使用 Kiali 控制台可视化应用程序的拓扑结构,Kiali 不是 Istio 的一部分,但作为 demo 配置的一部分安装。使用您之前在 /etc/hosts 文件中设置的自定义 URL 访问仪表盘 之前

    http://my-kiali.io/kiali/console
    

    如果您在 入门说明中安装了 Kiali,您的 Kiali 控制台用户名是 admin,密码是 admin

  9. 单击“图表”选项卡,并在顶层角落的“命名空间”下拉菜单中选择您的命名空间。在“显示”下拉菜单中标记“流量动画”复选框以查看一些酷炫的流量动画。

    Kiali Graph Tab, display drop-down menu
    Kiali 图表选项卡,显示下拉菜单
  10. 尝试“边标签”下拉菜单中的不同选项。将鼠标悬停在图表的节点和边上。请注意右侧的流量指标。

    Kiali Graph Tab, edge labels drop-down menu
    Kiali 图表选项卡,边标签下拉菜单
    Kiali Graph Tab
    Kiali 图表选项卡

您已准备好 配置 Istio 入口网关

这些信息是否有用?
您是否有任何改进建议?

感谢您的反馈!