Istio零信任安全架构设计

这篇具有很好参考价值的文章主要介绍了Istio零信任安全架构设计。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

主要分为几个模块

  1. 安装
  2. 安全概念
  3. 整体安全架构
  4. 源码

1.安装istio (windows环境)

  1. windows安装Rancher的步骤 : https://docs.rancherdesktop.io/getting-started/installation,

    docker desktop开始面向中大型企业收费: https://baijiahao.baidu.com/s?id=1709665495660071676&wfr=spider&for=pc

    rancher desktop是一个开源项目 :

    官网:https://rancherdesktop.io/

    github代码: https://github.com/rancher-sandbox/rancher-desktop

  2. 下载window版本的istio:istio-1.12.6-win.zip

  3. 解压后进入安装istio的bin目录下

  4. 验证istio的版本

$ ./istioctl.exe version
client version: 1.12.6
control plane version: 1.12.6
data plane version: 1.12.6 (2 proxies)
  1. 执行安装命令
$ ./istioctl.exe manifest apply --set profile=demo
 This will install the Istio 1.12.6 demo profile with ["Istio core" "Istiod" "Ingress gateways" "Egress gateways"] components into the cluster. Proceed? (y/N) y
 ✔ Istio core installed
 ✔ Istiod installed
 ✔ Ingress gateways installed
 ✔ Egress gateways installed
 ✔ Installation complete                                                                                                                                                                                           
 Making this installation the default for injection and validation.

 Thank you for installing Istio 1.12.  Please take a few minutes to tell us about your install/upgrade experience!  https://forms.gle/FegQbc9UvePd4Z9z7
  1. 创建demo namespace
$ kubectl create ns demo
namespace/demo created
  1. 将Istio注入namespace
$ kubectl label namespace demo istio-injection=enabled
namespace/demo labeled
  1. 查看istio的pod

windows版本的没有安装kiali和prometheus, 猜测可能没有支持

$ kubectl get pods -n istio-system
NAME                                    READY   STATUS    RESTARTS   AGE
istiod-f97b6b446-jmwx8                  1/1     Running   0          17m
svclb-istio-ingressgateway-plw4t        0/5     Pending   0          16m  
istio-egressgateway-6976f7c4bb-xjgsn    1/1     Running   0          16m
istio-ingressgateway-678984b8f6-j7skh   1/1     Running   0          16m
  1. 验证istio是否安装成功 (验证成功了)
