跳至主要内容

运行 Bitdefender 安全容器 于AWS ECS

要运行 Bitdefender 安全容器 实例于AWS ECS,需执行以下操作:

  1. 创建Amazon ECS任务定义

  2. 运行先前创建的任务

前提条件

  • 您必须在 Amazon Elastic Container Service控制台 中已创建ECS集群。在 基础设施 部分的 集群 > 创建集群 页面:

    • 选择 Fargate与自管理实例 .

      create-cluster_cpo_258895_en.png

      重要提示

      Bitdefender 安全容器 无法部署在仅使用Fargate的ECS集群上。

    • 选择至少提供2个vCPU和6 GiB内存的 EC2实例类型

  • 通过以下步骤获取 BSC_SERVER , BSC_CSRTOKENBSC_COMPANY 变量的必要值:

    1. GravityZone 控制中心 ,前往 网络 > 安装包 .

    2. 选择一个已启用 容器保护 模块的安装包。

      98834_1.png
    3. 点击 下载 并选择 安全容器 .

      98834_2.png

      这将打开 下载 安全容器 界面。

      98834_3.png
    4. 请记录脚本中提供的 --server , --company--csrtoken 参数值。这些参数对应 BSC_SERVER , BSC_COMPANYBSC_CSRTOKEN 这些变量稍后需要用到。

创建Amazon ECS任务定义

请按照以下步骤创建所需的Amazon ECS任务定义:

  1. 在Amazon Elastic Container Service控制台中,从左侧菜单中选择 任务定义

  2. 创建新任务定义 下拉菜单中,选择 使用JSON创建新任务定义 .

    您将被重定向至 创建新任务定义 页面。

  3. 在JSON编辑框中删除默认JSON内容。

  4. 复制下方JSON并粘贴到JSON编辑框中。

    {
        "containerDefinitions": [{
                "environment": [{
                        "name": "BSC_LOGLEVEL",
                        "value": "<日志级别>"
                    }, {
                        "name": "BSC_COMPANY",
                        "value": "<客户公司>"
                    }, {
                        "name": "BSC_SERVER",
                        "value": "<客户ECS>"
                    }, {
                        "name": "BSC_CSRTOKEN",
                        "value": "<客户CST令牌>"
                    }, {
                        "name": "BSC_GID",
                        "value": "<GID>"
                    }
                ],
                "essential": true,
                "image": "docker.io/bdfbusiness/bitdefender-security-container:7.0",
                "memory": 4096,
                "mountPoints": [{
                        "containerPath": "/mnt/host-proc",
                        "readOnly": false,
                        "sourceVolume": "proc"
                    }, {
                        "containerPath": "/mnt/host-sys",
                        "readOnly": false,
                        "sourceVolume": "sys"
                    }, {
                        "containerPath": "/mnt/host-os-release",
                        "readOnly": false,
                        "sourceVolume": "os-release"
                    }, {
                        "containerPath": "/mnt/host",
                        "readOnly": false,
                        "sourceVolume": "root"
                    }, {
                        "containerPath": "/data",
                        "readOnly": false,
                        "sourceVolume": "data"
                    }
                ],
                "name": "bitdefender-security-container",
                "portMappings": [],
                "privileged": true,
                "systemControls": [],
                "volumesFrom": []
            }
        ],
        "enableFaultInjection": false,
        "executionRoleArn": "arn:aws:iam::<账户ID>:role/ecsTaskExecutionRole",
        "family": "<客户BSC任务定义>",
        "networkMode": "host",
        "pidMode": "host",
        "placementConstraints": [],
        "requiresCompatibilities": [
            "EC2"
        ],
        "taskRoleArn": "arn:aws:iam::<账户ID>:role/ecsTaskExecutionRole",
        "volumes": [{
                "host": {
                    "sourcePath": "/proc"
                },
                "name": "proc"
            }, {
                "host": {
                    "sourcePath": "/sys"
                },
                "name": "sys"
            }, {
                "host": {
                    "sourcePath": "/etc/os-release"
                },
                "name": "os-release"
            }, {
                "host": {
                    "sourcePath": "/"
                },
                "name": "root"
            }, {
                "host": {
                    "sourcePath": "/mnt/data"
                },
                "name": "data"
            }
        ]
    }
  5. 将JSON中的 <日志级别> 占位符替换为将在 /log/level/bdsecd.json .

    重要提示

    • 日志级别仅允许以下取值: 信息 , 调试追踪 .

    • 此参数为可选。若无需使用,请从JSON中删除完整的名称-值条目。

  6. 将JSON中的 <customer_company> , <customer_cst_token><customer_ecs> 占位符替换为先前获取的 BSC_COMPANY , BSC_CSRTOKENBSC_SERVER 变量值。

  7. 将JSON中的 <gid> 占位符替换为产品服务将运行的群组ID。

    重要提示

    • 此参数为可选。若无需使用,请从JSON中删除完整的名称-值条目。

    • 群组ID必须未被使用过,且数值范围需大于999并小于等于60000。

  8. 将JSON中的 <ACCOUNT_ID> 占位符替换为亚马逊弹性容器服务控制台右上角显示的 账户ID

  9. 将JSON中的 <customer_bsc_task_definition> 占位符替换为任务定义的描述性名称。

  10. 此任务定义JSON使用最新版本的 Bitdefender 安全容器 。如需运行旧版本,请修改 镜像 字段中的版本号。

  11. 点击 创建 .

    若JSON通过验证,新任务定义将显示在 任务定义 页面。

运行Amazon ECS任务

运行已创建任务的步骤:

  1. 在Amazon Elastic Container Service控制台中,从左侧菜单选择 集群

  2. 点击之前创建的集群名称。

  3. 选择 任务 标签页。

  4. 点击 运行新任务 .

  5. 任务详情 部分的 任务定义族 下,选择之前创建的任务定义。

  6. 环境 部分的 计算配置 > 计算选项 ,选择 启动类型 .

  7. 选择 EC2 启动类型。

  8. 点击 创建 .

Bitdefender 安全容器 将在ECS集群上运行。