在项目级别安装 Istio
Installing Istio on a project-level
是否可以在项目级别安装 Istio?我看到的每个 Istio 安装指南都是集群范围的。但是由于我公司的多个部门共享同一个集群,所以这不是一种选择。
如果您的项目有自己的命名空间,这是可能的。您只需为该命名空间启用 istio:
kind: Namespace
apiVersion: v1
metadata:
name: yourapp
labels:
app: yourapp
istio-injection: enabled
Istio 安装在一个命名空间中,但不一定适用于所有集群。实际上,Istio 仅适用于那些注入了 Istio sidecar 的工作负载。
例如,以下命令将创建一些将注入 Istio Sidecar 的部署(因此,pods)。这些 pods 将启用整个 Istio 功能。
kubectl apply -f <(./bin/istioctl kube-inject -f samples/bookinfo/platform/kube/bookinfo.yaml) -n bookinfo
但是,以下命令不会注入 Istio sidecar,因此 Istio 控制平面不会修改它们的行为。
kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yaml -n bookinfo
为了管理 incoming/outgoing 到 istio 服务网格的流量,您可以创建 Istio 网关(网格边缘):https://istio.io/docs/reference/config/networking/v1alpha3/gateway/
同样与流量入口相关,Istio 有自己的 istio-ingressgateway(类似于 K8S 入口资源,但没有应用任何默认流量规则):
https://istio.io/docs/tasks/traffic-management/ingress/
其余未通过这些方式的流量将不会成为 Istio 服务网格管理的流量的一部分。
为了对此进行测试,您可以轻松安装默认的 Istio 演示 bookinfo
,无需 sidecar(上面的第二个命令),并查看没有注册遥测数据和跟踪数据。如果您使用的是 Kiali (www.kiali.io),您将看到服务图表显示为空且断开连接(意味着没有注册遥测)。
此外,您可以公开 bookinfo 的任何服务并在没有任何 Istio 交互的情况下使用它们:
是否可以在项目级别安装 Istio?我看到的每个 Istio 安装指南都是集群范围的。但是由于我公司的多个部门共享同一个集群,所以这不是一种选择。
如果您的项目有自己的命名空间,这是可能的。您只需为该命名空间启用 istio:
kind: Namespace
apiVersion: v1
metadata:
name: yourapp
labels:
app: yourapp
istio-injection: enabled
Istio 安装在一个命名空间中,但不一定适用于所有集群。实际上,Istio 仅适用于那些注入了 Istio sidecar 的工作负载。
例如,以下命令将创建一些将注入 Istio Sidecar 的部署(因此,pods)。这些 pods 将启用整个 Istio 功能。
kubectl apply -f <(./bin/istioctl kube-inject -f samples/bookinfo/platform/kube/bookinfo.yaml) -n bookinfo
但是,以下命令不会注入 Istio sidecar,因此 Istio 控制平面不会修改它们的行为。
kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yaml -n bookinfo
为了管理 incoming/outgoing 到 istio 服务网格的流量,您可以创建 Istio 网关(网格边缘):https://istio.io/docs/reference/config/networking/v1alpha3/gateway/
同样与流量入口相关,Istio 有自己的 istio-ingressgateway(类似于 K8S 入口资源,但没有应用任何默认流量规则): https://istio.io/docs/tasks/traffic-management/ingress/
其余未通过这些方式的流量将不会成为 Istio 服务网格管理的流量的一部分。
为了对此进行测试,您可以轻松安装默认的 Istio 演示 bookinfo
,无需 sidecar(上面的第二个命令),并查看没有注册遥测数据和跟踪数据。如果您使用的是 Kiali (www.kiali.io),您将看到服务图表显示为空且断开连接(意味着没有注册遥测)。
此外,您可以公开 bookinfo 的任何服务并在没有任何 Istio 交互的情况下使用它们: