【产品功能】创建实例支持同时加入多个安全组

简介: 背景: 长期以来,创建ECS实例只支持同时加入一个安全组,但是某些友商支持多个安全组,这会增加混合云用户上云成本,比如基于Terraform的国际站用户想迁移到阿里云就要修改大量代码。为此ECS提供了创建实例同时加入多个安全组的功能,此功能一方面可以让上述用户最小成本使用阿里云,另外一方面也降低实例加入多个安全组的复杂度,可以方便的随实例创建同时加入多个安全组。

背景:

长期以来,创建ECS实例只支持同时加入一个安全组,但是某些友商支持多个安全组,这会增加混合云用户上云成本,比如基于Terraform的国际站用户想迁移到阿里云就要修改大量代码。为此ECS提供了创建实例同时加入多个安全组的功能,此功能一方面可以让上述用户最小成本使用阿里云,另外一方面也降低实例加入多个安全组的复杂度,可以方便的随实例创建同时加入多个安全组。

如何使用

1. RunInstances新增参数

名称 类型 是否必填 描述
SecurityGroupIds.N List<String> 传入多个随实例创建加入的安全组

2. ECS控制台

开发中,敬请期待

限制

  1. 批量的安全组必须属于同一个VPC,并且与vSwitch属于一个VPC。
  2. 不能既有普通组又有企业安全组。
  3. 多安全组功能不支持CLASSIC类型实例。
  4. SecurityGroupIds.N N的大小受安全组挡位控制
  5. 安全组内IP不能超过2000。
  6. 创建实例下单完成,实例支付生产前删除一个安全组,会生产失败退款。
  7. SecurityGroupId和SecurityGroupIds.N不能同时使用。

代码示例

#  coding=utf-8

# if the python sdk is not install using 'sudo pip install aliyun-python-sdk-ecs'
# if the python sdk is install using 'sudo pip install --upgrade aliyun-python-sdk-ecs'
# make sure the sdk version is 4.16.11, you can use command 'pip show aliyun-python-sdk-ecs' to check

import json
import logging

from aliyunsdkcore import client
from aliyunsdkecs.request.v20140526.RunInstancesRequest import RunInstancesRequest

# configuration the log output formatter, if you want to save the output to file,
# append ",filename='ecs_invoke.log'" after datefmt.

logging.basicConfig(level=logging.INFO,
                    format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
                    datefmt='%a, %d %b %Y %H:%M:%S')


# send open api request
def _send_request(request):
    request.set_accept_format('json')
    try:
        response_str = clt.do_action(request)
        logging.info(response_str)
        response_detail = json.loads(response_str)
        return response_detail
    except Exception as e:
        logging.error(e)


def run_instances(vSwitchId, securityGroupIds, instanceType, imageId, amount, systemDiskCategory, systemDiskSize):
    request = RunInstancesRequest()
    request.set_VSwitchId(vSwitchId)
    request.set_SecurityGroupIdss(securityGroupIds)
    request.set_InstanceType(instanceType)
    request.set_ImageId(imageId)
    request.set_Amount(amount)
    request.set_SystemDiskCategory(systemDiskCategory)
    request.set_SystemDiskSize(systemDiskSize)
    _send_request(request)


if __name__ == '__main__':
    clt = client.AcsClient('Your Access Key Id', 'Your Access Key Secrect', 'cn-shanghai')
    vSwitchId = "vsw-xxx"
    securityGroupIds = ["sg-xxx", "sg-xxx"]
    instanceType = "ecs.g5.large"
    imageId = "xxx"
    amount = "1"
    systemDiskCategory = "cloud_ssd"
    systemDiskSize = "40"
    run_instances(vSwitchId, securityGroupIds, instanceType, imageId, amount, systemDiskCategory, systemDiskSize)
相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
前端开发 JavaScript
基于React的简易在线图书管理系统设计与实现
基于React的简易在线图书管理系统设计与实现
471 1
|
SQL 前端开发 关系型数据库
LLM大模型实战 —— DB-GPT阿里云部署指南
DB-GPT 是一个实验性的开源应用,它基于FastChat,并使用vicuna-13b作为基础模型, 模型与数据全部本地化部署, 绝对保障数据的隐私安全。 同时此GPT项目可以直接本地部署连接到私有数据库, 进行私有数据处理, 目前已支持SQL生成、SQL诊断、数据库知识问答、数据处理等一系列的工作。
11439 75
项目经理进行竞品分析时可以参考的几个网站
项目经理进行竞品分析时可以参考的几个网站
|
XML 数据采集 存储
使用Java和XPath在XML文档中精准定位数据
在数据驱动的时代,从复杂结构中精确提取信息至关重要。XML被广泛用于数据存储与传输,而XPath则能高效地在这些文档中导航和提取数据。本文深入探讨如何使用Java和XPath精准定位XML文档中的数据,并通过小红书的实际案例进行分析。首先介绍了XML及其挑战,接着阐述了XPath的优势。然后,提出从大型XML文档中自动提取特定产品信息的需求,并通过代理IP技术、设置Cookie和User-Agent以及多线程技术来解决实际网络环境下的数据抓取问题。最后,提供了一个Java示例代码,演示如何集成这些技术以高效地从XML源中抓取数据。
534 7
使用Java和XPath在XML文档中精准定位数据
|
存储 Go
Go中make和new的区别
在 Go 语言中,`make` 和 `new` 都用于分配内存,但功能不同。`make` 用于初始化切片、映射和通道,并返回初始化后的对象;`new` 分配内存并返回指向零值的指针,适用于任何类型。`make` 返回的是数据结构本身,而 `new` 返回指针。`make` 完整初始化特定数据结构,`new` 只初始化为零值。
505 0
|
缓存 JavaScript 前端开发
对比一下Vue2和Vue3?
本文首发于微信公众号“前端徐徐”,详细对比了 Vue 2 和 Vue 3 在原理、生命周期、性能、编码方式、API、Diff 算法、打包构建、TS 支持等八个方面的差异,帮助读者全面了解两者的不同之处。
1391 0
对比一下Vue2和Vue3?
|
安全 Linux Go
Linux数据备份与恢复
Linux数据备份与恢复
517 5
|
缓存 JavaScript 前端开发
拿下奇怪的前端报错(三):npm install卡住了一个钟- 从原理搞定安装的全链路问题
本文详细分析了 `npm install` 过程中可能出现的卡顿问题及解决方法,包括网络问题、Node.js 版本不兼容、缓存问题、权限问题、包冲突、过时的 npm 版本、系统资源不足和脚本问题等,并提供了相应的解决策略。同时,还介绍了开启全部日志、使用替代工具和使用 Docker 提供 Node 环境等其他处理方法。
14737 2
|
SQL JavaScript 前端开发
node.js使用Sequelize操作数据库
node.js使用Sequelize操作数据库
453 4
|
小程序 JavaScript 前端开发
微信小程序——云函数操作数据库实现登录
微信小程序——云函数操作数据库实现登录

热门文章

最新文章