$ ./istioctl.exe verify-install -f ../manifests/profiles/demo.yaml
✔ Deployment: istio-ingressgateway.istio-system checked successfully
✔ PodDisruptionBudget: istio-ingressgateway.istio-system checked successfully
✔ Role: istio-ingressgateway-sds.istio-system checked successfully
✔ RoleBinding: istio-ingressgateway-sds.istio-system checked successfully
✔ Service: istio-ingressgateway.istio-system checked successfully
✔ ServiceAccount: istio-ingressgateway-service-account.istio-system checked successfully
✔ Deployment: istio-egressgateway.istio-system checked successfully
✔ PodDisruptionBudget: istio-egressgateway.istio-system checked successfully
✔ Role: istio-egressgateway-sds.istio-system checked successfully
✔ RoleBinding: istio-egressgateway-sds.istio-system checked successfully
✔ Service: istio-egressgateway.istio-system checked successfully
✔ ServiceAccount: istio-egressgateway-service-account.istio-system checked successfully
✔ ClusterRole: istiod-istio-system.istio-system checked successfully
✔ ClusterRole: istio-reader-istio-system.istio-system checked successfully
✔ ClusterRoleBinding: istio-reader-istio-system.istio-system checked successfully
✔ ClusterRoleBinding: istiod-istio-system.istio-system checked successfully
✔ ServiceAccount: istio-reader-service-account.istio-system checked successfully
✔ Role: istiod-istio-system.istio-system checked successfully
✔ RoleBinding: istiod-istio-system.istio-system checked successfully
✔ ServiceAccount: istiod-service-account.istio-system checked successfully
✔ CustomResourceDefinition: wasmplugins.extensions.istio.io.istio-system checked successfully
✔ CustomResourceDefinition: destinationrules.networking.istio.io.istio-system checked successfully
✔ CustomResourceDefinition: envoyfilters.networking.istio.io.istio-system checked successfully
✔ CustomResourceDefinition: gateways.networking.istio.io.istio-system checked successfully
✔ CustomResourceDefinition: serviceentries.networking.istio.io.istio-system checked successfully
✔ CustomResourceDefinition: sidecars.networking.istio.io.istio-system checked successfully
✔ CustomResourceDefinition: virtualservices.networking.istio.io.istio-system checked successfully
✔ CustomResourceDefinition: workloadentries.networking.istio.io.istio-system checked successfully
✔ CustomResourceDefinition: workloadgroups.networking.istio.io.istio-system checked successfully
✔ CustomResourceDefinition: authorizationpolicies.security.istio.io.istio-system checked successfully
✔ CustomResourceDefinition: peerauthentications.security.istio.io.istio-system checked successfully
✔ CustomResourceDefinition: requestauthentications.security.istio.io.istio-system checked successfully
✔ CustomResourceDefinition: telemetries.telemetry.istio.io.istio-system checked successfully
✔ CustomResourceDefinition: istiooperators.install.istio.io.istio-system checked successfully
✔ ClusterRole: istiod-clusterrole-istio-system.istio-system checked successfully
✔ ClusterRole: istiod-gateway-controller-istio-system.istio-system checked successfully
✔ ClusterRoleBinding: istiod-clusterrole-istio-system.istio-system checked successfully
✔ ClusterRoleBinding: istiod-gateway-controller-istio-system.istio-system checked successfully
✔ ConfigMap: istio.istio-system checked successfully
✔ Deployment: istiod.istio-system checked successfully
✔ ConfigMap: istio-sidecar-injector.istio-system checked successfully
✔ MutatingWebhookConfiguration: istio-sidecar-injector.istio-system checked successfully
✔ PodDisruptionBudget: istiod.istio-system checked successfully
✔ ClusterRole: istio-reader-clusterrole-istio-system.istio-system checked successfully
✔ ClusterRoleBinding: istio-reader-clusterrole-istio-system.istio-system checked successfully
✔ Role: istiod.istio-system checked successfully
✔ RoleBinding: istiod.istio-system checked successfully
✔ Service: istiod.istio-system checked successfully
✔ ServiceAccount: istiod.istio-system checked successfully
✔ EnvoyFilter: stats-filter-1.10.istio-system checked successfully
✔ EnvoyFilter: tcp-stats-filter-1.10.istio-system checked successfully
✔ EnvoyFilter: stats-filter-1.11.istio-system checked successfully
✔ EnvoyFilter: tcp-stats-filter-1.11.istio-system checked successfully
✔ EnvoyFilter: stats-filter-1.12.istio-system checked successfully
✔ EnvoyFilter: tcp-stats-filter-1.12.istio-system checked successfully
✔ ValidatingWebhookConfiguration: istio-validator-istio-system.istio-system checked successfully
✔ IstioOperator: .istio-system checked successfully
Checked 14 custom resource definitions
Checked 3 Istio Deployments
✔ Istio is installed and verified successfully
  1. 给命名空间添加标签,指示 Istio 在部署应用的时候,自动的注入 Envoy 边车代理
$ kubectl label namespace demo istio-injection=enabled
namespace/demo labeled
  1. 部署bookinfo服务 : https://istio.io/latest/docs/examples/bookinfo/
$ kubectl apply -f ../samples/bookinfo/platform/kube/bookinfo.yaml -n demo
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. 部署gateway
$ kubectl apply -f ../samples/bookinfo/networking/bookinfo-gateway.yaml -n demo
gateway.networking.istio.io/bookinfo-gateway created
virtualservice.networking.istio.io/bookinfo created
  1. 访问链接,验证是否安装成功

http://localhost/productpage

  1. 工具可以分析错误

问题1:

$ ./istioctl.exe analyze
Error [IST0101] (VirtualService default/bookinfo) Referenced host not found: "productpage"
Error [IST0145] (Gateway default/bookinfo-gateway) Conflict with gateways demo/bookinfo-gateway (workload selector istio=ingressgateway, port 80, hosts *).
Error: Analyzers found issues when analyzing namespace: default.
See https://istio.io/v1.12/docs/reference/config/analysis for more information about causes and resolutions.

错误码对应的原因:https://istio.io/v1.12/docs/reference/config/analysis/

删除重复的CRD:

k8s删除命令:https://blog.csdn.net/lanwp5302/article/details/87470389

$ kubectl get gateway --all-namespaces
NAMESPACE   NAME               AGE
demo        bookinfo-gateway   28m
default     bookinfo-gateway   15m

