description |
---|
Create an ECS Service from Task Definition and expose it with a Load Balancer |
Now that you've created a Task Definition, create a Service, which creates a Task (from the definition) to run your application. A Task is the instantiation of a Task Definition within a cluster. After you create a task definition for your application within Amazon ECS, you can specify multiple tasks to run on your cluster, based on your performance and availability requirements.
Once a Service is created, you must create a Load Balancer to expose the Service on the network. An Amazon ECS service runs and maintains the desired number of tasks simultaneously in an Amazon ECS cluster. If any of your tasks fail or stop, the Amazon ECS service scheduler launches another instance based on parameters specified in your Task Definition. It does so in order to maintain the desired number of tasks created.
Estimated time to complete Step 5: 10 minutes.
Before creating the ECS Service and Load Balancer, verify that you accomplished the tasks in the previous tutorial steps. Using the DuploCloud Portal, confirm that:
- An Infrastructure and Plan exist, both named NONPROD.
- The NONPROD infrastructure has ECS Enabled.
- A Tenant named dev01 has been created.
- A Task Definition named sample-task-def has been created.
-
In the DuploCloud Portal's Tenant list box, select dev01.\
-
Navigate to Cloud Services -> ECS.
-
In the Task Definitions tab, select the Task Definition Family Name, DUPLOSERVICES-DEV01-SAMPLE-TASK-DEF. This is the Task Definition Name you created prepended by a unique identifier, which includes your Tenant name (DEV01) and part of your Infrastructure name (ECS-TEST).
-
In the Service Details tab, click the Configure ECS Service link. The Add ECS Service page displays.
The Service Details tab
The Add ECS Service page
-
In the Name field, enter sample-httpd-app as the Service name.
-
In the LB Listeners area, click Add. The Add Load Balancer Listener pane displays.\
-
From the Select Type list box, select Application LB.
-
In the Container Port field, enter 3000.
-
In the External Port field, enter 80.
-
From the Visibility list box, select Public.
-
In the Heath Check field, enter /, specifying
root
, the location of Kubernetes Health Check logs. -
From the Backend Protocol list box, select HTTP.
-
From the Protocol Policy list box, select HTTP1.
-
Select other options as needed and click Add.
-
On the Add ECS Service page, click Submit.
In the Service Details tab, information about the Service and Load Balancer you created is displayed. Verify that the Service and Load Balancer configuration details in the Service Details tab are correct.
Service Details tab displaying Service and Load Balancer configuration details