AWS中如何使用AWS CLI 创建ECS集群,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
创建集群
aws ecs create-cluster --cluster-name 集群名字
输出:
{ "cluster": { "status": "ACTIVE", "statistics": [], "clusterName": "fargate-cluster", "registeredContainerInstancesCount": 0, "pendingTasksCount": 0, "runningTasksCount": 0, "activeServicesCount": 0, "clusterArn": "arn:aws:ecs:region
:aws_account_id
:cluster/fargate-cluster" } }
注册任务定义
必须先注册任务定义才能在ECS集群上运行任务,以下是注册任务定义的一个fargate启动类型的示例文件:
{
"family": "sample-fargate",
"taskRoleArn": "ecs TaskExecutionRole",
"executionRoleArn": "ecs TaskExecutionRole",
"networkMode": "awsvpc",
"containerDefinitions": [
{
"name": "test_nginxweb",
"cpu": 256,
"memory": 512,
"image": "023663056036.dkr.ecr.ap-northeast-1.amazonaws.com/test-qulp:nginx_web0.0",
"portMappings": [
{
"containerPort": 80,
"hostPort": 80,
"protocol": "tcp"
}
],
"essential": true
}
],
"requiresCompatibilities": [
"FARGATE"
],
"cpu": "256",
"memory": "512"
}
以下是fargate类型受支持的范围:
以下是EC2类型受支持的范围:
则受支持的值介于 128
个 CPU 单元(0.125
个 vCPU)和 10240
个 CPU 单元(10
个 vCPU)之间。
有两种方式传递JSON文件到 AWS CLI 。
第一种:将任务定义JSON保存成文件,使用选项传递
aws ecs register-task-definition --cli-input-json file://JSON文件的位置
第二种:直接在AWS CLI命令行中使用引号传递JSON字符串。
注册任务定义后的返回:
列出任务定义
aws ecs list-task-definitions
创建服务
aws ecs create-service --cluster 集群名字 --service-name 服务名字 --task-definition 任务定义:1 --desired-count (服务的数量) --launch-type (启动类型)"FARGATE" --network-configuration "awsvpcConfiguration={subnets=[subnet-abcd1234],securityGroups=[sg-abcd1234],assignPublicIp=ENABLED}"
起中的子网和安全组都是需要自己之前创建的。
列出集群中的服务
aws ecs list-services --cluster 集群名字
描述正在运行的服务
aws ecs describe-services --cluster 集群名称 --services 服务名称
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注天达云行业资讯频道,感谢您对天达云的支持。