$ kubectl delete -f ../samples/bookinfo/networking/bookinfo-gateway.yaml -n demo
gateway.networking.istio.io "bookinfo-gateway" deleted
virtualservice.networking.istio.io "bookinfo" deleted

xc.lu@dst74844 MINGW64 /e/ChromeDownload/istio-1.12.6/bin
$ kubectl get gateway --all-namespaces
NAMESPACE   NAME               AGE
demo        bookinfo-gateway   31m

问题2:

$ ./istioctl.exe analyze -n demo
Warning [IST0140] (VirtualService demo/bookinfo) Subset in virtual service demo/productpage has no effect on ingress gateway demo/bookinfo requests

ingressgateway pending问题 :

https://stackoverflow.com/questions/60484080/the-external-ip-of-istio-ingress-gateway-stay-pending

关闭rancher网关 ?

  1. 开启mtls

如果需要启用双向 TLS,请执行以下命令:

$ kubectl apply -f samples/bookinfo/networking/destination-rule-all-mtls.yaml

等待几秒钟,等待目标规则生效,使用以下命令查看目标规则:

$ kubectl get destinationrules -o yaml
apiVersion: v1
items:
- apiVersion: networking.istio.io/v1beta1
  kind: DestinationRule
  metadata:
    annotations:
      kubectl.kubernetes.io/last-applied-configuration: |
        {"apiVersion":"networking.istio.io/v1alpha3","kind":"DestinationRule","metadata":{"annotations":{},"name":"productpage","namespace":"default"},"spec":{"host":"productpage","subsets":[{"labels":{"version":"v1"},"name":"v1"}],"trafficPolicy":{"tls":{"mode":"ISTIO_MUTUAL"}}}}
    creationTimestamp: "2022-05-03T11:59:40Z"
    generation: 1
    name: productpage
    namespace: default
    resourceVersion: "37818"
    uid: 117e2cc4-4f6f-4046-85cc-2db9c955056c
  spec:
    host: productpage
    subsets:
    - labels:
        version: v1
      name: v1
    trafficPolicy:
      tls:
        mode: ISTIO_MUTUAL  (这个代表mtls)
  1. 验证mtls

验证步骤参考:

  • https://ultimatesecurity.pro/post/istio-mtls/
  • https://zhuanlan.zhihu.com/p/290557288
  1. istio排障工具

    有哪些错误码:

    排障工具:

    https://istio.io/latest/docs/tasks/traffic-management/ingress/ingress-control/

    ./istioctl.exe analyze -n demo

    https://istio.io/latest/docs/setup/install/istioctl/

2.安全的概念

what is istio

Simplify observability, traffic management, security, and policy with the leading service mesh.

istio = 流量管理 + 可观测性 + 安全

https://istio.io/

零信任架构 (ZTA)

传统的网络安全架构
  • 基于边界的安全架构,企业构建网络安全体系时,首先寻找安全边界,把网络划分为外网、内网、DMZ( DeMilitarized Zone)区等不同的区域,然后在边界上部署防火墙、入侵检测、WAF等产品。有些还会设置ip白名单。

  • 这种网络安全架构假设或默认了内网比外网更安全,在某种程度上预设了对内网中的人、设备和系统的信任,忽视加强内网安全措施。不法分子一旦突破企业的边界安全防护进入内网,会像进入无人之境,将带来严重的后果。

  • 传统的认证,即信任、边界防护、静态访问控制、以网络为中心。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lWy7TWN1-1684323450669)(D:\Users\xc.lu\AppData\Roaming\Typora\typora-user-images\image-20220519192712017.png)]

Zero Trust Architecture

随着云计算、大数据、物联网等新技术与业务的深度融合,网络安全边界也逐渐变得更加模糊,传统边界安全防护理念面临巨大挑战。

零信任即信任度为零,“永远不信任,始终要验证”(Never Trust,Always Verify)。

  • 以身份为中心

不论用户、设备、应用和接口都需要具备唯一的“ID身份”,经过认证、授权后才能通行。就好比在军营出入要出示令牌证件。

  • 最低权限访问

只给用户所需要的最小访问权限。同上,在军营,为防止军机泄露,将军只会让普通士兵掌握最基础的信息。

  • 微隔离单独访问

安全边界被分割成小区域,不同网络部分保持单独访问。比如军营分成多个区域,A区域的士兵如果没有被单独授权,就无法进入其他营区。

ISTIO安全目标

