参考概述▸ ,使用AutoMQ Cloud 需要先安装环境。本文介绍如何直接在阿里云云市场,使用云市场商品一键创建 BYOC 环境。 如您已经了解在阿里云云市场安装 AutoMQ 的各项条件以及操作步骤,可点击 云市场安装 AutoMQ
本文中提及 AutoMQ 产品服务方、AutoMQ 服务方、AutoMQ,均特指安托盟丘(杭州)科技有限公司。

前置条件

条件一:依赖云产品开通

在阿里云上创建 BYOC 环境,需要用户的阿里云账号提前开通如下云产品,否则将无法使用。
  1. 弹性计算 ECS,AutoMQ Kafka 使用弹性计算 ECS 部署计算节点。
  2. 对象存储 OSS,AutoMQ Kafka 使用对象存储 OSS 存储数据。
  3. PrivateZone,AutoMQ Kafka 使用 PrivateZone 提供 Kafka 集群的接入点域名解析。

条件二:云账号操作权限

创建 BYOC 环境,需要操作的云账号为主账号或者是已经被授权相关操作权限的 RAM 子账号。如果当前操作阿里云控制台使用了 RAM 子账号,需要参考阿里云计算巢 RAM 授权文档先授权,再进行服务开通操作。 相关的授权策略和云产品列表分两部分:

授权内容 1:访问计算巢产品权限:

RAM 子账号访问阿里云计算巢产品,需要授予如下列表的系统权限。
  • AliyunMarketplaceFullAccess:访问阿里云云市场产品权限。
  • AliyunComputeNestUserFullAccess:管理使用阿里云计算巢产品的权限。
  • AliyunVPCReadOnlyAccess:读取专有网络(VPC)的权限。
  • AliyunOSSReadOnlyAccess:读取对象存储服务(OSS)的权限。
  • AliyunROSFullAccess:管理资源编排服务(ROS)的权限。
  • AliyunCloudMonitorFullAccess:管理云监控(CloudMonitor)的权限。

授权内容 2:安装 AutoMQ 所需权限:

使用计算巢安装部署 AutoMQ ,还需要授予自定义权限策略。权限策略文件参考下方:

