如果您在创建应用时指定了多个容器,EDAS仅会将数据卷挂载至应用主容器中。对于Sidecar或InitContainer容器,需通过VolumeMounts将需要挂载的目录挂载至Sidecar容器或初始化容器中。本文介绍如何在创建或部署应用时,通过配置自定义Volumes为Sidecar容器挂载数据卷。
背景信息
EDAS目前已经支持通过为应用容器挂载持久化存储、本地存储或配置挂载的方式,为K8s应用Pod配置Volumes。但这三种方式的配置仅会被挂载至应用主容器中,如果当前应用在创建或部署时指定了多个容器,需要配置自定义Volumes。流程如下:
定义Pod需要使用的Volumes。
进行Sidecar或InitContainer多容器配置时,通过VolumeMounts将需要挂载的目录挂载至Sidecar容器或初始化容器中。
使用限制
仅支持K8s应用。
创建挂载资源
根据具体业务创建需要挂载的资源,例如:配置项、保密字典或持久化存储卷声明。具体操作,请参见:
为Sidecar容器挂载数据卷
登录EDAS控制台,在左侧导航栏,单击 ,在顶部菜单栏选择所属微服务空间,然后在应用列表页面左上角,单击创建应用。
在应用基本信息页签,完成相关配置后,单击下一步。
在应用配置页签,设置应用的环境信息、基本信息、部署方式和资源参数,设置完成后单击下一步。
在应用高级设置页签展开自定义Volumes配置,填入以下代码定义Volumes。
volumes: - name: test-emptydir-vol emptyDir: {} - name: test-secret-vol secret: defaultMode: 420 secretName: test-secret - name: test-configmap-vol configMap: defaultMode: 420 name: test-configmap - name: test-pvc-vol persistentVolumeClaim: claimName: test-pvc
test-secret
:创建的保密字典名称,需根据实际情况替换。test-configmap
:创建的配置项名称,需根据实际情况替换。test-pvc
:创建的持久化存储卷声明名称,需根据实际情况替换。
在应用高级设置页签展开Sidecar & InitContainer配置,单击+添加Sidecar Container,在Sidecars容器配置中定义挂载VolumeMounts,然后在页面最下方单击下一步。
name: busybox image: busybox:latest command: ["tail","-f" ,"/dev/null"] volumeMounts: - name: test-emptydir-vol mountPath: /tmp/emptydir - name: test-secret-vol mountPath: /tmp/secret - name: test-configmap-vol mountPath: /tmp/configmap - name: test-pvc-vol mountPath: /tmp/pvc
完成设置后单击创建应用,然后在应用创建完成页签,单击确定创建应用。
在应用变更预检确认对话框,单击开始预检。
在应用变更预检确认的下一页,确认预检项和预检结果,单击继续。
可选:如您有更改以上预检项,请单击重新检测。
应用创建可能需要几分钟,创建过程中,可以通过查看变更记录跟踪应用的创建流程。创建完成后,返回应用总览页面,查看实例Pod的运行状态。若运行状态为运行中,说明应用发布成功。单击Pod的运行状态可以查看应用实例的工作负载(Deployment)、容器组(Pod)和高级配置信息。
在该应用的应用总览页面的基本信息区域,单击运行状态右侧的点击查看。
在应用配置详情面板,单击容器组(Pod)区域操作列的终端连接Sidecar容器,执行以下命令,查看目录挂载情况。
cd /tmp ls -lah
存在目录表明已挂载成功。
- 本页导读 (1)
- 背景信息
- 使用限制
- 创建挂载资源
- 为Sidecar容器挂载数据卷