Handbook for NEW DevOps Engineers
#
macOS configuration- Use FileVault to encrypt the startup disk on your Mac.
- Install Homebrew to install/manage macOS packages.
#
Applications/packages#
Required- Slack: We use it as our main communication tool.
- Docker for Mac
- Docker Compose
brew install docker-compose
- awscli
brew install awscli
- Terraform
brew install terraform
#
- Optional (but recommended)- VSCode is a good IDE (unless you're a vim user ๐). It has useful plugins for DevOps.
- iTerm2 + zsh + oh-my-zsh.
- Use a password manager. 1Password is a good option.
- Grammarly is a writing assistant that uses AI and NLP. You'll love it!
#
Configuring awscliThe AWS Command Line Interface (CLI) is a unified tool to manage AWS services.
You will need to configure a default profile and a named profile for every AWS account you manage. The default profile will be used when you run any awscli command without specifying --profile <PROFILE_NAME>
option.
To do this, check the following docs:
*Advanced: Once you have some expertise with awscli and Terraform, you should enforce MFA for AWS IAM users.
#
Configuring TerraformTerraform is a Hashicorp infrastructure as code software tool.
For learning Terraform, Hashicorp offers a Terraform getting started course. This could be a good starting point. After this course, the book Terraform: Up & Running by Yevgeniy Brikman is a good option to consolidate knowledge and deepen on it.
After you gain some expertise, some basic things that you must do on your Terraform project are:
#
Terraform additional tools- chtf: Terraform version switcher, allows you to change the Terraform version you are using with a single command.
- terraform-landscape: Improve Terraform's plan output to be easier to read and understand
#
Additional tips- Setup and enforce 2FA when possible (AWS, GitHub, Slack... have this option).
- Generate secure and random passwords for every service. 1Password has a built-in password generator, or you can use a tool like RandomKeygen.
- Don't share passwords on e-mails or Slack. Use a service like OneTimeSecret or WhisperKey.
- Feel free to ask others. There's no such thing as a stupid question!