常见安全需求:

  • 为了抵御中间人攻击,需要流量加密。
  • 为了提供灵活的服务访问控制,需要双向 TLS 和细粒度的访问策略。
  • 要确定谁在什么时候做了什么,需要审计工具。

Istio 安全功能提供强大的身份,强大的策略,透明的 TLS 加密,认证,授权和审计工具来保护你的服务和数据。Istio 安全的目标是:

  • 默认安全:应用程序代码和基础设施无需更改
  • 深度防御:与现有安全系统集成以提供多层防御
  • 零信任网络:在不受信任的网络上构建安全解决方案

istio & k8s

K8S

命名空间级别
指定命名空间内的所有(或部分)服务可以被另一命名空间的所有(或部分)服务所访问,需要用户创建ServiceRole、ServiceRoleBinding策略来实现此过程。

服务级别
指定服务可以被另一个服务访问,需要用户创建Service Account、ServiceRole、ServiceRoleBinding策略来实现此过程。

istio

Istio 是独立于平台的,可以与 Kubernetes(或基础设施)的网络策略一起使用。但它更强大,能够在网络和应用层面保护pod到 pod 或者服务到服务之间的通信。

Istio 的安全特性解放了开发人员,使其只需要专注于应用程序级别的安全。Istio 提供了底层的安全通信通道,并为大规模的服务通信管理认证、授权和加密。

CA

CA是Certificate Authority的英文首字母缩写,是证书颁发机构的意思,CA机构是专门负责发放和管理数字证书的权威机构。而CA认证就是为电子签名相关各方提供真实可靠验证的电子认证服务。

证书的内容包括:电子签证机关的信息、公钥用户信息、公钥、权威机构的签字和有效期等等。证书的格式和验证方法普遍遵循X.509 国际标准。

认证&授权

在开发或者管理一个应用程序的时候,我们往往会看到两个名词——认证授权,在英文中,这两个词语更为相近 —— authenticationauthorization。尽管这两个术语经常出现在相同的上下文中,但两者在概念上却有很大差别。
认证,意味着确认用户或使用者的身份,而授权,则意味着授予对系统的访问权限。简单来说,认证是验证用户身份的过程,而授权是验证用户有权访问的过程。

https://istio.io/latest/docs/tasks/security/

3.整体安全架构:

组件
  • Citadel:用于负责密钥和证书的管理,在创建服务时会将密钥及证书下发至对应的Envoy代理中;
  • Pilot:用于接收用户定义的安全策略并将其整理下发至服务旁的Envoy代理中;
  • Envoy:用于存储Citadel下发的密钥和证书,保障服务间的数据传输安全;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-G4Bbt14X-1684323452140)(null)]

Citadel认证授权过程
  • Kubernetes某集群节点新部署了服务A和服务B,此时集群中有两个Pod被启动,每个Pod由Envoy代理容器和Service容器构成,在启动过程中Istio的Citadel组件会将密钥及证书依次下发至每个Pod中的Envoy代理容器中,以保证后续服务A、B之间的安全通信。
  • 用户通过Rules API下发安全策略至Pilot组件,Pilot组件通过Pilot-discovery进程整理安全策略中Kubernetes服务注册和配置信息并以Envoy API方式暴露给Envoy。
  • Pod A、B中的Envoy代理会通过Envoy xDS API方式定时去Pilot拉取安全策略配置信息,并将信息保存至Envoy代理容器中。
  • 当服务A访问服务B时,会调用各自Envoy容器中的证书及密钥实现服务间的安全通信,同时Envoy容器还会根据用户下发的安全策略进行更细粒度的访问控制。

身份:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nIwVy4gB-1684323451735)(null)]

SDS :

Istio 供应身份是通过 secret discovery service(SDS)来实现的,具体流程如下:

  1. istiod 提供 gRPC 服务以接受证书签名请求(CSRs)。
  2. 当工作负载启动时,Envoy 通过秘密发现服务(SDS)API 向同容器内的 istio-agent 发送证书和密钥请求。
  3. 在收到 SDS 请求后,istio-agent 创建私钥和 CSR,然后将 CSR 及其凭据发送到 istiod CA 进行签名。
  4. istiod CA 验证 CSR 中携带的凭据,成功验证后签署 CSR 以生成证书。
  5. Istio-agent 通过 Envoy SDS API 将私钥和从 Istio CA 收到的证书发送给 Envoy。
  6. Istio-agent 会监工作负载证书的有效期。上述 CSR 过程会周期性地重复,以处理证书和密钥轮换。

mTLS (双向 TLS)

