How to use Terraform to Manage AWS [TUTORIAL]

  Рет қаралды 23,779

London App Developer

London App Developer

Күн бұрын

Пікірлер: 60
@saitaro
@saitaro 4 жыл бұрын
I bought the Django/Docker Udemy course from this guy, can confirm it's top quality. I used this knowledge and my code from the course project to get my first dev job.
@LondonAppDeveloper
@LondonAppDeveloper 4 жыл бұрын
Thanks man appreciate that!
@saitaro
@saitaro 4 жыл бұрын
​@@LondonAppDeveloper No problem, Sensei. So, your path in IT led you to DevOps?
@LondonAppDeveloper
@LondonAppDeveloper 4 жыл бұрын
I like to do a bit of everything :)
@brookewinterford
@brookewinterford 4 жыл бұрын
@@saitaro The programmer with the demonic appearance is a jack-of-all-trades I guess. ;)
@brookewinterford
@brookewinterford 4 жыл бұрын
BTW, congrats on getting your first dev role! That's amazing.
@rouwenpi
@rouwenpi 3 жыл бұрын
It is a very good tutorial, I'm used to aws and tf, but the way you do it (aws-vault, docker-compose etc.) is brilliant. Congrats
@LondonAppDeveloper
@LondonAppDeveloper 3 жыл бұрын
Thank you!
@oluwakemiayeni2368
@oluwakemiayeni2368 3 жыл бұрын
jus stumbled into your chanel now brilant tutorial excelent delivery. Anoher thing i enjoyed is listening to that voice its too angelic it makes the whole thing to sink in.Nice job man, you have a sub in me
@LondonAppDeveloper
@LondonAppDeveloper 3 жыл бұрын
Thank you so much! :D
@likheshmahajan850
@likheshmahajan850 4 жыл бұрын
Awesome, Simple loved the video. Very nicely explained.
@LondonAppDeveloper
@LondonAppDeveloper 4 жыл бұрын
Thanks for watching! Glad you liked it
@dongwang2340
@dongwang2340 3 жыл бұрын
He is really brilliant and good at teaching.
@holyproton8855
@holyproton8855 3 жыл бұрын
You did an excellent job! This was simple to follow and easy to understand.
@samarthurs8000
@samarthurs8000 4 жыл бұрын
Thanks for the tutorial with aws-vault. Rest of the videos over the KZbin are with "aws configure". Well, I already had the Terraform 12 installed on my windows, I didn't use the docker-compose approach. After following the entire video, I was not able to run "terraform plan". Error: No valid credential sources found for AWS Provider... Terraform was not able to identify the "key-name" under "aws_instances". I had given the exact key-pair name which I created using ssh-keygen and imported into the EC2 key pairs. Finally, I had to run every terraform command with the prefix - "aws-vault exec -- " like below: aws-vault exec -- terraform init aws-vault exec -- terraform plan aws-vault exec -- terraform apply aws-vault exec -- terraform destroy
@alirezacom81
@alirezacom81 4 жыл бұрын
Brilliant! I really enjoyed this Tutorial, well done.
@LondonAppDeveloper
@LondonAppDeveloper 4 жыл бұрын
Thanks Ali!
@ImolaOrangeS2000
@ImolaOrangeS2000 4 жыл бұрын
Excellent video! Thanks.
@LondonAppDeveloper
@LondonAppDeveloper 4 жыл бұрын
You are welcome!
@biswaranjansahoo9741
@biswaranjansahoo9741 3 жыл бұрын
Nice explanation and demo - helps quickly understanding the concepts well
@jasonriedel
@jasonriedel 3 жыл бұрын
Cool tutorial! I just did one, and ran cross yours. Definitely yours is more advanced, and with less mistakes haha! Keep up the good stuff!
@LondonAppDeveloper
@LondonAppDeveloper 3 жыл бұрын
lol thanks appreciate that :D
@LaureanoPiotti9
@LaureanoPiotti9 4 жыл бұрын
Nice demo ! Thanks from Argentina
@LondonAppDeveloper
@LondonAppDeveloper 4 жыл бұрын
Thank you! - Temporarily from Canada :)
@brookewinterford
@brookewinterford 4 жыл бұрын
Great job Mark!
@chrisre2751
@chrisre2751 3 жыл бұрын
Thank you. Very good tutorial
@DosChannelfive
@DosChannelfive 4 жыл бұрын
Excellent tutorial! Thanks Mark!
@mooklexpucca1908
@mooklexpucca1908 3 жыл бұрын
Really enjoyed! Well explained, Thanks a lot :))
@stargategoku
@stargategoku 2 жыл бұрын
Thanks a lot for posting!
@M00nsave445
@M00nsave445 3 жыл бұрын
The environments, under the docker-compose file, are not being passed to the docker container. This is why we get the error: no valid credential sources for Terraform AWS Provider found, when running terraform plan or apply.
@andrewshk8441
@andrewshk8441 Жыл бұрын
Thank you for such a great tutorial! I followed every step but I'm still getting the "Permission denied (publickey)." error when I'm trying to connect with ssh.
@JoeFrixon
@JoeFrixon 4 жыл бұрын
Thanks for this wonderful video. I have a question if there are named profiles in the AWS credentials which location the profile to be referenced I assume we need to refer in the docker-compose file but how?
@LondonAppDeveloper
@LondonAppDeveloper 4 жыл бұрын
The named profiles are not referenced in the docker-compose file. They are referenced when running the aws-vault command to retrieve the credentials. Thanks for watching :)
@JoeFrixon
@JoeFrixon 3 жыл бұрын
@@LondonAppDeveloper Facing the above issue still. ❯ docker-compose run tf plan WARNING: The AWS_ACCESS_KEY_ID variable is not set. Defaulting to a blank string. WARNING: The AWS_SECRET_ACCESS_KEY variable is not set. Defaulting to a blank string. WARNING: The AWS_SESSION_TOKEN variable is not set. Defaulting to a blank string. Creating mw-yt-tf-aws-fit_tf_run ... done Refreshing Terraform state in-memory prior to plan... The refreshed state will be used to calculate this plan, but will not be persisted to local or remote state storage. ------------------------------------------------------------------------ Error: No valid credential sources found for AWS Provider. Please see terraform.io/docs/providers/aws/index.html for more information on providing credentials for the AWS Provider on main.tf line 1, in provider "aws": 1: provider "aws" { ERROR: 1 any suggestions?
@mrbeats7434
@mrbeats7434 4 жыл бұрын
Mate brilliant!
@LondonAppDeveloper
@LondonAppDeveloper 4 жыл бұрын
Thanks for watching!
@NDGS605
@NDGS605 3 жыл бұрын
when trying to initialise, I am getting this error: ERROR: In file './docker-compose.yml', service 'image' must be a mapping not a string.
@nileshjoshi100
@nileshjoshi100 4 жыл бұрын
Awesome! Thanks for such a wonderful tutorial. Just a quick question, what’s the significance of using Docker compose to run tf commands. Can you please explain the use case for it?
@LondonAppDeveloper
@LondonAppDeveloper 4 жыл бұрын
I use Docker to manage my Terraform version for a number of reasons. 1) New TF versions are not backward compatible and if one developer uses a newer version, it will upgrade the state file and break it for others. Using Docker helps to standardise for all devs. 2) Terraform needs to be manually installed by putting the executable in the correct location, I prefer to use Docker so I don't need to manage multiple versions of terraform locally. 3) Using Docker streamlines the workflow for all operating system (installing Terraform on Windows is different from installing on macOS or Linux) Thanks for watching our tutorial and for the question!
@jasonriedel
@jasonriedel 3 жыл бұрын
@@LondonAppDeveloper Great idea!
@M00nsave445
@M00nsave445 3 жыл бұрын
Thanks for the vid. Does this still applies after the release of TF 1.x?
@DaNuker
@DaNuker 4 жыл бұрын
I aws vault wouldnt let me input the secret access key after inoputing the key ID. it asks for an input but doesnt let me add anything, only lets me leave it blank and press enter. any idea why this happens? thanks in advance
@ShivamSharma-xz5je
@ShivamSharma-xz5je 4 жыл бұрын
Use this "sudo apt install gnome-keyring", it solved the problem for me
@DaNuker
@DaNuker 4 жыл бұрын
@@ShivamSharma-xz5je i just made a profile with aws cli instead, without using terraform vault
@Big99Joe
@Big99Joe 3 жыл бұрын
Thanks for the video! When I execute: error using credentials to get account ID: error calling sts:GetCallerIdentity: InvalidClientTokenId: The security token included in the request is invalid. status code: 403, request id:
@Big99Joe
@Big99Joe 3 жыл бұрын
It looks like the issue is with the resource "key_name"
@GS-vn9pf
@GS-vn9pf 4 жыл бұрын
Hey really nice video! I have a question: My aws-vault does not work, it does find the "aws-vault" command! What do I do?
@THUSxFAR
@THUSxFAR 4 жыл бұрын
Do you have a link on how to create an SSH key? I thought you needed an EC2 instance in order to do this.
@LondonAppDeveloper
@LondonAppDeveloper 4 жыл бұрын
This depends on the machine you are using. If you search "how to create an SSH key on ", there are loads of articles.
@mariaisabelvaldiviacampos3385
@mariaisabelvaldiviacampos3385 4 жыл бұрын
Nice video. But I follow the step and get stuck with the AWS-vault add (I got aws-vault' is not recognized as an internal or external command) . I use Windows 10 64bit
@LondonAppDeveloper
@LondonAppDeveloper 4 жыл бұрын
Hey, did you install aws-vault using chocolately or some other Windows package manager?
@mariaisabelvaldiviacampos3385
@mariaisabelvaldiviacampos3385 4 жыл бұрын
@@LondonAppDeveloper Hi!, I didn´t know. Thank you so much for your reply. I ll check. Best regards
@JackReacher1
@JackReacher1 4 жыл бұрын
When I execute "docker-compose run --rm tf plan" Error: error configuring Terraform AWS Provider: error validating provider credentials: error calling sts:GetCallerIdentity: ExpiredToken: The security token included in the request is expired status code: 403, request id:
@LondonAppDeveloper
@LondonAppDeveloper 4 жыл бұрын
Try removing your .terraform file and re-initializing.
@THUSxFAR
@THUSxFAR 4 жыл бұрын
Is Hashicorp Vault better?
@THUSxFAR
@THUSxFAR 4 жыл бұрын
I couldnt get it working with vault. I hardcoded the keys, but im just testing anyways.
@koalakakes
@koalakakes 4 жыл бұрын
NEVER EVER OPEN PORT 22 TO THE WORLD. ssh key or not, dont do it
@LondonAppDeveloper
@LondonAppDeveloper 4 жыл бұрын
Thanks for the comment Trev. For the benefit of others who might want to know the reason, having port 22 open to the public can open yourself up to vulnerabilities as hackers will often scan for IP's with this port. Using an SSH key and preventing password access (which I think is default on the AWS AMIs) significantly reduces the risk, but there may still be vulnerabilities that attackers can take advantage of. Some options to reduce this risk further are: 1) Change the SSH port to something else (eg: 123), and/or 2) Lock down access to specific IP ranges, such as the office network where developers need to access the instance...
@IronHelpsUsPlay
@IronHelpsUsPlay 2 жыл бұрын
Why are you wearing a woolly hat while sitting inside?
@LondonAppDeveloper
@LondonAppDeveloper 2 жыл бұрын
Heating is too expensive.
AWS Networking Basics For Programmers | Hands On
27:14
Travis Media
Рет қаралды 157 М.
Why You NEED To Learn Terraform | Practical Tutorial
27:33
Travis Media
Рет қаралды 141 М.
How do I deploy AWS Lambda using Terraform?
18:52
Rahul Wagh
Рет қаралды 50 М.
How To Use Docker To Make Local Development A Breeze
21:53
ArjanCodes
Рет қаралды 329 М.
Start using Terraform with AWS
23:42
Sam Meech-Ward
Рет қаралды 7 М.
How to Deploy a Docker App to AWS ECS
24:18
Laith Academy
Рет қаралды 117 М.
The intro to Docker I wish I had when I started
18:27
typecraft
Рет қаралды 357 М.
The only Cloud services you actually need to know
17:17
NeetCodeIO
Рет қаралды 209 М.
Terraform : AWS - How to build reusable terraform modules with example
28:17