OpenShift 4 - OpenShift Service Mesh 3 预览

《OpenShift / RHEL / DevSecOps 汇总目录》

了解 OpenShift Service Mesh 3 的变化

OpenShift Service Mesh 是一套在 OpenShift 上安装部署、跟踪监控 Istio 运行环境的实现。红帽在 2023 年底推出了技术预览版的 OpenShift Service Mesh 3,它和目前的 OpenShift Service Mesh 2.x 有明显变化。这一变化体主要现在 OpenShift Service Mesh 3 将能直接使用社区的 Istio 实现,而 OpenShift Service Mesh 2.x 使用的是经红帽小幅改造的 Istio。这种改造带来的好处是让红帽版的 Istio 能更充分地融入整个 OpenShift 环境,但也随之带来两个问题:其一是即便小幅的改造也需要时间开发和测试,因此 OpenShift Service Mesh 2.x 不能及时使用最新版 Istio;其二是 OpenShift Service Mesh 2.x 可能和社区版会有微小差异,因此会有迁移成本和使用约束。

OpenShift Service Mesh 3 更加贴近 Istio 社区,它可以直接使用社区最新的 Istio,而和对其跟踪监控的功能集成是也通过 Istio 社区推荐的 Istio addon 实现的。

安装 OpenShift Service Mesh 3 核心环境

安装 Sail Operator

目前处于预留阶段的 OpenShift Service Mesh 3 是通过 Sail Operator 安装部署的。

  1. 使用默认配置安装 Sail Operator 即可。

创建 istio 环境

  1. 创建 istio-system 项目。
  2. 在 istio-system 中使用 Sail Operator 创建 istio 资源。
  3. 完成后确认 State: Healthy。
  4. 查看当前 istio 的版本
$ oc -n istio-system get istio
NAME      REVISIONS   READY   IN USE   ACTIVE REVISION   VERSION   AGE
default   1           1       1        Healthy           v1.21.0   4d15h

创建 istio-cni 环境

  1. 创建 istio-cni 项目。
  2. 在 istio-cni 中使用 Sail Operator 创建 istio-cni 资源。
  3. 完成后确认 State: Healthy。

安装 istioctl 客户端

$ curl -sL https://istio.io/downloadIstioctl | ISTIO_VERSION=1.21.0 sh -
$ export PATH=$HOME/.istioctl/bin:$PATH
$ istioctl version
client version: 1.21.0
control plane version: 1.21.0
data plane version: 1.21.0 (8 proxies)

部署 Istio 应用

  1. 创建项目,然后打标签以实现自动注入。
oc new-project bookinfo
oc label namespace bookinfo istio-injection=enabled
  1. 部署应用
$ oc apply -f https://raw.githubusercontent.com/istio/istio/release-1.21/samples/bookinfo/platform/kube/bookinfo.yaml -n bookinfo
service/details created
serviceaccount/bookinfo-details created
deployment.apps/details-v1 created
service/ratings created
serviceaccount/bookinfo-ratings created
deployment.apps/ratings-v1 created
service/reviews created
serviceaccount/bookinfo-reviews created
deployment.apps/reviews-v1 created
deployment.apps/reviews-v2 created
deployment.apps/reviews-v3 created
service/productpage created
serviceaccount/bookinfo-productpage created
deployment.apps/productpage-v1 created
  1. 创建应用级 ingress-gateway。
$ oc apply -f https://raw.githubusercontent.com/maistra/istio-operator/maistra-3.0/chart/samples/ingress-gateway.yaml -n bookinfo
service/istio-ingressgateway created
deployment.apps/istio-ingressgateway created
role.rbac.authorization.k8s.io/istio-ingressgateway-sds created
rolebinding.rbac.authorization.k8s.io/istio-ingressgateway-sds created
 
$ oc expose service istio-ingressgateway -n bookinfo
$ INGRESS_HOST=$(oc get route istio-ingressgateway -n bookinfo -o jsonpath='{.spec.host}')
  1. 将应用访问入口配置到 ingress-gateway。
$ oc apply -f https://raw.githubusercontent.com/istio/istio/master/samples/bookinfo/networking/bookinfo-gateway.yaml -n bookinfo
gateway.networking.istio.io/bookinfo-gateway created
virtualservice.networking.istio.io/bookinfo created
  1. 访问应用页面。
$ echo http://$INGRESS_HOST/productpage
$ curl http://$INGRESS_HOST/productpage

监控 Istio 运行环境和运行应用

安装 prometheus addon

  1. 安装 prometheus addon。
