What are Modules? - self contained pieces of IAC that abstract the infrastructure deployments - use clear organization and DRY (Dont Repeat Yourself) - helps in writing composable, shareable and reusable infrastructures Scope the requirements into appropriate modules : - When building a module, consider 3 areas: 1. Encapsulation - Group infrastructure that is always deployed together 2. Privileges - Restrict modules to privilege boundaries 3. Voltatility - Separate long lived infrastructure from short-lived (Ex: Database-static vs Application Servers-dynamic) Create the module MVP : * Always aim to deliver a module that works for 80% of usecases * Never code for edge cases. A module should be a reusable block of code. * Avoid conditional expressions in MVP * Module should only expose the most commonly modified arguments as variables. Scoping Example - A team wants to provision thei...
ETL, big-data, cloud(AWS/GCP/Azure) technologies and possibly share random stuff along the way!!