当用户创建ECI Pod(ECI实例)时,需要指定待绑定的安全组信息,使得ECI实例的出向和入向流量得到控制。
背景信息
安全组是一种网络安全防护机制,用于防止未经授权的访问和保护计算机网络免受恶意攻击。它是一种虚拟防火墙,用于限制入向和出向网络流量。安全组工作在网络层和传输层,它通过检查数据包的源地址、目标地址、协议类型和端口号等信息来决定是否允许通过。安全组创建后,用户可以在安全组中定义各种访问规则,当ECI实例绑定安全组后,即受到这些访问规则的保护。
前提条件
确保您已经创建Serverless集群,具体操作请参阅创建Serverless集群。
确保kubectl工具已经连接目标集群。
操作步骤
在pod的annotations中添加注解:k8s.ctyun.cn/eci-security-group,并指定需要使用的安全组。通过kubectl客户端创建nginx.yaml。
apiVersion: "apps/v1"
kind: "Deployment"
metadata:
name: "nginx-sg"
namespace: "default"
spec:
replicas: 1
selector:
matchLabels:
name: "nginx-sg"
template:
metadata:
annotations:
k8s.ctyun.cn/eci-security-group: sg-w9f6mehmq0
labels:
name: "nginx-sg"
spec:
containers:
- image: "registry-huadong1.crs-internal.ctyun.cn/open-source/nginx:1.26-alpine-slim"
imagePullPolicy: "IfNotPresent"
name: "nginx"
resources:
limits:
cpu: "1"
memory: 1Gi
创建pod:
kubectl create -f nginx.yaml
在ECI控制台可以看到ECI实例开通成功,并且使用的是指定的安全组: