istio安装部署总结

news/2024/11/27 22:38:23/

istio安装部署总结

大纲

  • istio基础概念
  • 版本选择
  • 安装istio
  • 核心主件
  • 卸载istio
  • kiali安装

istio基础概念

https://istio.io/latest/zh/docs/ 中文文档

istio是一个服务治理平台,治理服务间的访问,(例如流量控制,安全策略,限流机制等)只要服务间产生访问就可以进行治理,不关注服务是否为微服务,也不要求服务的代码进行微服务化。

版本选择

安装istio前需要对比版本,istio与k8s有深度的绑定,istio与 k8s版本对应如下

在这里插入图片描述

https://istio.io/latest/docs/releases/supported-releases/#support-status-of-istio-releases 版本对应说明

由于本地的k8s集群版本为1.17 故本次安装使用Istio 1.9.x

在这里插入图片描述

k8s 1.17 对应 Istio 1.9.x

下载地址
https://github.com/istio/istio/releases/tag/1.9.9
https://github.com/istio/istio/releases/tag/1.9.7

在这里插入图片描述

下载完成后得到 istio-1.9.7-linux-amd64.tar.gz 解压后得到istioctl

在这里插入图片描述

将istioctl命令复制到/usr/bin文件夹即可

在这里插入图片描述

安装方式

istioctl install配置说明

https://istio.io/latest/zh/docs/setup/install/istioctl/ 官方安装文档说明

最简单的安装方式是直接使用istioctl install命令进行安装

istioctl install --set profile=demo
使用--set 可以指定安装时的参数
例如 
--set profile=demo 表示指定配置类型为demo

istio profile配置类型有如下类型

  • default:根据 IstioOperator API 的默认设置启动组件。 建议用于生产部署和 Multicluster Mesh 中的 Primary Cluster。
    您可以运行 istioctl profile dump 命令来查看默认设置。

  • demo:这一配置具有适度的资源需求,旨在展示 Istio 的功能。 它适合运行 Bookinfo 应用程序和相关任务。 这是通过快速开始指导安装的配置。

  • minimal:与默认配置文件相同,但只安装了控制平面组件。 它允许您使用 Separate Profile 配置控制平面和数据平面组件(例如 Gateway)。

  • remote:配置 Multicluster Mesh 的 Remote Cluster。

  • empty:不部署任何东西。可以作为自定义配置的基本配置文件。

  • preview:预览文件包含的功能都是实验性。这是为了探索 Istio 的新功能。不确保稳定性、安全性和性能(使用风险需自负)。

下图表示不同的配置文件会去安装的istio的组件

在这里插入图片描述

https://istio.io/latest/zh/docs/setup/additional-setup/config-profiles/ 安装配置文件官方说明文档

–set 还可以配置其他参数

  • –set meshConfig.accessLogFile=/dev/stdout 启动访问日志
  • –set hub=registry-1.docker.io/istio 配置根镜像 可以是自己搭建的私有镜像仓库,可以将其他渠道获得的镜像放入自己的registry中,方便使用

其他安装配置说明 https://istio.io/v1.9/docs/reference/config/istio.operator.v1alpha1/#IstioOperatorSpec

安装istio

使用 istioctl install --set profile=demo命令安装istio 此时会安装Istiod,ingressgateway和egressgateway,

istioctl install --set profile=demo

在这里插入图片描述

安装完成后可以看到

在这里插入图片描述

核心主件

  • istiod istiod
  • istio ingress gateway
  • istio egress gateway

istiod

istiod中的’d’ 代表 daemon

istiod 将老版本中需要的 Pilot,Galley,Citadel 和 sidecar 注入器执行的功能统一为一个二进制文件

参考资料 https://istio.io/latest/zh/blog/2020/istiod/

istio ingress gateway

istio ingress gateway是进入集群的大门,外部要访问网格内部需要从这个ingress gateway进入

istio egress gateway

istio egress gateway是出去集群的大门。流量出去的时候走这

卸载istio

istioctl x uninstall --purge

kiali安装使用

kialiIstio 可观察性的控制台。通过监视流量来推断拓扑和错误报告,它可以帮助您了解服务网格的结构和运行状态。 Kiali 提供了详细的的指标并与 Grafana 进行基础集成,可以用于高级查询。通过与 Jaeger 来提供分布式链路追踪功能。

官方资料 https://istio.io/latest/zh/docs/ops/integrations/kiali/

Kiali提供以下功能:

  • 1 分布式跟踪
  • 2 服务拓扑图
  • 3 服务发现
  • 4 健康检查
  • 5 指标度量收集
  • 6 配置校验

kiali安装

在github上找到对应版本的istio的源码,例如当前安装的istio版本为1.9.7

在这里插入图片描述

