Architecture Creation

We will launch an AWS CloudFormation template that creates all resources for us.

AWS CloudFormation provides a common language for you to describe and provision all the infrastructure resources in your cloud environment. CloudFormation allows you to use a simple text file to model and provision, in an automated and secure manner, all the resources needed for your applications across all regions and accounts. This file serves as the single source of truth for your cloud environment.

It’s just code: Codifying your infrastructure allows you to treat your infrastructure as just code. You can author it with any code editor, check it into a version control system, and review the files with team members before deploying into production.

  1. To start the process of launching your AWS CloudFormation stack, click on the Launch Stack button for your region below. Please note that the below table is not a screen shot, you simply click the Launch Stack button that you can see below.

    Region Launch
    US East (N. Virginia) Launch CloudFormation template in us-east-1
  2. You will land on this screen in the AWS CloudFormation management console. Leave all values as they are. pipeline.cloudformation.01.png

  3. Scroll down to the bottom of the page. In the Amazon S3 URL field you can see the link to the AWS CloudFormation template that we will use as source for our stack creation. Click the *Next button. pipeline.cloudformation.02.png

  4. You can now enter a name for your stack in the Stack name field, but just leave the default name that is already provided. pipeline.cloudformation.03.png

  5. When you scroll down, you can see three parameters for which you can provide individual values. Again, just leave the default values and click the Next button. pipeline.cloudformation.04.png

  6. Now you can tag your stack and effectively the resources that will be created within your stack. Tagging AWS resources is a very powerful means under various aspects that include cost allocation, automation, or access control. We’d encourage you to have a look into the AWS Tagging Strategies article for an overview. For our stack, please enter a tag with key project and value nlp-workshop. You can add more tags if you like. pipeline.cloudformation.05.png

  7. Scroll down and click the Next button. pipeline.cloudformation.06.png

  8. On the review screen you get a summary of what you have confirmed on the previous screens. pipeline.cloudformation.07.png

  9. Scroll down to the bottom and check all three check boxes in order to allow AWS CloudFormation to perform the actions you’re asking it to do on your behalf.

    Continue from here by clicking the Create change set button, not the Create stack button. Our AWS CloudFormation template uses an extension for serverless apps that first needs to be translated into a low-level template.

    pipeline.cloudformation.08.png

  10. On this screen, leave all settings untouched and click Create change set. pipeline.cloudformation.09.png

  11. Your change set is now being created. pipeline.cloudformation.10.png

  12. After a few moments, the AWS Cloudformation console will indicate that the creation of the change set is ready. Click the Execute button in the top right corner. pipeline.cloudformation.11.png

  13. Your stack is now being created and you land on the Events tab of your in-creation stack. Initially, you should see two events, the first indicating that you have started your stack creation, the second one indicating that you previously created a change set for review. pipeline.cloudformation.13.png

  14. After a few moments you’ll see the New events available notification in the upper right quadrant of the screen, indicating that additional steps of the stack creation have finished. You can click the refresh symbol next to this notification to get an updated list of events from your stack creation. pipeline.cloudformation.14.png

  15. Once the stack creation is complete, you will see the respective event topmost (showing the name of your stack followed by CREATE_COMPLETE in green). pipeline.cloudformation.15.png

  16. Now click the Outputs tab. Take a note of the value of the S3Bucket key. This is the S3 bucket that was created during stack creation and which represents our S3-based data lake in this workshop. New call recordings will need to go into this bucket to start the processing pipeline with them. pipeline.cloudformation.16.png

  17. In the following section, we will first trigger the processing pipeline manually and explore what happens.