容器相关
非root用户Docker与K8S
Containerd安装
Containerd常用命令
Docker
镜像创建
国内镜像仓库
容器创建(Dockerfile)
容器系统
docker配置
docker数据管理
docker网络管理
docker容器自启动
docker镜像加速
docker问题
搭建Portainer可视化界面
Docker Swarm
Swarm搭建Docker集群
Docker Compose
Docker Compose命令
Docker Compose模板
Docker Machine
Kubernetes常用命令
k8s部署(kubeadmin)
k8s高可用部署
MiniKube
k8s1.24部署(containerd)
k8s1.24部署(docker)
部署 Dashboard
Kuboard K8S管理台
k8s权限管理
k8s网络插件
私有仓密码镜像拉取
k8s集群管理
POD--基本单位
Pod模板
Pod生命周期
Pod健康检查
初始化容器(initContainer)
Deployment--Pod的管理
Deployment模板
Deployment升级与回滚
DaemonSet控制器
StatefulSet控制器(有状态)
JOB与CRONJOB
Service--发布服务
ingress-traefix
ingress-nginx
MetalLB
存储与配置
持久存储卷
配置存储卷
资源管理
标签、选择器与注解
资源预留
调度管理
自动扩容
Proxy API与API Server
Helm--K8S的包管理器
helm常用命令
自定义Chart
私有chart仓库
helm dashboard
K8S证书过期
K8S问题解决
Harbor安装
Harbor操作
Harbor问题
Harbor升级
Docker Registry安装
Docker Registry鉴权
Registry用Nginx代理SSL及鉴权
Docker Registry问题
Istio 服务网络
常用示例
Gateway【服务网关】
kiali 可视化页面
开启HTTPS
linkerd 服务网络
本文档使用MrDoc发布
返回首页
-
+
Istio 服务网络
2024年4月28日 14:40
admin
#视频 https://www.bilibili.com/video/BV1ea4y1c7MT?p=39&vd_source=f5667495b1800a8179d818434bd2ea6b #支持版本 https://preliminary.istio.io/latest/docs/releases/supported-releases/#support-status-of-istio-releases ![](/media//202404/2024-04-24134105927635.png) ![](/media//202404/2024-04-23171437514882.png) --- #部署 #中文 https://preliminary.istio.io/latest/zh/docs/setup/getting-started/#download --- ####1、转到 Istio 发布 页面,下载针对您操作系统的安装文件, 或用自动化工具下载并提取最新版本(Linux 或 macOS): https://github.com/istio/istio/releases/ --- curl -L https://istio.io/downloadIstio | sh - #指定版本下载 curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.21.2 TARGET_ARCH=x86_64 sh - --- ####2、转到 Istio 包目录 cd istio-1.21.2 安装目录包含: samples/ 目录下的示例应用程序 bin/ 目录下的 istioctl 客户端二进制文件。 --- ####3、将 istioctl 客户端添加到路径(Linux 或 macOS): export PATH="$PATH:/opt/istio-1.21.2/bin" --- #安装 Istio ####对于本次安装,我们采用 demo 配置组合。 选择它是因为它包含了一组专为测试准备的功能集合,另外还有用于生产或性能测试的配置组合。 istioctl install --set profile=demo -y --- ####使用国内源安装 istioctl install --set profile=demo --set hub=registry.cn-hangzhou.aliyuncs.com/istio-release ![](/media//202404/2024-04-24140719340398.png) --- ####profile的选择类型如下: |参数|说明| |--|-- |default|根据 IstioOperator API 的默认设置来启用组件。 建议用于生产部署和多集群网格 中的主集群。您可以运行 istioctl profile dump 命令来查看默认设置。 |demo|这一配置具有适度的资源需求,旨在展示 Istio 的功能。 它适合运行 Bookinfo 应用程序和相关任务。 这是通过快速开始指导安装的配置。此配置文件启用了高级别的追踪和访问日志,因此不适合进行性能测试。 |minimal|与默认配置文件相同,但只安装了控制平面组件。 它允许您使用单独的配置文件 配置控制平面和数据平面组件(例如 Gateway)。 |remote|用于配置一个从集群, 这个从集群由外部控制平面管理, 或者由多集群网格的 主集群中的控制平面管理。 |empty|不部署任何内容。可以作为自定义配置的基本配置文件。 |preview|预览文件包含的功能都属于实验性阶段。该配置文件是为了探索 Istio 的新功能。 确保稳定性、安全性和性能(使用风险需自负)。 |ambient|Ambient 配置文件旨在帮助您开始使用 Ambient Mesh。 ![](/media//202404/2024-04-24151704533125.png) --- ##卸载 istioctl uninstall --purge -y --- --- ####【还需明确这语句作用】 ####给命名空间添加标签,指示 Istio 在部署应用的时候,自动注入 Envoy 边车代理 #查看 kubectl get namespace -L istio-injection #添加 kubectl label namespace default istio-injection=enabled #删除 kubectl label namespace default istio-injection- --- #部署示例应用(简单) ####1、部署 httpbin 示例应用: cd /opt/istio-1.21.2/samples/httpbin #创建Service跟Deployment(sidecars方式) kubectl apply -f <(istioctl kube-inject -f httpbin-vault.yaml) #创建Gateway跟VirtualService kubectl apply -f httpbin-gateway.yaml --- ####2、访问 #查看网口 kubectl get svc -A ![](/media//202404/2024-04-24154003356324.png) --- ####web访问 ![](/media//202404/2024-04-24154057583257.png) --- #部署示例应用(复杂) ####修改为国内源镜像 docker.io/istio/examples-bookinfo-reviews-v1:1.18.0 改为: registry.cn-hangzhou.aliyuncs.com/knative-sample/examples-bookinfo-reviews-v1:v1-aliyun docker.io/istio/examples-bookinfo-reviews-v2:1.18.0 改为: registry.cn-hangzhou.aliyuncs.com/knative-sample/examples-bookinfo-reviews-v2:v1-aliyun docker.io/istio/examples-bookinfo-reviews-v3:1.18.0 改为: registry.cn-hangzhou.aliyuncs.com/knative-sample/examples-bookinfo-reviews-v3:v1-aliyun --- kubectl apply -f /opt/istio-1.21.2/samples/bookinfo/platform/kube/bookinfo.yaml ####如果您在安装过程中禁用了 Sidecar 自动注入功能而选择手动注入 Sidecar,请在部署应用之前使用 istioctl kube-inject 命令修改 bookinfo.yaml 文件。 kubectl apply -f <(istioctl kube-inject -f samples/bookinfo/platform/kube/bookinfo.yaml) --- ##应用说明 这个示例部署了一个用于演示多种 Istio 特性的应用,该应用由四个单独的微服务构成。 这个应用模仿在线书店的一个分类,显示一本书的信息。 页面上会显示一本书的描述,书籍的细节(ISBN、页数等),以及关于这本书的一些评论。 --- ####Bookinfo 应用分为四个单独的微服务: productpage. 这个微服务会调用 details 和 reviews 两个微服务,用来生成页面。 details. 这个微服务中包含了书籍的信息。 reviews. 这个微服务中包含了书籍相关的评论。它还会调用 ratings 微服务。 ratings. 这个微服务中包含了由书籍评价组成的评级信息。 --- ####reviews 微服务有 3 个版本: v1 版本不会调用 ratings 服务。 v2 版本会调用 ratings 服务,并使用 1 到 5 个黑色星形图标来显示评分信息。 v3 版本会调用 ratings 服务,并使用 1 到 5 个红色星形图标来显示评分信息。 --- ####下图展示了这个应用的端到端架构。 ![](/media//202404/2024-04-24165356550400.png) --- #参考资料 https://zhuanlan.zhihu.com/p/537350633 https://blog.csdn.net/sD7O95O/article/details/134086008?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-0-134086008-blog-137009912.235^v43^pc_blog_bottom_relevance_base3&spm=1001.2101.3001.4242.1&utm_relevant_index=3 --- #kiali https://preliminary.istio.io/latest/zh/docs/ops/integrations/kiali/
分享到: