Terraform Road Map 2024| Why You Learn Terraform | Terraform Onsite Demand | Terraform Full Course

Terraform Road Map 2024| Why You Learn Terraform | Terraform Onsite Demand | Terraform Full Course

Show Video

out okay yeah okay hope you can see my slide right this one is visible right okay so this is very high level prerequisite uh of learning terraform okay and even same I followed uh while learning terraform it is uh it was I think just before coid and all uh starting that time I gave them my exam also terraform associate exam so that time I was learning terraform and all uh and I found it easy okay it is not like any other uh it is not like a traditional programming like how we we think Java or python or C language how it will be like uh so it is not like that kind of complicated and all nowadays like uh this terraform or puppet Chef you might might have heard those kind of languages okay puppet Chef anible even Azure arm templates or bicep okay so these all programming these all are are kind of a declarative programming okay so where you don't have to uh tell the computer like okay how to do it okay you don't have to give it step by step you just have to tell how my end structure would look like yes what will be my end view end structure would look like and it will do it like how it is but in regular programming in the normal programming like Java or Python and all we have to tell each step by step how it needs to be done okay so these kind of puppet Chef anible terraform these all are kind of different language so these are all called declarative languages okay so these are all falling under the same category so for this we don't have to know a lot of programming knowledge if you know that's optional okay but it is not a major benefit or anything there is no uh much relation between any other programming language and terraform okay and if you know the basic of cloud and all it it is definitely added Advantage okay because using terraform you can do a lot of things you can create definitely you can create resources in Cloud Azure AWS gcp Alibaba Cloud Oracle Cloud all the whatever Cloud you want you can create the things okay this is cloud agnostic so it it doesn't terraform doesn't differentiate which cloud and all it is doing okay so and also you can you use to create um what we say our VMware VMS also you can manage okay so it can do lot of things it can uh manage Cisco roters it can manage P Al to firewalls and all so terraform you can do lot of things in that okay but usually like most of the projects or organization they use it for the cloud resources creation and management okay so if you have any knowledge of existing cloud like I'm I'm sure as you said asure you will be migrating so definitely you you should have some very high level basic langu basic knowledge how what the cloud and in Azure and all what is infrastucture as a server VM and all that okay so that is also optional again okay even if it is not there that's fine so okay so these are the basic prerequisite of learning terraform okay yes any doubt in this on any like prerequisites or anything if you have you are already aware basic awareness of cloud right as your I have a cloud I work on cloud every day so in the cloud fine I cany aure okay I I need to I just need this automation part so we just focus on process sure sure okay how to yeah so how to why to learn terraform these are some of the like reasons are there why somebody goes for that so one is terraform uh is I have mentioned sorry infrastructure as a code correct yeah very good yeah so infrastructure as code and so it is a terraform also is a infrastructure as a coded language and it is a cloud di agnostic okay so you can use the same terraform uh same tool to create resources in AWS Azure or gcp Oracle Cloud okay any Alibaba Cloud whichever are major clouds a major cloud you can do that okay so let's do quickly there is a uh website which we will later we will use it very frequently it is registry. terraform doio yes so if we look here browse providers so we see like what are the capabilities terraform has what it can do so it can definitely create resources in AWS asure gcp it can create kubernetes uh Al Cloud Oracle Cloud okay and lot of these things you can see active directory you can manage you can create okay you can create Helm chart and Vault so there are so many things are there okay in that using uh using terraform you can do that okay and so you can see the number are so many so many vendors are are there big IP it's F5 load balancer and all so this you can use this to create resources in that so a lot of other U software providers and all that they have partnered with uh Hashi Corp like Hashi Corp is the parent company the main company and terraform is the product by them okay so they have other products as well and terraform is the main product for the infrastructure as Cod okay so we can use it so like these these boxes you will see a little bit bigger so these are the main Cloud which users will do AWS as your ngcp okay yes yeah so that's why it is a cloud agnostic you can use the same terraform language to create resources in any Cloud okay once you know terraform you can if your manager is asking you to create a VM in Azure you can do that if he ask to after 6 months create a VM in gcp or Alibaba Cloud you can do that okay you don't have to uh learn new thing in in in terraform okay so that that's a added Advantage so that's why a lot of organizations are going to terraform okay they're they're moving to terraform because at some point definitely organizations are exploring and many organizations are already in multicloud some maybe right now in Azure maybe after 6 months or one year they will explore okay let me expand to AWS as well some some workload so that whichever is giving me cost benefit I will switch over easily okay so that's why terraform is the uh benefit in that and declarative language uh we don't have to do a lot of things how we don't have to give step by step how to do we just have to declare how our end goal should look like that's it okay and in many recent surveys and all that it is chosen by the top 10 Enterprises okay for the ISC tool and it is very uh kind of evolving let's see if in Azure if we see here okay so you see here how the versions are changing in in that Azure RM okay so two days ago here 16 days ago 23 so it is constantly changing okay so it is very very Dynamic okay so that's why the support part and all like no need to worry when whenever any bug or anything is there they're releasing they're fixing and all that so okay so they have a very good um code base and support for that and fast uh very VA vast Marketplace modules so we just saw in that like how many other F5 load V are Oracle DNS many things are there so a lot of uh third party Marketplace is also there which you can use uh for terap form so let's say if you have F5 kind of load balancer or that or if you have uh Azure if you have active directory or kubernetes and all you can use the same terraform tool to manage everything okay you don't have to use 10 other tools okay so and effort wise also to learn it is not it it will be I think low to medium effort I can say okay as a new new new person it won't be like very difficult such okay and it has got both open source as well as paid product with support okay but the terraform language as such is is same so irrespective of you take the paid product or support or you use the open source okay so the the writing code and the language point of view it is same there is not a single change okay and it has a very easy integration with as your devops pipeline or and uh GitHub actions and all because at some point your organization your project and all when you will do migrate uh you will think of doing that in some pipeline cicd pipeline okay so might be if you are Azure Centric organization you will go for Azure devops pipeline okay or you may go for GitHub actions okay something like that so it has got easy Integrations with all all these tools okay so it has got plugins for those okay so these are some of the reasons where why organizations will go for terraform okay and even from for a job prospect also it is good it may not be 100% might be a single resource W to terraform it is kind of added advantage in that skill set so organizations Now look for a person which have got multi skilled and all Cloud knowledge and all that and terraform is one of the kind of uh uh skill set in that okay and from topic wise uh we will cover everything these are taken from the uh exam the sorry from the terraform associate exam and extra topics are also added which are practical like real time scenarios also so the first uh section will be intro part which which will be kind of uh looking everything whatever all the topics in a very high level like maybe you can say as a kind of a 10,000 ft overview of all the things okay so it is you're coming the first level of all the things and then drill drill down on each level okay so terraform is main kind of a block kind of language okay it has got its own blocks okay so there are some there are some types of blocks so we will go through all the types of blocks so all the sections are for that the second one will be terraform block then resources block which is the main block okay to create resources in all or AWS anything then modules which is very important uh kind of sharing code sharing and all which all the organizations use so you will use it at some point when you do the migration this will be useful for reusing your code so whatever you have maybe you create a some code to create a a vnet okay a subnet some routing peering and all that stuff and once you done maybe after one month you have to do again so instead of writing the code again you can you can share the code in modules okay so these modules you can reuse okay and you can share these modules in Internet like in in in the terraform uh registry also you can share on your own okay you can share it in in your organization GitHub and all that okay so these are all uh this this is quite a very important resources topic modules topic okay and after that we will go to the next one is the terraform State okay so all we will we will see what is the state file and how terraform manages the information the cloud information inherently okay we'll see here in this section the section six is terraform expressions and functions how to kind of um you can say uh if you're getting some data from Azure okay how to extract certain things within that okay maybe expressions and all okay to get let's say your uh your vnet details and subnet details you want very specific thing in that the subnet cidr how to get it okay so the data might be a very maybe a a 10 or 20 line Json block something how to get that things and all so we will see that in the terraform expression how to how to get our desired field of data okay the next one will be terraform logging and debugging okay not that useful in day-to-day uh but on on on need basis on debugging or troubleshooting you will need that okay or when coordinating with the vendor and all for trouble shooting we may need this then we will see terraform Cloud Okay so might be your organization might be using terraform Enterprise or terraform cloud or something like that so this is a terraform Cloud we will see okay so terraform Enterprise also similar look and feel everything extra support and extra little bit what we say governance features are there in that okay so we will look into terraform Cloud which which initially learning around five uh user something it is free so we will look into that okay and then we will also integrate with Azure devops okay this I put it at end because it has nothing to do with our usually terraform it is not related to terraform as such but how once you you are fully aware of all the terraform how to now trigger the terraform automatically like your terraform code in a pipeline okay in a like in cicd pipeline which we say Okay integration and deployment pipeline how to do that okay so these are all the topics uh for uh which we will cover in this course okay and which are enough for the day-to-day work whatever your day to-day work will come will be mainly from [Music] uh will be mainly from this resources block terraform block terraform provider block and modules so these are the day-to-day like if I see my last couple of years how I worked with terap and all so the these three blocks are the most important one and the state block as well this terraform state so these these four topics are the core you can say of of our course okay okay which which are mainly used for day-to-day pure terraform point of view okay and in in actual realtime work then you will need to know if you have terraform Enterprise or Cloud okay but that is extra GUI and all that's not we we don't use that much but your coding or your writing all the code will be these four sections more than enough okay and triggering that in a pipeline also is there in real time okay but it is not a terraform topic as such uh it you cannot you won't find it in any terraform books or anything or in the any terraform course or these not part of the terraform associate exam as well this terraform Cloud this I have added externally added extra because this I felt this is needed for the real time like to do the job uh day in job okay so in this I Ed so go to that uh okay and what is terraform if somebody is asking and all so you already know you said ISC infrastructure as code okay so consider that before I like when I was not there how we used to do is let's say I created a I I created some resource okay I created a resource Group uh then inside that I created a vnet okay then a subnet and a VM and all uh so when consider that ISC is not there okay so I I I will do all that using my GUI okay portal as your as your cloud and then I will I will document that okay I I will generate the steps because usually in organizations there will be different teams one team will be the development and testing team and once they are done their project is done they will hand over the uh steps and all to the production team okay or who will build the like or operations team who will build the production environment okay so you have to document all those steps maybe in a Excel sheet or Word document or something like how to do what what are the sizing and all that stuff you have to do so that was the before ISC days how it was and when you create a create an environment okay over time like lot of changes go into that might be your initial documentation uh said it was the disk size needs to be 128 gig and standard dis okay but gradually within after 3 4 months and all when the project is going you change it to SSD okay premium SSD or something like that you change the size so you might forget to document those changes and all so a documentation was extensive before ISC okay because when you are giving those steps to a to some other team now to create a exact replica of it they have to know each and every step okay so you need extensive documentation and Handover and all that okay so that was kind of one of the pain point but once the infrastructure has code evolved okay so what you are doing your entire infrastructure you are depicting that that you're showing it that in in in a code in a codified language okay so you can do Version Control in that okay so any changes whatever you are doing in your infrastructure so you can you are all doing it in code like in in in couple of lines only you are you changing okay and then you don't need a lot of documentation as well okay so for example let's say yeah yeah so maybe for this example I can give okay so this is some this is a very simpler simple code to create a resource Group okay so it is like for this we don't need a lot of documentation to be there okay there are tools and extension where it can generate even the documentation as well but uh the code itself is so uh easy to understand or or uh we don't need extensive documentation like earlier so this is kind of a resource we are doing and this resource is Resource Group and it is creating some Resource Group this name and kind of location okay so this reduces our need of lot of documentation okay and similarly the Handover process and all got uh uh relaxed okay and eventually when the teams also got merged like in the devops okay where the development and operations will work hand in hand kind of thing then this again ISC helped a lot in that okay and terraform uh again we saw it is a declarative language like uh so just we saw the example here so we are not telling terraform that how to create the resource Group okay we are just telling okay this is we need we need a resource Group by the name this and this location okay how you create we don't care okay so that's why it is kind of a declarative language okay and so the terraform language is declarative describe an intended goal and it was started it was the initial release was in 2014 okay it was V 0.1 and Company got established in 2012 Hashi Corp is the name of the company and it has gone through many revisions 0.10 12 13 and all and still organizations are using 1.x Okay 1.3 1.5 and below that 0.14 also okay a lot of projects they're still there okay uh the new the recently in this month it got released 1.6.0 okay it is a beta VA release so

