@@ -5,8 +5,8 @@ AWS Web Stacks
5
5
:target: https://circleci.com/gh/caktus/aws-web-stacks
6
6
7
7
AWS Web Stacks is a library of CloudFormation templates that dramatically simplify hosting web applications
8
- on AWS. The library supports using Elastic Container Service ( ECS), Elastic Beanstalk (EB) , EC2 instances
9
- (via an AMI you specify), or `Dokku <http://dokku.viewdocs.io/dokku/ >`_ for the application server(s) and
8
+ on AWS. The library supports using Elastic Beanstalk, ECS, EKS , EC2 instances (via an AMI you specify),
9
+ or `Dokku <http://dokku.viewdocs.io/dokku/ >`_ for the application server(s) and
10
10
provides auxilary managed services such as an RDS instance, ElastiCache instance, Elasticsearch instance
11
11
(free) SSL certificate via AWS Certificate Manager, S3 bucket for static assets, ECS repository for hosting
12
12
Docker images, etc. All resources (that support VPCs) are created in a self-contained VPC, which may use a
@@ -19,27 +19,27 @@ which allows for some validation at build time and simplifies the management of
19
19
templates.
20
20
21
21
If a NAT gateway is not used, it's possible to create a fully-managed, self-contained hosting
22
- environment for your application entirely within the free tier on AWS. To try it out, select
23
- one of the following:
22
+ environment for your application entirely within the free tier on AWS (albeit not with all stacks,
23
+ for example, there is no free tier for EKS). To try it out, select one of the following:
24
24
25
- +---------------------+-------------------+---------------------------+---------------+-----------------+
26
- | | Elastic Beanstalk | Elastic Container Service | EC2 Instances | Dokku |
27
- +=====================+===================+===========================+===============+=================+
28
- | Without NAT Gateway | |EB-No-NAT |_ | |ECS-No-NAT |_ | |EC2-No-NAT |_ | |Dokku-No-NAT |_ |
29
- +---------------------+-------------------+---------------------------+---------------+-----------------+
30
- | With NAT Gateway | |EB-NAT |_ | |ECS-NAT |_ | |EC2-NAT |_ | n/a |
31
- +---------------------+-------------------+---------------------------+---------------+-----------------+
25
+ +---------------------+-------------------+---------------+--- ------------+---------------+-----------------+
26
+ | | Elastic Beanstalk | ECS | EKS | EC2 Instances | Dokku |
27
+ +=====================+===================+===============+=== ============+===============+=================+
28
+ | Without NAT Gateway | |EB-No-NAT |_ | |ECS-No-NAT |_ | | EKS-No-NAT |_ | |EC2-No-NAT |_ | |Dokku-No-NAT |_ |
29
+ +---------------------+-------------------+---------------+--- ------------+---------------+-----------------+
30
+ | With NAT Gateway | |EB-NAT |_ | |ECS-NAT |_ | | EKS-NAT |_ | |EC2-NAT |_ | n/a |
31
+ +---------------------+-------------------+---------------+--- ------------+---------------+-----------------+
32
32
33
33
If you'd like to review the CloudFormation template first, or update an existing stack, you may also
34
34
wish to use the YAML template directly:
35
35
36
- +---------------------+-------------------+---------------------------+--------------------+----------------------+
37
- | | Elastic Beanstalk | Elastic Container Service | EC2 Instances | Dokku |
38
- +=====================+===================+===========================+====================+======================+
39
- | Without NAT Gateway | `eb-no-nat.yaml `_ | `ecs-no-nat.yaml `_ | `ec2-no-nat.yaml `_ | `dokku-no-nat.yaml `_ |
40
- +---------------------+-------------------+---------------------------+--------------------+----------------------+
41
- | With NAT Gateway | `eb-nat.yaml `_ | `ecs-nat.yaml `_ | `ec2-nat.yaml `_ | n/a |
42
- +---------------------+-------------------+---------------------------+--------------------+----------------------+
36
+ +---------------------+-------------------+--------------------+------------- -------+--------------------+----------------------+
37
+ | | Elastic Beanstalk | ECS | EKS | EC2 Instances | Dokku |
38
+ +=====================+===================+====================+============= =======+====================+======================+
39
+ | Without NAT Gateway | `eb-no-nat.yaml `_ | `ecs-no-nat.yaml `_ | ` eks-no-nat.yaml `_ | `ec2-no-nat.yaml `_ | `dokku-no-nat.yaml `_ |
40
+ +---------------------+-------------------+--------------------+------------- -------+--------------------+----------------------+
41
+ | With NAT Gateway | `eb-nat.yaml `_ | `ecs-nat.yaml `_ | ` eks-nat.yaml `_ | `ec2-nat.yaml `_ | n/a |
42
+ +---------------------+-------------------+--------------------+------------- -------+--------------------+----------------------+
43
43
44
44
.. |EB-No-NAT | image :: https://s3.amazonaws.com/cloudformation-examples/cloudformation-launch-stack.png
45
45
.. _EB-No-NAT : https://console.aws.amazon.com/cloudformation/home?#/stacks/new?stackName=eb-app-no-nat&templateURL=https://s3.amazonaws.com/aws-web-stacks/eb-no-nat.yaml
@@ -57,6 +57,14 @@ wish to use the YAML template directly:
57
57
.. _ECS-NAT : https://console.aws.amazon.com/cloudformation/home?#/stacks/new?stackName=ecs-app-with-nat&templateURL=https://s3.amazonaws.com/aws-web-stacks/ecs-nat.yaml
58
58
.. _ecs-nat.yaml : https://s3.amazonaws.com/aws-web-stacks/ecs-nat.yaml
59
59
60
+ .. |EKS-No-NAT | image :: https://s3.amazonaws.com/cloudformation-examples/cloudformation-launch-stack.png
61
+ .. _EKS-No-NAT : https://console.aws.amazon.com/cloudformation/home?#/stacks/new?stackName=eks-no-nat&templateURL=https://s3.amazonaws.com/aws-web-stacks/eks-no-nat.yaml
62
+ .. _eks-no-nat.yaml : https://s3.amazonaws.com/aws-web-stacks/eks-no-nat.yaml
63
+
64
+ .. |EKS-NAT | image :: https://s3.amazonaws.com/cloudformation-examples/cloudformation-launch-stack.png
65
+ .. _EKS-NAT : https://console.aws.amazon.com/cloudformation/home?#/stacks/new?stackName=eks-with-nat&templateURL=https://s3.amazonaws.com/aws-web-stacks/eks-nat.yaml
66
+ .. _eks-nat.yaml : https://s3.amazonaws.com/aws-web-stacks/eks-nat.yaml
67
+
60
68
.. |EC2-No-NAT | image :: https://s3.amazonaws.com/cloudformation-examples/cloudformation-launch-stack.png
61
69
.. _EC2-No-NAT : https://console.aws.amazon.com/cloudformation/home?#/stacks/new?stackName=ec2-app-no-nat&templateURL=https://s3.amazonaws.com/aws-web-stacks/ec2-no-nat.yaml
62
70
.. _ec2-no-nat.yaml : https://s3.amazonaws.com/aws-web-stacks/ec2-no-nat.yaml
@@ -76,8 +84,8 @@ In addition to this README, there is additional documentation at
76
84
http://aws-web-stacks.readthedocs.io/
77
85
78
86
79
- Elastic Beanstalk, Elastic Container Service, EC2, or Dokku ?
80
- ------------------------------------------------------------
87
+ Elastic Beanstalk, Elastic Container Service, EC2, Dokku, or EKS ?
88
+ -----------------------------------------------------------------
81
89
82
90
**Elastic Beanstalk ** is the recommended starting point. Elastic Beanstalk comes with a preconfigured
83
91
autoscaling configuration, allows for automated, managed updates to the underlying servers, allows changing
@@ -86,7 +94,8 @@ tool for managing deployments. The Elastic Beanstalk environment uses the
86
94
`multicontainer docker environment <http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_docker_ecs.html >`_
87
95
to maximize flexibility in terms of the application(s) and container(s) deployed to the stack.
88
96
89
- **Elastic Container Service (ECS) ** might be useful if complex container service definitions are required.
97
+ **Elastic Container Service (ECS) ** or **Elastic Kubernetes Service (EKS) ** might be useful if complex container
98
+ service definitions are required.
90
99
91
100
If you prefer to configure application servers manually using Ansible, Salt, Chef, Puppet, or another such tool,
92
101
choose the **EC2 ** option. Be aware that the instances created are managed by an autoscaling group, so you should
@@ -499,6 +508,8 @@ USE_EB=on
499
508
Create an Elastic Beanstalk application
500
509
USE_ECS=on
501
510
Create an Elastic Container Service.
511
+ USE_EKS=on
512
+ Create an AWS EKS (Kubernetes) cluster.
502
513
USE_DOKKU=on
503
514
Create an EC2 instance containing a Dokku server
504
515
0 commit comments