istio-1.9.x版本
https://github.com/istio/istio/tree/release-1.9/samples/addons

在这里插入图片描述

配置文件说明

  • kiali.yaml kiali安装配置文件
  • jaeger.yaml jaeger分布式链路追踪安装配置文件
  • prometheus.yaml prometheus监控安装配置文件
  • grafana.yaml grafana相关配置,可以不部署

安装时先修改kiali.yaml 中service的配置,将service的类型改为NodePort 这样可以外网访问

apiVersion: v1
kind: Service
metadata:name: kialinamespace: istio-systemlabels:... 省略
spec:ports:- name: httpprotocol: TCPport: 20001targetPort: 20001nodePort:  20001- name: http-metricsprotocol: TCPport: 9090targetPort: 9090nodePort:  9090selector:app.kubernetes.io/name: kialiapp.kubernetes.io/instance: kiali-servertype: NodePort  

最小安装只需要安装kiali.yaml prometheus.yaml jaeger.yaml

kubectl apply -f kiali.yaml -n istio-system
kubectl apply -f prometheus.yaml -n istio-system
kubectl apply -f jaeger.yaml -n istio-system

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

安装完成后可以看下

在这里插入图片描述

访问 http://192.168.0.160:20001/ kiali成功运行
在这里插入图片描述


http://www.ppmy.cn/news/979266.html

相关文章

c语言sizeof运算符的理解和使用

文章目录 1 sizeof作用2 sizeof使用形式3 sizeof使用示例3.1 基本数据类型3.2 变量3.3 指针变量3.4 数组3.5 结构体3.6 联合体 >>返回总目录<< 1 sizeof作用 sizeof是C语言的一种单目操作符&#xff0c;如C语言的其他操作符、–等。它并不是函数。sizeof操作符以…

详解CMakeLists.txt

在前一篇文章 esp32 初识 cmake 构建工具 中&#xff0c;已经用"hellow world"程序介绍了cmake最基本的用法&#xff0c;今天详细讲解CMakeLists.txt文件。 CMakeLists.txt CMakeLists.txt文件是CMake构建工具的核心配置文件。它包含了构建项目所需的一系列指令和参…

深度学习(一)

目录 一、特征工程的作用 二、深度学习的应用 三、得分函数 四、损失函数 五、前向传播 六、反向传播 一、特征工程的作用 数据特征决定了模型的上限预处理和特征提取是最核心的算法与参数选择决定了如何逼近这个上限 二、深度学习的应用 无人驾驶人脸识别分辨率重构 深…

基于VUE3+Layui从头搭建通用后台管理系统(前端篇)六:后台主页功能实现下

一、本章内容 接上一章,继续实现后端主页内容,主要实现工具栏对应相关内容的实现,包括系统消息、系统公告、全屏切换、语言切换、主题切换等。 1. 详细课程地址: 待发布 2. 源码下载地址: 待发布 二、界面预览 三、开发视频 基于VUE3+Layui从头搭建通用后台管理系统合集…

国内十大精准的现货黄金价格走势图软件最新排名(综合版)

选择国内现货黄金价格走势图软件时&#xff0c;需要考虑几个因素。首先&#xff0c;软件的稳定性和可靠性至关重要。应选择有良好声誉和长期稳定运行的平台&#xff0c;以确保价格数据的准确性和及时性。其次&#xff0c;要选择功能齐全的软件。较为优秀的软件应该提供多种技术…

基于Matlab实现30种电力电子仿真模型(附上完整源码)

本文介绍了如何使用Matlab来实现电力电子仿真模型&#xff0c;并提供了一个简单的代码示例&#xff0c;展示了如何建立一个逆变器的仿真模型并进行仿真分析。 文章目录 1. 引言2. Matlab实现电力电子仿真模型的基本步骤3. 逆变器仿真模型的示例代码4. 结果分析5. 结论6. 30个完…

MySQL本地安装遇到的问题

今天需要在本地安装mysql&#xff0c;解压到指定文件夹后&#xff0c;遇到了这两个问题&#xff1a; 1.MySQL服务无法启动 2.本地计算机上的MySQL服务启动后停止。某些服务在未由其他服务或程序使用时将自动 这两个问题在我总结看来&#xff0c;有这几个原因&#xff1a; ①…

趋动科技携手星辰天合,推出针对人工智能领域的两款联合解决方案

近日&#xff0c;趋动科技与 XSKY星辰天合联合宣布&#xff0c;结合双方优势能力和产品&#xff0c;携手推出高性能数据湖一站式方案及全协议存算一体化方案&#xff0c;帮助客户简化 AI 工作的 IT 基础设施部署&#xff0c;实现 AI 相关工作更加灵活和便捷。 全协议存算一体化…