配置Sidecar和Init Container

为应用配置Sidecar容器可以帮助您运行辅助服务,例如日志收集、配置更新、网络代理。此外,您还可以配置Init Container,帮助您执行一些应用容器启动前的准备工作,例如设置配置文件、下载应用依赖、等待其他服务就绪或迁移数据库。本文介绍如何在创建应用时配置Sidecar和Init Container。

相关概念

  • Sidecar Containers

    Sidecar容器与应用容器协同工作,通常为应用容器提供日志收集和流量劫持等能力。Sidecar容器与应用容器共享存储和网络资源,便于与应用容器直接通信。

  • Init Container

    Init容器是一组特殊的容器,多个Init容器按顺序执行。仅当Init容器均运行成功时,应用容器才会启动。Init容器可以为应用容器提供前置准备资源或执行特殊脚本。更多信息,请参见Init Containers

操作步骤

  1. 登录EDAS控制台

  2. 在左侧导航栏,单击应用管理 > 应用列表,在顶部菜单栏选择地域,并在页面上方选择微服务空间。

  3. 应用列表页面左上角,单击创建应用

  4. 应用基本信息页签,完成相关配置后,单击下一步

  5. 应用配置页签,设置应用的环境信息、基本信息、部署方式和资源参数,设置完成后单击下一步

  6. 应用高级设置页签展开Sidecar & InitContainer配置,并根据您的业务需求配置,然后在页面最下方单击下一步

    配置项

    描述

    Sidecar Container

    单个输入框只能配置一个容器。如需配置多个容器,请单击+添加Sidecar Containers

    • 示例一:为应用容器挂载Sidecar容器,提供busybox工具箱。

      name: busybox
      image: busybox:latest
      command: ["tail","-f" ,"/dev/null"]
    • 示例二:为应用容器挂载Sidecar容器,实现Logtail日志采集。更多信息,请参见通过Sidecar-CRD方式采集容器文本日志

    Init Container

    单个输入框只能配置一个容器。如需配置多个容器,请单击+添加Init Container

    示例:在应用容器启动前,Sleep 60秒的Init容器配置。

    name: busybox
    image: busybox:latest
    command: ["sleep", "60"]

  7. 完成设置后单击创建应用,然后在应用创建完成页签,单击确定创建应用

  8. 应用变更预检确认对话框,单击开始预检

    1. 应用变更预检确认的下一页,确认预检项和预检结果,单击继续

    2. 可选:如您有更改以上预检项,请单击重新检测

    应用创建可能需要几分钟,创建过程中,可以通过查看变更记录跟踪应用的创建流程。创建完成后,返回应用总览页面,查看实例Pod的运行状态。若运行状态运行中,说明应用发布成功。单击Pod的运行状态可以查看应用实例的工作负载(Deployment)容器组(Pod)和高级配置信息。

相关文档

关于创建或部署应用过程中的其他配置项,请参见使用默认应用来源创建K8s应用