zoukankan      html  css  js  c++  java
  • [AWS

    ECS

    Steps to create a ECS

    1. Create Cluster: EC2 Linux + Networking

    When you created ECS cluster, it comes with Auto Scaling Group, and with ASG, it comes with EC2 instances.

    Also created Launch Configuration.

    Also create IAM rule for ECS Instance Role.

      2. Create ECS Task Definitions

    • Tasks definitions are metadata in JSON form to tell ECS how to run a Docker Container.
    • Contains crucial information around:
      • Image Name
      • Port Binding for Container and Host
      • Memory and CPU required
      • Environment variables
      • Networking information
    • Task Role: If doesn't come with Task Role, you cannot pull the image from ECR, cannot talk to EC2... It can be created automaticlly
    • Container defination

      "httpd:2.4": image + tag: ECR knows it comes from Docker Hub

    • Port Mapping
      • Can be static mapping
      • Or dynamic mapping with ALB (set Host port to 0)

      3. Create ECS Service

    • Will run Task defination
    • We can set tup Application Load Balancer

     

    It use Dynamic port mapping, for Host Port, we can set 0.

    ECR

    Ref to ECR in Task defintion:

    Fargate

    • Create Cluster with Fargate
    • Create Task Defination
    • Create Service

    • ECS need to use IAM role which attached to EC2 level to perform different action.
    • Task Defination need to have ECS Task Role to perform acess different resource.

    • When you add a new container, ECS service need to find out which EC2 instances to put new containers
    • When remove EC2 isntance, need to find out which one to terminated

    Cluster Capacity Provider can decide new Task should run on new EC2 instance or Fargate.



    The main question is when should you put multiple containers into the same task definition versus deploying containers separately in multiple task definitions.

    You should put muultiple containers in the same task definition if:

    • Containers share a common lifecycle (they shoyl dbe alunched and terminated together)
    • Containers are required to be run on the same underlying host
    • You want your containers to share resources.
    • You containers share data volumes

    Otherwise, you should define your containers in separate tasks definitions so that you can scale, provision, and deprovision them separately.

    "Shared memory"...

  • 相关阅读:
    如何使用GOOGLE高级搜索技巧
    你所认为的极限,可能只是别人眼中的起点
    飞机选座——附:东航320选坐攻略
    古诗词里,从初识到相爱到分离到重逢的漫长过程
    从零开始学摄影
    Python之运维
    Linux用户和组密令大全
    centos7 下安装生物信息软件的问题小总结
    VMware锁定文件失败开启模块diskearly的操作失败未能启动虚拟机
    linux 基本命令整理--转
  • 原文地址:https://www.cnblogs.com/Answer1215/p/14859210.html
Copyright © 2011-2022 走看看