mTLS

当一个工作负载使用双向 TLS 认证向另一个工作负载发送请求时,该请求的处理方式如下:

  1. Istio 将出站流量从客户端重新路由到客户端的本地 sidecar Envoy。

  2. 客户端 Envoy 与服务器端 Envoy 开始双向 TLS 握手。在握手期间,客户端 Envoy 还做了安全命名检查,以验证服务器证书中显示的服务帐户是否被授权运行目标服务。

  3. 客户端 Envoy 和服务器端 Envoy 建立了一个双向的 TLS 连接,Istio 将流量从客户端 Envoy 转发到服务器端 Envoy。

  4. 授权后,服务器端 Envoy 通过本地 TCP 连接将流量转发到服务器服务。

宽容模式(permissive mode)

Istio 双向 TLS 具有一个宽容模式(permissive mode),即不需要授权和认证,允许 service 同时接受纯文本流量和双向 TLS 流量。该功能有利于测试,主要用于非Istio客户端和非 Istio 服务端间的通信,避免因权限而导致无法连接的情况。

举个实际场景,启用宽容模式后,服务同时接受纯文本和双向 TLS 流量。这个模式为入门提供了极大的灵活性。服务中安装的 Istio sidecar 立即接受双向 TLS 流量而不会打断现有的纯文本流量。因此,运维人员可以逐步安装和配置客户端 Istio sidecars 发送双向 TLS 流量。一旦客户端配置完成,运维人员便可以将服务端配置为仅 TLS 模式。

4.源码

SPIFFE

SPIFFE 是 Istio 所采用的安全命名的规范,它也是云原生定义的一种标准化的、可移植的工作负载身份规范。

SPIFFE ID 规定了形如 spiffe://<trust domain>/<workload identifier> 的 URI 格式,作为工作负载(Workload)的唯一标识。

Istio 使用形如 spiffe://<trust_domain>/ns/<namespace>/sa/<service_account> 格式的 SPIFFE ID 作为安全命名,注入到 X.509 证书的 subjectAltName 扩展中。其中“trust domain”参数通过 Istiod 环境变量 TRUST_DOMAIN 注入,用于在多集群环境中交互。

spiffe://cluster.local/ns/<pod namespace>/sa/<pod service account>
type Identity struct {
	TrustDomain    string
	Namespace      string
	ServiceAccount string
}
SDS(秘钥发现服务)

SDS 带来的最大的好处就是简化证书管理。要是没有该功能的话,我们就必须使用 Kubernetes 中的 secret 资源创建证书,然后把证书挂载到代理容器中。如果证书过期,还需要更新 secret 和需要重新部署代理容器。使用 SDS,中央 SDS 服务器将证书推送到所有 Envoy 实例上。如果证书过期,服务器只需将新证书推送到 Envoy 实例,Envoy 可以立即使用新证书而无需重新部署。

Istio零信任安全架构设计

SDS server 需要实现 SecretDiscoveryService 这个 gRPC 服务。遵循与其他 xDS 相同的协议。文章来源地址https://www.toymoban.com/news/detail-448377.html

启动流程:
cmd.go 
	func newDiscoveryCommand()
	
server.go 
	func NewServer(args *PilotArgs, initFuncs ...func(*Server))
	func (s *Server) initSecureDiscoveryService(args *PilotArgs)
	
ads.go
	func (s *DiscoveryServer) Stream(stream DiscoveryStream) error
	func (s *DiscoveryServer) processRequest(req *discovery.DiscoveryRequest, con *Connection) error
	func (s *DiscoveryServer) pushXds(con *Connection, push *model.PushContext,
	w *model.WatchedResource, req *model.PushRequest) error
	
sdsservice.go
	func (s *sdsservice) Generate(_ *model.Proxy, _ *model.PushContext, w *model.WatchedResource,
	updates *model.PushRequest)
	func (s *sdsservice) generate(resourceNames []string)
	
agent.go
	func (a *Agent) Run(ctx context.Context)

secretcache.go
	func (sc *SecretManagerClient) GenerateSecret(resourceName string) (secret *security.SecretItem, err error) 

参考文档

  1. https://cloudnative.to/blog/istio-zero-trust-source-code-reading/
  2. https://cloudnative.to/blog/istio-security-best-practices/
  3. https://ultimatesecurity.pro/post/istio-mtls/
  4. https://istio.io/latest/
  5. https://jimmysong.io/istio-handbook/
  6. http://www.voycn.com/article/istioxdsxieyijiexi

