Setting up AWS
We establish the necessary AWS credentials
You're going to need AWS account access to get rolling on this course. We are going to use reasonable defaults for a simple approach to getting AWS set up. There are many ways of accomplishing this, and we are trying to keep it as straightforward as possible.
Some of you may work in a company where a separate team manages AWS. In that case, you'll have to work with that team to obtain the necessary credentials for this course.
The Zappa utility attempts to make your deployments as easy as possible. It will do many tasks on your behalf in AWS to get your project up and running. Some of the tasks may include:
An S3 bucket must be created to hold the finished package of code
Lambda execution environments must be created
API Gateways need to be created and wired up
and other services, based on the features you may be using.
In order for Zappa to accomplish these tasks, it will use API keys to make the modifications to your AWS account. We recommend creating an AWS IAM user just for the Zappa utility. AWS Identity and Access Management (IAM) is the method by which users and programs gain access to the AWS services. By creating a dedicated IAM user for Zappa, we isolate the permissions needed for the utility and have the ability to disable the user as needed.
Browse to the IAM console & create user#
Log into your AWS console and navigate to the IAM Service Console. Once there, click on
Users from the left menu. At the top of the main screen, click on
For the user name, let's use
zappa-user. And then select
Programmatic Access for
Access type. The Zappa user will not be logging into the console, so there is for access to that.
After you click
Next you will now choose the permissions for this user. This is easiest to do by clicking on
Attach existing policies directly.
Now add the following policies:
Once complete, the AWS console shows you the
ACCESS_KEY_ID and the
SECRET_ACCESS_KEY. These are API credentials that Zappa will use. In the next steps, we will save them to your local system.
Create a credentials file on the local system#
The examples given in this course use the MacOS terminal. Windows users should use Windows Powershell to execute the commands. All differences between operating systems are noted.
Create a file on your local system. Based on your operating system it will be located at:
~/.aws/credentialson Linux, macOS, or Unix
C:\Users\<Your Username>\.aws\credentialson Windows
And update the contents like the following. Of course, insert the credentials you generated above.
Note the format here. The AWS credentials file may have multiple credentials contained therein so we're making a special section for Zappa to ensure it doesn't interfere with any other AWS use cases you may have locally. Also, we are leaving the
[default] section blank to prevent accidental usage.