oc apply -f https://raw.githubusercontent.com/istio/istio/master/samples/addons/prometheus.yaml
oc expose service prometheus -n istio-system
oc get route prometheus -o jsonpath='{.spec.host}' -n istio-system

安装 grafana addon

  1. 安装 grafana addon。
oc apply -f https://raw.githubusercontent.com/istio/istio/master/samples/addons/grafana.yaml
oc expose service grafana -n istio-system
oc get route grafana -o jsonpath='{.spec.host}' -n istio-system
  1. 打开 grafana 控制台,查看 Istio Service Dashboard。
    在这里插入图片描述

安装 jaeger addon

  1. 安装 jaeger addon。
oc apply -f https://raw.githubusercontent.com/istio/istio/master/samples/addons/jaeger.yaml
oc expose service tracing -n istio-system
oc get route tracing -o jsonpath='{.spec.host}' -n istio-system
  1. 打开 jaeger 控制台,监控服务。
    在这里插入图片描述

安装 kiali addon

  1. 安装 kiali addon。
oc apply -f https://raw.githubusercontent.com/istio/istio/master/samples/addons/kiali.yaml
oc expose service kiali -n istio-system
oc get route kiali -o jsonpath='{.spec.host}' -n istio-system
  1. 打开 kiali 控制台,跟踪服务调用路径。
    在这里插入图片描述

参考

https://github.com/maistra/istio-operator/blob/maistra-3.0/bundle/README.md
https://www.redhat.com/en/blog/introducing-a-new-operator-for-istio-on-openshift
https://www.redhat.com/en/blog/red-hat-openshift-service-mesh-3-developer-preview-update
https://github.com/openshift-service-mesh/sail-operator

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/687830.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

谷粒商城实战(033 业务-秒杀功能4-高并发问题解决方案sentinel 1)

Java项目《谷粒商城》架构师级Java项目实战,对标阿里P6-P7,全网最强 总时长 104:45:00 共408P 此文章包含第326p-第p331的内容 关注的问题 sentinel(哨兵) sentinel来实现熔断、降级、限流等操作 腾讯开源的tendis&#xff0c…

打造精美电子画册,提升企业形象的方法

在当今数字化时代,企业形象的表达方式正在发生深刻变革。精美电子画册作为一种新兴的传播媒介,不仅能够展现企业风采、提升品牌价值,还能够吸引潜在客户、增强市场竞争力。 接下来告诉大家一些简单的制作方法,可以收藏起来哦 1.首…

HQL面试题练习 —— 累加刚好超过各省GDP40%的地市名称

目录 1 题目2 建表语句3 题解 1 题目 现有各省地级市的gdp数据,求从高到底累加刚好超过各省GDP40%的地市名称,临界地市也需要。例如: 浙江省的杭州24% 宁波 20% ,杭州宁波44% 大于40% 取出杭州、宁波 江苏省的苏州19% 南京 14% 无锡 12%&am…

Qt设置进程环境变量

目的 最近遇上了设置环境变量的问题,看似是小问题,想解决好,实在是一件不容易的事。 看看当时,我遇到这些问题的无奈: 首先说,是在windows进行环境变量的设置,如果在Linux那肯定是简单了。 一般来说,首先是设置系统的环境变量,这条路,是一条复杂的路,首先得写一个…

Centos7安装Zookeeper

Centos7安装Zookeeper 准备工作 https://zookeeper.apache.org/releases.html 下载稳定版的安装包。【注意:下载的是xxx-bin.tar.gz包 是可运行的zookeeper 而 xxx.tar.gz是源码包不可运行】 上传zookeeper的压缩包到指定目录/usr/local/zookeeper/ 安装Zookeepe…

重庆工商大学社会工作专业试题及答案,分享几个实用搜题和学习工具 #媒体#学习方法#知识分享

搜题软件一般都是通过识别题目内容搜索出问题的答案,当识别内容不正确或搜索不到答案时,又得重新到其他软件进行重复的操作,很是麻烦。所以我们可以使用专业的识别工具,对题目内容进行识别,然后把提取出来的内容单独保…

AI绘画教程分享:Stable Diffusion使用指南,12000+AI关键词大合集

01 首先下载好SD的安装包(百度、B站、小红书等都可以找到资源),用启动器开始运行 02 从这里下载别人的模型套用,可以多多探索一下!以下是各个模型的具体介绍: 03 这就是我们打开的初始界面,常…

如何给 MySQL 表和列授予权限?(官方版)