到了这里,关于Istio零信任安全架构设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在零信任架构下的API安全与滥用防护(下)

    在零信任架构下,防御API滥用的策略是构建强健安全防线的关键一环。策略的制定应基于对API攻击深层次的理解,以及对大量API相关数据的分析和利用,这些都是识别和预防API滥用的重要手段。 扩展对API攻击的理解 API安全不仅仅关注防止未授权的访问或数据泄露,更应当理

    2024年02月05日
    浏览(29)
  • 在零信任架构下的API安全与滥用防护(上)

    在当今数字化的浪潮中,应用程序编程接口(API)的战略重要性愈发凸显。API不仅仅是现代软件和互联网服务之间沟通的桥梁,更是企业价值创造的核心。随着API的快速发展和广泛应用,安全问题随之而来,其中API滥用尤为引人注目,它已经成为数字安全领域亟待解决的关键

    2024年02月03日
    浏览(28)
  • 构建安全架构的 Azure 云:深入了解零信任体系结构

    零信任正成为云安全的一种日益重要的模型,特别是在 Azure 云环境中。随着越来越多的企业迁移到云,确保安全的云环境已经成为当务之急。“零信任模型”正迅速成为实现这种安全性的主要方法。要在Azure云中实现零信任模型,需要仔细的规划和执行。本文将讨论 Azure Cl

    2024年02月10日
    浏览(78)
  • 漏洞扫描的原理是什么,分为几个阶段进行

    网络漏洞扫描主要通过扫描已知的网络缺陷、不正确的网络设置和过时的网络应用版本来检测漏洞。漏洞扫描主要分为哪三个阶段?对于企业来说,创建持续监控容器并查找安全漏洞的服务。 漏洞扫描的原理 一、信息收集 漏洞扫描器首先会收集目标系统的相关信息,包括网

    2024年01月21日
    浏览(29)
  • 智安网络|面临日益增长的安全威胁:云安全和零信任架构的重要性

    随着云计算技术的快速发展和广泛应用,云安全和零信任架构变得愈发重要。在数字化时代,云计算技术得到了广泛的应用和推广。企业和组织借助云服务提供商的强大能力,实现了高效、灵活和可扩展的IT基础设施。然而,随着云环境的快速发展,云安全问题日益突出,传

    2024年02月09日
    浏览(53)
  • 10个 Istio 流量管理 最常用的例子,你知道几个?

    10 个 Istio 流量管理 最常用的例子,强烈建议 收藏 起来,以备不时之需。 为了方便理解,以Istio官方提供的Bookinfo应用示例为例,引出 Istio 流量管理的常用例子。 Bookinfo应用的架构图如下: 其中,包含四个单独的微服务: productpage :调用 details 和 reviews 两个服务,用来生成

    2024年02月08日
    浏览(40)
  • 5个 Istio 访问外部服务流量控制最常用的例子,你知道几个?

    5 个 Istio 访问外部服务的流量控制常用例子,强烈建议 收藏 起来,以备不时之需。 部署 sleep 服务,作为发送请求的测试源: 在 Istio 外部,使用 Nginx 搭建 duckling 服务的v1和v2两个版本,访问时显示简单的文本: 执行如下命名访问外部服务 httpbin.org : 返回结果如下: 此时的

    2024年02月08日
    浏览(33)
  • IP归属地应用的几个主要特点

    作为一款优秀的IP地址定位工具,主题IP归属地的应用无疑是最好的选择之一。该应用可以将您需要查询的IP地址快速定位到所在的具体物理位置,并提供详细的地址和地图信息。接下来,让我们一起来看一看IP归属地应用的几个主要特点: 1. 快速查询IP地址归属地 主题IP归属

    2024年02月07日
    浏览(29)
  • 1.零信任网络结构介绍.2.零信任网络架构的好处.4.了解零信任网络架构的组成部分

    目录 1.零信任网络结构介绍 2.零信任网络架构的好处 3.零信任网络架构在网络安全方面的重要性

    2024年01月20日
    浏览(29)
  • 服务网格:Istio 架构

    服务网格(Service Mesh)这个术语通常用于描述构成这些应用程序的微服务网络以及应用之间的交互。随着规模和复杂性的增长,服务网格越来越难以理解和管理。 它的需求包括服务发现、负载均衡、故障恢复、指标收集和监控以及通常更加复杂的运维需求,例如A/B测试、金丝雀

    2024年02月11日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包