means it is it is released to General Public to test it out okay the current stable version is 1.5 something 5 it keeps on changing so no need to like remember the versions and all because our writing of the program and all is not that it this same program will work fine in 0.14 as well and 1.6 as well okay so unless you are doing a lot of complicated stuff and all that otherwise our routine day-to-day things which we do it in Azure and all that will work fine okay in 1.x whatever

1.x we will do 1 do take 1.1 or 1.2 or 1.3 it will all work fine okay so we will anyway we'll take the latest one whichever is available okay and a very major change happened in in the v 0.12 onwards okay earlier uh

the terraform was very bulky right whatever terraform and uh terraform you there is nothing to install or or or uh like how you install some software right so it is not like that it is just one executable one small executable like party or one one some okay like a notepad or something like a small executable that's it you don't have to install earlier uh V2 do earlier uh v12.0 previous to that the same executable had the capability to do AWS Azure gcp everything in the single executable file okay so that's why the size was very big okay and it was very slow so then the there their team uh did the redesign and it divided the terraform into two components mainly a terraform core and a terraform plugin okay so that has increased the speed and all that and the size of the terraform executable also very small now okay so so that's why whatever you are doing better advise to use anything greater than 0.13 okay this is itself is very old 2020 and all okay so whatever you can use 1.x is I would advise is enough okay 1 do anything is is good enough okay HCL is the company name Hashi Corp UHF is the language it uses hashicorp configuration language okay and it is a coding language for the terraform ISC and uh you can also do the program in Json but it is not that user friendly okay so terraform can you can use both the things okay so we will use HCL which is de facto standard now by the industry and all so this is kind of the HCL language okay and okay uh this I won't cover much this just some surveys happened where they showed that all the organizations are going towards multicloud and so that's why the the terraform is very helpful in that okay so the the support teams and the build teams and all they don't have to learn a lot of things so let's say if you have AWS and Azure both okay if terraform is not there then what you will do in azure you might do arm template or bicep okay or in AWS you will do cloud formation okay so there is or some clis and all that but if we have terraform we can use the same tool to create resources in Azure or AWS both okay so that's why organizations uh choose terraform whenever they're going for multicloud and all to save their uh knowledge kind of uh knowledge cost and all that thing if you see in training the teams for multiple tool instead of that stick to one tool and go for multicloud okay and pinpoints of point and click earlier in UI how we do okay so let's say in UI if we have to do the simple stuff itself we have one time and all it's okay okay if it a small task is given let's say if you have to create one Resource Group and all then that's fine you can you can go and click can you can create that yes but consider if you got a if you got a chance to do for like uh kind of 100 resource groups across multiple regions and all okay that will be painstakingly in UI and all and there are a lot of chances of mistake also in the GUI okay first of GUI it is slow and this is very small example we use while we create a resource but consider when you are creating a VM where lot of options are there logging and all that stuff sizing dis vnet which subnet okay all those stuff so it is you have to go through like 20 or 30 tabs and Fields and questionnaires and all to create that VM okay so that's why these are the some of the pain points of the point and click in in in in the UI way okay UI way works fine when the project is very small or you're doing it one time and all but it is not sustainable for longterm or or for big organizations or migrations and all that okay so and difficult to record infrastucture specification if multiple users are there in your team and who are working on the GUI and all that whoever whatever changes are being done and all it's difficult to document and all that consistently and prone to errors when you are repeating it across multiple environments okay and managing the life cycle this is again a really paino like uh when you you created some resources okay and after 6 months or after one year or two year you are in a different project somebody else came and many Handover happen so at some point they will they they won't even know okay what is this infra for what will be the impact if I delete it or decommission it okay so that's why managing the life cycle is difficult in the G GUI point and click way okay we are scared to even touch those infrastructure later what will be the impact we don't know what and if we delete it what will the impact okay difficult to share if you have to tell somebody to re rebuild the exact same thing again you have to give lot of steps and all to do okay so these are some of the major pain points and infrastructure drift maybe your documentation says 128 GB SSD or sorry 128 GB uh yeah SSD it can go to some some other thing maybe normal dis and all or after some time somebody did 256 6gb okay so infrastructure drifts are are possible in that okay so these are some of the pain points of point and click [Music] and infrastructure as code uh some of the main principles are the are that we saw it is a descriptive language okay and same code generates the uh the same source code generates the same binary and ISC model generates the same environment every time it is applied okay so if I am running this code this piece of code so it will create a resource Group name demo 001 okay so no matter how many times I'm doing so first time I I executed this code okay it created this Resource Group demo 001 in East us next time I am running the same code it won't create because it's already there okay so it is not going to do so no matter how many times I run that it it has done that okay so that's why it is uh reliable and if there is some in-house scripting based something we are doing and all so it is not guaranteed in that maybe some point it will fail and give error and all that okay uh yeah so whatever like how it this point says that in is model like how many times you are creating the environment the same code base will be applied and all okay so and the infu provisioned and managed using ioc can be on Prem Cloud networking storage anything we can do and infrastucture as code allows to manage infrastucture with configuration files rather than GUI okay whatever you will we will use is through the configuration files okay so going forward your your main uh this Tool uh the visual studio code will be one of your main tool which you will work a lot okay so this is one of the tool which you need to install okay in your laptop or in office also if you're doing that okay your your main you will you will use this so uh have you already kind of use this tool or shall I show you how to install and download I will I will have to install it on my confu oh okay so the code is the software is Visual Studio code okay it is free Visual Studio code so just type Visual Studio code it will from the Microsoft only okay download for Windows and Mac whichever is there okay so you can download all the Linux Mac and all whichever operating system you want and once you install it is just next it's a pretty very user friendly install only so I don't have to show download and all that you can do it on your own if you face an error let me know in that okay so once you do download that and all the next thing what we know like how I'm if I'm writing something the icon here it changed here the logo of the Hashi Corp company terraform it came here okay so so this tool has some intelligence or intelligent uh thing like whatever I'm writing I don't have to write the whole thing okay so let's say here I'm going to create a uh asure virtual Network okay so okay let's say so here automatically all the things will it will autop populate whatever things I'm I'm I'm doing okay s your rmore virtual underscore let's say virtual Network okay let me give some any any name and here inside that I don't have to remember okay I can press control and space bar and it will show me what all things are needed what things are optional here you can see it is showing this is optional parameter this is in that I can I can also see the documentation but it gives a lot of help okay so this is called the and here it is showing address space in a vet is a required mandatory parameter so I definitely have to give that okay and it is a list of string and all what how my the IP address will will look like okay something like that okay so it is kind of um and and something so these all things are autop populating for me I don't have to remember a lot of things okay so name also it is showing required and it is a string here required it is a string okay so how this is coming this is coming by the plugins Okay so sorry extensions so after you install and open the visual studio code for the first time you you go here in the extensions okay you go here in the extension and right now can I show you sorry I just download video Studio code right now yeah yes yeah yeah you can share your screen let me want to show me yeah where is the screen allow me to be to share it yeah one second I want to make your presenter yeah yeah you can see it now able to see yeah yes lovely yeah so open the visual studio code this is yeah okay so go to the left side you will see the bottom one bottom tag is there kind of bricks kind of left side top yeah yeah that one that one yes extensions Okay click click is fine right sorry yeah that is up to you yeah whichever yeah what is your preference it is all yeah anything yeah and here now in the extend s you can type uh type Hashi Corp h a s h i c o r p h a s i h s or or just type terraform maybe just let's see if terraform name terraform okay one second yeah so the second one okay the first one is maybe from some individual we don't need that we need that from the company so here it is showing company company and Hashi Corp tform this publisher has verified ownership of Hashi Corp so click that yeah install also Hashi Corp is there on the fourth one you can see Microsoft is also giving that Azure terraform and all so that no need we are directly installing the Hashi Corp one that is enough okay okay okay so now you can close the visual studio and again reopen it okay and here just type just click on the open folder on the left side there is a open folder button is there uh this one no open open folder okay um go to any folder wherever you will keep your code or anything with yeah or any maybe you can create a folder in yeah yes okay select that's fine okay yeah click on the trust the end click on that button yeah check mark sorry on that and yes I trust the author okay and here terraform um click on on the three button there on top yeah or or create a new file here so there is in the middle page you can see right new file ah yeah yes yeah so that is a new folder and new file so create do one thing create a new folder first oh yeah that's fine put escape button you can do okay and name name it day one something like that today is day one yeah you can yeah yes yeah so now click on the day one and then click the create the file okay yeah huh yes highlight that and click the plus button against file create new file yeah that one and give the name as main.tf m n you can give anything anything but TF okay so so now you see how the icon has changed automatically it identified as a terraform okay and just yeah so how to uh increase the make it yeah it's fine okay so uh you can see on the bottom right side it it is showing terao okay that one so this Visual Studio code now automatically detected that okay the user is going to write something of with terraform so automatically that extension or the language support is enabled okay so type just terraform just type t t RR in that and see how it automatically it will help you okay uh so just put tab there okay you can put tab button okay so now you do control and space bar there so it will show you what all things will go in that block okay so as I said terraform is a kind of a block like language okay so we we cannot have anything outside the block so everything in terraform is a block okay so we will see that this block anyway but I'm just showing you the tool now okay so today you at least you got the uh Visual Studio code open and the plugin is installed Okay so okay uh can you please share stop the sharing I will uh again enable Okay so this Tool uh this Visual Studio code uh you will you you are going to use okay you can in fact use notepad also that's fine but uh it doesn't it is not that practical to to write the kind of your program in a notepad and all okay you can see my screen right yes yeah okay so what kind of tools we need so that is one tool okay let me jump into this one we saw INF is benefits of ISC infrastucture as code now we will see one is consistency okay so whatever we are writing it is very easy to replicate and it will be consistent okay because the same code will be used okay again repeatability across you can use it multiple times okay so let's say you used to create a developer envirment maybe you want a similar uat environment a similar staging or something or a production so it's difficult it is easy to repeat in in the ISC okay and efficiency it is very quick and all okay this point I would I would say uh initially to get to the point first a working code that that is uh that kind of uh some time is needed but once the code is you created then it is very efficient okay so then it is very efficient to repeat and all multiple uh environment and all building cost wise also it is lower increase in quality sharing is very easy okay you don't have to share a lot of documents and screenshots and all that stuff you just have to share the code that's it okay uh and let me get to what all things we need here yeah okay so these are tools what we need and one more the first thing we would need is terraform okay so you can you can you can go to just type download terraform just type download terraform in Google and the first link which it comes developer Hashi Corp this one if can go to Windows or Linux whichever is there uh I think you are on Windows right hello yes yeah yeah sorry I thought I lost you uh if you're on Windows you can go on uh on the downloads one developer hash let me ping you the link okay I pinged you the link for that so for the windows one you can go to amd64 and you can download okay so it will be a zip file just unzip that file it only one single file will be there terraform exe that's it I download it on my local machine right oh yeah and then copy that file to your C Windows you you're on Windows right yes so yeah so then copy the file to C drive Windows system 32 okay you can idly put it anywhere and then create a path and but I'm telling the more simp simplistic way okay repeat again so I copi the file to C drive C drive uh Windows system 32 you can copy that file there in see Windows system 32 folder okay so let me see my file also yeah so my file is also here terraform dotexe file it is just 64 download that file I go to developer. has.com oh yeah I pinged you the link

