Istio对接虚拟机介绍

本文介绍了Istio如何与虚拟机进行对接,重点讲述了Istio 1.8版本的新特性,包括ServiceEntry资源和智能DNS代理,使得虚拟机能够融入Istio服务网格进行流量管理和监控。内容涵盖了K8s pod支持多容器、Istio流量管理、ServiceEntry的使用,以及虚拟机上运行Istio服务实现东西流量网关的功能。
摘要由CSDN通过智能技术生成

一、 K8s、Istio与虚拟机

    云计算和容器技术开启全新的系统架构和思维方式演进,k8s(Kubernetes)已经是当前容器编排领域实质上的王者。K8s管理一个高度可用的计算机(Linux系统)集群,所有的应用以容器的方式运行在k8s内部并被管理。对于一些老旧的应用来说,不进行架构层次的重构与改变,很难直接被k8s管理。

    随着微服务体系的发展,逐渐出现了服务网格(Service Mesh)的概念,它提供了一种透明的、与编程语言无关的方式,使网络配置、安全配置以及遥测等操作能够灵活而简便地实现自动化。Istio作为服务网格中的后起之秀,在市场和社区方面表现非常火爆。

    Istio 1.7 版本其中一项备受期待的扩展便是专注于将服务网格扩展到基于虚拟机的云环境。Istio 1.8 版本新增了 ServiceEntry 及 智能 DNS 代理,使得如虚拟机这样的非 Kubernetes 工作负载可以在 Istio 中成为像 Pod 一样的资源进行管理。

    下文所使用的的istio版本为v1.8,且以了解k8s与istio为基础进行阐述。

    istio与虚拟机的安装教程参见官方的单个网络网格中的虚拟机虚拟机安装

二、 Istio对接虚拟机基本原理

    Istio能够支持虚拟机上的服务,主要基于以下几点k8s和istio自身的特性:

1. K8s pod支持多个容器

    正常情况下,一个微服务(Deployment)可以具备多个实例(Pod),每个实例里运行一个容器(Docker Container),该容器即为业务应用程序。

    原生的k8s pod,支持运行多个容器。同一个pod内的所有容器,共享同一个网络,也可以通过配置使得多个容器共享同一块磁盘目录(可持久化也可临时内部目录)。

2. Istio流量管理

    Istio支持自动与手动配置两种方式来为实例注入边车(Sidecar)容器,即在实例中再添加一个容器,这个名为istio-proxy的容器是基于Envoy的代理容器,istio能够实现流量管理幕后主要运行的实体便是该代理容器。

    实际上istio为每个实例又多注入了一个初始化容器(initContainer),初始化容器通过istio-iptabl

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值