目录 授予表级别权限 授予列级别权限 如何给MySQL表和列授予权限是MySQL数据操作中非常重要的步骤,也是企业级使用MySQL数据库的起步点,以下分别参照官方教程整理的MySQL数据库的权限操作。 以下的语句可以直接使用MySQL的命令行进行操作(如何…

问题:西周后期形成了能够传布四方、留存后世的兵书——著述年代最早的兵书——( )和( ). #媒体#知识分享

问题:西周后期形成了能够传布四方、留存后世的兵书——著述年代最早的兵书——( )和( ). A、《军志》 B、《军事》 C、《军政》 D、《孙子兵法》 参考答案如图所示

党史馆3d网上展馆

在数字化浪潮的推动下,华锐视点运用实时互动三维引擎技术,为用户带来前所未有的场景搭建体验。那就是领先于同行业的线上三维云展编辑平台搭建编辑器,具有零基础、低门槛、低成本等特点,让您轻松在数字化世界中搭建真实世界的仿真…

MTK联发科MT6897(天玑8300)5G智能移动处理器规格参数

天玑 8300 采用台积电第二代 4nm 制程,基于 Armv9 CPU 架构,八核 CPU 包含 4 个 Cortex-A715 性能核心和 4 个 Cortex-A510 能效核心,CPU 峰值性能较上一代提升 20%,功耗节省 30%。 此外,天玑 8300 搭载 6 核 GPU Mal…

Chrome 源码阅读:跟踪一个鼠标事件的流程

我们通过在关键节点打断点的方式,去分析一个鼠标事件的流程。 我们知道chromium是多进程模型,那么,我们可以推测:一个鼠标消息先从主进程产生,再通过跨进程通信发送给渲染进程,渲染进程再发送给WebFrame&a…

vcruntime140.dll干嘛的?丢失了vcruntime140.dll要咋办?

vcruntime140.dll干嘛的?vcruntime140.dll就是一个dll文件,它对于很多程序都是有用的,如果没有了它,那么你的有些程序是打不开的!所以当你丢失的时候,你就要想办法去修复vcruntime140.dll文件,假…

企业必备技能导航栏的写法

创建一个导航栏是网页设计中的一个重要环节,它不仅有助于用户快速找到他们需要的信息,还能提升整个网站的用户体验。以下是一些基本步骤和技巧,可以帮助你快速制作一个高效且美观的导航栏: 确定导航栏位置:导航栏通常位…

各平台对象存储

一、阿里云对象存储 官方文档:https://help.aliyun.com/zh/oss/getting-started/getting-started-with-oss?spma2c4g.11186623.0.0.299a646c6nWWcW 1.引入maven 官网:https://help.aliyun.com/zh/oss/developer-reference/java-installation?spma2c…

STM32项目分享:智能门禁锁系统

目录 一、前言 二、项目简介 1.功能详解 2.主要器件 三、原理图设计 四、PCB硬件设计 1.PCB图 2.PCB板及元器件图 五、程序设计 六、实验效果 七、资料内容 项目分享 一、前言 项目成品图片: 哔哩哔哩视频链接: https://www.bilibili.c…

三维点云拟合平面推导及源代码C++

1、背景介绍 实际中,很多人工构造物是由平面结构构造而成,如下图所示,为一典型的由多个平面组成的人工构筑物。因此,根据离散点拟合成平面,获取拟合平面方程,是点云数据处理中非常常见的数据处理操作。 2、平面拟合参数推导 基于若离散点,估算平面方程过程如下: 3、程序…

刷代码随想录有感(95):合并区间

题干&#xff1a; 代码&#xff1a; class Solution { public:static bool cmp(vector<int>& a, vector<int>& b){return a[0] < b[0];}vector<vector<int>> merge(vector<vector<int>>& intervals) {sort(intervals.begi…

怎么将3d的模型同比例缩放?---模大狮模型网

在展览3d模型设计过程中&#xff0c;经常需要对3d模型进行缩放以满足不同的需求。然而&#xff0c;有时候缩放操作可能会导致模型失去比例&#xff0c;造成不必要的麻烦。模大狮将介绍如何将展览3D模型按比例缩放&#xff0c;帮助展览设计师们更好地掌握这一关键的模型设计技巧…

100V 15A TO-252 N沟道MOS管 HC070N10L 惠海

MOS管的工作原理是基于在P型半导体与N型半导体之间形成的PN结&#xff0c;通过改变栅极电压来调整沟道内载流子的数量&#xff0c;从而改变沟道电阻和源极与漏极之间的电流大小。由于MOS管具有输入电阻高、噪声小、功耗低等优点&#xff0c;它们在大规模和超大规模集成电路中得…