管理產品
本文中含有需要您注意的重要提示信息,忽略該信息可能對您的業務造成影響,請務必仔細閱讀。
本文以ECS產品為例,為您介紹如何創建、更新和刪除產品。
前提條件
請確保您已經為管理員授予服務目錄管理員側的權限。具體操作,請參見為管理員授權。背景信息
產品是服務目錄專有概念,可以是單個云資源,也可以是多個云資源的組合。管理員可以定義合規產品,并管理產品的多個版本。
管理員通過產品對資源進行編組,以實現統一的生命周期管理。例如:企業A的多個業務人員均需要管理ECS實例的生命周期,此時可以通過創建產品的方式,定義ECS相關資源,然后將產品添加到產品組合并為多個業務人員授權,從而實現統一管理的訴求,降低管理成本。創建產品后,管理員也可以按需為產品創建產品版本,并定義推薦信息,以便后續基于不同產品版本靈活管理產品。
創建產品時,支持Terraform模板和ROS模板。您可以自定義模板文件,也可以使用服務目錄提供的入門示例模板快速創建產品。關于Terraform模板和ROS模板的更多信息,請參見Terraform模板語法和ROS模板結構說明。
創建產品
通過入門示例模板創建產品
- 管理員登錄服務目錄控制臺。
- 在左側導航欄,選擇 。
- 在產品管理頁面,單擊創建產品。
在創建產品頁面,設置產品參數。
在基本信息區域,輸入名稱、提供者和產品描述。
選擇模板類型。
您可以選中ROS或Terraform,使用ROS模板或Terraform模板創建產品。
在初始版本信息區域,設置產品版本信息。
輸入版本名稱。
輸入版本描述。
選擇創建方式。
您可以選中自定義或入門示例,通過自定義模板或入門示例模板快速創建產品。本示例選擇入門示例。
服務目錄提供了多個入門示例,您可以選擇符合您需求的示例。
查看模板內容,支持基于模板內容進行修改。
Terraform模板:在文件列表視圖中查看模板中包含的文件及內容。在參數視圖中設置模板中包含的參數屬性,包含參數基礎屬性、參數校驗規則和參數選項等。
ROS模板:查看JSON和YAML格式的模板內容。
單擊參數預覽,預覽參數配置是否符合預期。
單擊確定。
通過自定義模板創建產品
您可以通過自定義ROS或Terraform模板創建產品。以下將提供一個示例,手動編寫Terraform模板(例如:create_ecs),然后將模板文件夾上傳到服務目錄控制臺。
模板內容
模板示例中包含main.tf和variables.tf兩個文件。其中,resource定義要創建的資源(專有網絡、交換機、安全組和ECS實例)、output定義實例創建以后用戶可以看到的輸出內容(專有網絡ID、交換機ID和ECS實例ID),variable通過AllowedValues定義了可選的ECS實例規格。
main.tf中
instance_type = var.instance_type
表示ECS實例規格引用了variables.tf中的規格參數。main.tf中定義的可用區為cn-beijing-h,有權限的終端用戶啟動產品時需要選擇實例所在的地域為華北2(北京),避免可用區和地域不一致導致實例創建失敗。
resource "alicloud_vpc" "vpc" { name = "tf_test_foo" cidr_block = "172.16.0.0/12" } resource "alicloud_vswitch" "vsw" { vpc_id = alicloud_vpc.vpc.id cidr_block = "172.16.0.0/21" availability_zone = "cn-beijing-h" } resource "alicloud_security_group" "default" { name = "default" vpc_id = alicloud_vpc.vpc.id } resource "alicloud_instance" "instance" { # cn-beijing availability_zone = "cn-beijing-h" security_groups = alicloud_security_group.default.*.id # series III instance_type = var.instance_type system_disk_category = "cloud_efficiency" image_id = "ubuntu_18_04_64_20G_alibase_20190624.vhd" instance_name = "test_foo" vswitch_id = alicloud_vswitch.vsw.id internet_max_bandwidth_out = 10 } resource "alicloud_security_group_rule" "allow_all_tcp" { type = "ingress" ip_protocol = "tcp" nic_type = "intranet" policy = "accept" port_range = "1/65535" priority = 1 security_group_id = alicloud_security_group.default.id cidr_ip = "0.0.0.0/0" } output "vpc_id" { value = alicloud_vpc.vpc.id description = "The ID of the VPC." } output "vswitch_id" { value = alicloud_vswitch.vsw.id description = "The ID of the switch." } output "instance_id" { value = alicloud_instance.instance.id description = "The ECS instance ID." }
variable "instance_type" { type = string description = <<EOT { "AssociationProperty": "ALIYUN::ECS::Instance::InstanceType", "AllowedValues": ["ecs.s6-c1m1.small", "ecs.s6-c1m2.small", "ecs.s6-c1m2.large", "ecs.s6-c1m2.xlarge", "ecs.s6-c1m2.2xlarge"], "Label": "ECS實例規格" } EOT }
操作步驟
- 管理員登錄服務目錄控制臺。
- 在左側導航欄,選擇 。
- 在產品管理頁面,單擊創建產品。
選擇模板類型為Terraform。
在創建產品頁面,設置產品參數。
在基本信息區域,輸入名稱、提供者和產品描述。
在初始版本信息區域,設置產品版本信息。
輸入版本名稱。
輸入版本描述。
選擇創建方式。
本示例選中自定義,使用自定義模板創建產品。
單擊上傳文件夾,從本地上傳編寫好的模板文件。
本示例上傳模板文件create_ecs。
查看模板內容,支持基于模板內容進行修改。
在文件列表視圖中查看模板中包含的文件及內容。在參數視圖中設置模板中包含的參數屬性,包含參數基礎屬性、參數校驗規則和參數選項等。
單擊參數預覽,預覽參數配置是否符合預期。
單擊確定。
更新產品基本信息
- 在左側導航欄,選擇 。
在產品管理頁面,單擊目標產品操作列的編輯。
在修改產品信息對話框,更新名稱、提供者和描述。
單擊確定。
刪除產品
刪除產品前請確保該產品已不再使用,否則終端用戶將無法正常管理該產品的資源。如果產品已經添加到產品組合,刪除操作將同步在產品組合中生效,請謹慎操作。
- 在左側導航欄,選擇 。
在產品管理頁面,單擊目標產品操作列的刪除。
在刪除產品對話框,確認信息無誤后,單擊確定。