developer. has.com terraform SL downloads okay and then you download that for Windows uh you can go amd64 and download mg 64 download it will download you a zip file just unzip that file only one single file will be there inside that zip so just copy that file and put it in C Windows system 32 that's it okay let me know once it is done you want me to download it right now oh okay yeah you can do it after also that's fine yeah okay let me yeah you can do it yeah you can do it right now itself okay let me sh screen one second where is the stop partipants yeah you can share your screen are you able to see my now yeah yes go to Windows and U go to the second tab windows I I want to download this is the file no no this is Mac one go to the second tab uh in the top Mac Linux Windows you can see right on the middle of the yeah go click on the Windows yeah and download the amd64 yeah okay I open oh yeah open yeah so this copy this file can copy that I extract before I copy no it is already extracted it's already the you can right click and copy this one and go to see Windows system 32 here windows system 32 yeah and just paste it there here okay now you open a command prompt in the Run yeah yes CMD in normal anything is fine yeah just open yeah and just type terraform uh space- v v for victory terraform space- V yeah enter yeah you can do also do terraform Dash help okay or maybe dash dash help here just check do Dash help help yeah so it is showing so now terraform is installed it is installed the latest version 1.5 do something right yeah so that's fine so we have we we have now terraform also installed okay so and also download a CLI do you have the AC CLI install be just type in Google as your CLI acli a download here where is the download yeah yes okay L us of the yeah yes correct that one 64 that one yeah 64 by yeah and save it yeah let it open that's fine okay it's MSI so we need to install this one next next next we just ask yeah just click accept and install yeah so this is why we are doing this is our connectivity to the Azure okay our uh terraform will connect to Azure right to create something or delete something so this will provide us the connectivity yes anyway let it run uh I will take you can stop sharing it okay okay what is zoom okay can see my screen right okay so this we have just did terraform we executed so terraform we installed so as you seen terraform kind of installation is not a big like even how you installing the aure sorry this a CLI right uh so it is not even like that it is much simpler than that you just have to download and copy it somewhere in wherever the path variable is there okay so it this one is done Visual Studio code we have done it okay we ex we installed the terraform extension as well done next is we need some kind of cloud subscription okay uh do you have any uh as your Cloud uh subscription right any pay you go or anything the yes I have I have my account I'm connected on it right now oh okay fine that that's enough okay anyway whatever we create we don't retain it for long we just we we are learning terraform as such okay so we will create resource let's say vnet or VM and all and once the code it it created we will anywh destroy it okay or if you create anything just ensure that those are deleted so that you won't incur a lot of cost in that so our whatever resource we create it will be there for just few minutes that's it okay so cost wise it will be very less next asure CLI is what we need and you are doing it now you're you're installing it uh AWS CLI we don't need because we are not going to learn AWS as such our more all the examples will be Azure ones okay uh again Google Cloud it is not needed git we will see towards the mid section I will let you know when we will need git okay because in the real life in the real time scenario uh git will be the one which will be used okay to to work in a team and all uh get is needed okay so these are these are all the tools which we would need so almost all all are done this we don't we excluded we don't need gcp we are not doing we don't need G I will let you know okay later towards the mid of the course okay any doubts Eric till now oh it's fine okay okay okay yeah so I just jump few of the slides because I just want to give you heads of what all software like I I want to make you kind of practical ready immediately okay because some of the theory anyway we can cover or it's not that big deal if we miss few Theory slides my main name of this two you are doing handson then that's my aim okay uh but from anyway from the knowledge point of view also we'll cover that all the things okay yes so uh yeah so this example because maybe by next week we start this project so yeah yeah yes like today's class is kind of a intro class okay tomorrow we will start doing our uh terraform code learning and creating small small things how to do the connectivity part to as that we will see and how to do in actual organization connectivity how you connect your terraform to the Azure and all we will see and all the all the ways how you can create connect that we all learn okay so tomorrow's one will be more practical so I'm today one is little bit less practical it is more intro kind of thing okay and uh yeah will just finish these two slides then we will we are done for the day Okay so today my aim was to just get you ready all all the tools and all okay so that that's done so terraform is Hashi instructure as code tool okay and Hashi cor has one more very good tool as well Hashi cor Packer I don't know if you have heard that tool or not Packer okay that tool is yeah Packer okay p k e r yes I I I I know Paka but I have not learned it yeah yeah so it is used to create image like one once your VM inside your VM maybe lot of softwares will be there right you install lot of software as a starting like you maybe some antivirus some things and all that stuff as a organization policies so it it can do all those things and it can create a golden image out of it Ami kind of azure sorry the AWS image machine image or your Azure image okay OS image it can create a VM image with all those things so for that Packer is is used and Packer also uses the similar kind of language this this whatever language we are seeing here it is called HCL Hashi cor configuration language so once you know terraform you will you will feel that okay Packer is also very similar like okay the the language syntax wise kind of thing okay then so iuss you will teach me Packer also sorry you will teach me Packer Packer no Packer is not there I'm just telling you the example once you know terraform like you can you you like almost no Packer also 30 40% in that yes when we done with this terap training you will make another training for Packer and the other automation Packer power shell also oh okay okay yeah sure sure no worries yeah we do that okay and so hashicorp is a terraform is hashicorp again infrastructure as code tool we saw and it lets us Define resources infrction in human readable so whatever you see here uh not sure if we have if you have worked with arm templates as your arm templates okay as your resource manager so that is kind of a Json template okay so I will show you how it looks like in in example let me see if it yeah here okay this is a very small we are seeing a resource Group okay so your arm template will something look like this okay which is not very user friendly which is not is not very kind of a intuitive Okay so but our terraform is HCl language based has it's its own kind of proprietary language this one which is more user friendly okay to read and and to get to know how in it is it is laid out and structure wise okay but uh Json wise definitely it's not not at all user friendly okay or human readable even uh Microsoft also when now people they're going for the bicep okay the Azure bicep which is much more similar to the terraform only once you done terraform when you will do bicep you will see okay it's all kind of terraform only like like they took all the good parts from terraform and they created the bicep okay so that that is also to make it more user friendly to move out from the arm templates okay so it these are all kind of declarative language and terraform can manage infact on multiple Cloud that we already saw these all for example here we are giving two example one is the a resource Group we are creating so what we are creating we are creating a resource okay and that resource is Resource Group so declare resource first this block type is resource resource Group give some name to this block this the second one is the name of this block okay the inside that whatever you do is all related to your resource Group whatever you're are going to create name location and all that okay and everything in terraform has to be inside some block you cannot have anything in between okay it will give error so whatever you are doing everything has to be enclosed in a block only okay so we will learn all the blocks whatever terraform has okay so for example here you it is creating AWS instance and inside that block there is one more block called Tags okay so so everything is a block in terraform and terraform uh has got a state file okay usually in other languages like anible or kind of uh arm templates as your CLI all that it doesn't have a existing uh information like how the uh how the resource was created how the golden truth was kind of kind of that golden copy of that okay or we can say kind of source of Truth okay that that was not there in in other languages they don't have that okay but in in terraform it it has that a concept called State file okay so the terraform State uh it it keeps the current uh kind of uh information of the resource whatever you created so for example we created a resource Group so it will it will keep all the information related to the resource Group in the state so that anything deviating let's say in back end Somebody went to the GUI and changed something related to the resource Group so it will immediately know because it will compare that with the the source of Truth which is the state file and it will know what all how it deviated okay yes we will see that in the subsequent sections when we go through that okay okay and this is not that much here so this slide quickly shows again the similar thing which we are highlighting so current provisioning processes like this if you have Azure AWS or gcp each one has got its own tools okay Azure has got a CLI arm template Powershell now bicep similarly for AWS AWS CLI cloud formation GCB different and all and if your organization is having at least two clouds let's say asure na AWS look how many tools the team has to be aware of in training and resourcing point of view you have to manage multip resources who knows AWS and who knows asure and all that okay and who knows this cloud formation and CLI arm template so it's very difficult so this one how the organization or terraform the their aim is to below whatever clouds are there there is one should be one common language terraform and you can whatever use to create the provisioning okay so their aim is like this okay a Common Language to create that resource so we are going to that okay tools and all is done supported okay so I think to yeah these are little bit more today okay tomorrow we will start this one okay uh terraform architecture we will start and we will start with the high level syntax and the blocks okay so I think Eric that's all for today 1 hour I think is almost over okay so today's session was more on very high level ISC benefits checking whatever our what topics we are going to learn and uh get you ready with the tools and all okay so that uh tomorrow we will start little bit handson on on on the blocks and all that okay how the variables how the things are there but uh it's not that complex okay the entire thing when when I learned as in from my day one I found like I I learned other things as well the python Java earlier Pearl and know Perl language and all Python and all but it is not that kind of effort intensive from learn learning point of view okay okay so you definitely after Yeah couple of weeks and your practice and all you will be kind of expert in that okay this PPT you can share it or for you or you have another one that have some yeah yeah yeah yeah fine no nothing I I will share it but the same PB I will follow it for the entire course okay all the all the slides are there okay so I will you can ping me your Gmail ID in that or or whichever mail ID I will share it it's in my Google Drive okay so I will so whatever resource yeah the sharing yeah got it okay I made your editor as well so in in this uh the entire folder the terraform 2023 September I will put slightly more resources as and when I found any links or notes and all okay which will be helpful later okay yes yeah so that so in this folder I will put all all those things so this is the slide also is there in that okay can refer that okay this like we have slide inside yeah yes in the in that folder the slide is there okay thank you and the week day we we have class also sorry the video week day we weekday what time is will be been like uh uh the similar time works for you if we want simar time it will be like uh 4 it will be afternoon right yeah because I done with my job at 5 but at 4 I can start my class because I already done 4 p.m. right okay let let me check the timing and I will ping you in the WhatsApp okay for the week day once let me confirm that okay because us to go every day yeah yeah sure sure okay so yeah what time you work tomorrow 8 8 a.m. CST tomorrow 8: a.m. CST if that works fine for you because I want us to do time with the time that you are up because you are in England right yeah yeah yeah yeah fine okay thank you Eric see you then byebye yeah you too bye byebye bye

2023-09-15 22:06

Show Video

Other news