{
    "Statement": [
        {
            "Action": [
                "ecs:AddTags",
                "ecs:AllocatePublicIpAddress",
                "ecs:AttachKeyPair",
                "ecs:AuthorizeSecurityGroup",
                "ecs:AuthorizeSecurityGroupEgress",
                "ecs:ConfigureSecurityGroupPermissions",
                "ecs:CreateSecurityGroup",
                "ecs:DeleteInstance",
                "ecs:DeleteSecurityGroup",
                "ecs:DescribeAvailableResource",
                "ecs:DescribeDedicatedHosts",
                "ecs:DescribeDisks",
                "ecs:DescribeImageSupportInstanceTypes",
                "ecs:DescribeImages",
                "ecs:DescribeInstanceAutoRenewAttribute",
                "ecs:DescribeInstanceRamRole",
                "ecs:DescribeInstances",
                "ecs:DescribeKeyPairs",
                "ecs:DescribeNetworkInterfaces",
                "ecs:DescribePrice",
                "ecs:DescribeSecurityGroupAttribute",
                "ecs:DescribeSecurityGroups",
                "ecs:DescribeSnapshots",
                "ecs:DescribeUserData",
                "ecs:DetachKeyPair",
                "ecs:JoinResourceGroup",
                "ecs:ModifyDiskSpec",
                "ecs:ModifyInstanceAttribute",
                "ecs:ModifySecurityGroupEgressRule",
                "ecs:ModifySecurityGroupRule",
                "ecs:RemoveTags",
                "ecs:ReplaceSystemDisk",
                "ecs:ResizeDisk",
                "ecs:RunInstances",
                "ecs:StartInstance",
                "ecs:StopInstance",
                "ecs:TagResources",
                "ecs:UntagResources"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "pvtz:AddZone",
                "pvtz:BindZoneVpc",
                "pvtz:DeleteZone",
                "pvtz:DescribeZoneInfo",
                "pvtz:SetProxyPattern",
                "pvtz:TagResources",
                "pvtz:UntagResources",
                "pvtz:UpdateZoneRemark"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": "quotas:ListProductQuotas",
            "Effect": "Allow",
            "Resource": "acs:quotas:*:*:*"
        },
        {
            "Action": [
                "ram:AttachPolicyToRole",
                "ram:CreatePolicy",
                "ram:CreateRole",
                "ram:DeletePolicy",
                "ram:DeleteRole",
                "ram:DetachPolicyFromRole",
                "ram:GetPolicy",
                "ram:GetRole",
                "ram:ListPoliciesForRole",
                "ram:UpdateRole",
                "ram:PassRole"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": "rds:DescribeDBInstances",
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": "slb:DescribeLoadBalancers",
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "tag:TagResources",
                "tag:UntagResources"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "vpc:AssociateVpcCidrBlock",
                "vpc:CreateVSwitch",
                "vpc:CreateVpc",
                "vpc:DeleteVSwitch",
                "vpc:DeleteVpc",
                "vpc:DescribeVSwitches",
                "vpc:DescribeVpcs",
                "vpc:DescribeVpnGateways",
                "vpc:DescribeZones",
                "vpc:ModifyVSwitchAttribute",
                "vpc:ModifyVpcAttribute",
                "vpc:TagResources",
                "vpc:UnTagResources"
            ],
            "Effect": "Allow",
            "Resource": "*"
        },
        {
            "Action": [
                "ros:CreateStack",
                "ros:GetStack"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ],
    "Version": "1"
}

操作流程

AutoMQ Cloud 目前已经入驻 阿里云云市场》基础软件》应用开发类目 ,并通过阿里云计算巢服务提供 BYOC 私有化部署。
当前支持在阿里云以下地域:华北 1(青岛)、华北2(北京)、华北3(张家口)、华东1(杭州)、华东2(上海)、华南1(深圳)、华南3(广州)、中国香港、新加坡、美国(硅谷)、美国(弗吉尼亚)、欧洲中部(法兰克福)创建 BYOC 环境。
  1. 前往云市场搜索 AutoMQ,找到AutoMQ for Kafka(BYOC 版)商品,或者直接访问该服务链接进入服务详情页。
  1. 点击正式创建 ,填写相关的信息即可免费开通订阅。此时,阿里云计算巢服务创建一个 AutoMQ BYOC 版环境控制台。
注意:每次开通订阅都会部署一个环境控制台,部署环境控制台时 AutoMQ 并不会进行计费,但环境控制台本身的运行需要消耗一台 ECS 机器。参考术语▸ ,一般仅建议在不同的网络以及不同的业务部门归属情况下才需要创建新的环境控制台。每个环境内部可以创建并管理多个 Kafka 实例(集群)。关于环境的详细概念参考概述▸
  1. 开通订阅后,底层计算巢服务开始部署环境控制台,用户可前往 服务实例》我的服务实例》私有部署服务 查看,找到先前开通步数的实例 ID,并进入服务实例详情页获取控制台访问地址和初始密码。
注意:创建环境时,默认推荐通过公网 IP 地址访问环境控制台,如果用户办公网络已经和阿里云 VPC 建立专线互通,则可以选择私网访问方式。用户也可以为 AutoMQ Cloud BYOC 控制台添加域名解析。
  1. 使用初始用户名密码登录。 首次访问 AutoMQ 环境控制台时,需要输入初始用户名和密码,并立即修改为自定义密码。初始用户名是 admin,初始密码是环境控制台所在的 ECS 实例 ID。
  1. 完成 BYOC 环境运维授权。 BYOC 环境部署在用户 VPC,具备数据安全和隐私隔离的效果,但 BYOC 环境内部会产生系统日志、Metrics 等业务无关的系统数据。环境安装完成后,用户需要参考概述▸对 AutoMQ 服务方提供相应的运维授权,方便 AutoMQ 服务方进行系统稳定性监控和故障自愈等运维操作。

后续步骤

环境安装完成后,可以体验后续流程:
  • 体验 AutoMQ for Kafka 服务: 完成环境创建后,即可进入环境控制台创建实例,并体验产品功能。体验 AutoMQ▸