Top 100 Terraform Interview Questions with Answers

1.Can you give the definition of the Terraform?

 
A tool which we used to create, change as well as versioning the infrastructures. Specially with safe and efficiency is known as Terraform. It provides required functions to manage the solutions of in-house issues.

 

2.Can you give me anyone reasons for adopting Terraform and why it is so popular?

 
It runs the infrastructures as codes. This is the most popular reason to adopt Terraform. Terraform is very popular in the world of IT because it is added to the DevOps chain.

 

3.Can you tell me few reasons for choosing the Terraform for the DevOps?

 
Following are the most important reason for choosing the Terraform for the DevOps.

  • It is evident in for improving the quality as well as efficiency in the delivery of the software.
  • It has the facility of implementing various coding principle. It supports automation which helps us to run infrastructures as codes.

 

4.Can you tell me few Terraform’s notable features?

 
Following are few important features of the Terraform. They are,

  • Custom syntax is very friendly which helps to improve its efficiency
  • Visualize in-built infrastructure graphical features.
  • The ability to understand the relationship of the resource
  • Capability to break a config into small parts. This is for very easy to the organization for maintenance.

 

5.Can we update any new features and how?

 
Yes, we can update any new features. We can update new features with the help of projects which are open sourced.

 

6.Can you tell me about how Terraform works?

 
It creates a plan define implementation for attaining the preferred state. Then it executes the structure for described infrastructure building. As we change the configuration, terraform will decide what and where to change. Then it generates and executes the plans which is practical. Architecture which is based on the plugins helps the developers in the extending functions. Developers can easily write any new plugins.

 

7.Can you compile modified version of the current plugins?

 
yes, we can compile modified version of the current plugins.

 

8.Can you tell me about the application of the Terraform and list them?

 
The application of Terraform is wide. This is because of its facility to extend its abilities. Specially for the resource calculation. Following are few notable apps of the Terraform. They are,

  • Clusters of the self-service
  • Setup of the Heroku App
  • Disposable environment’s creation
  • Multi tiers apps development
  • Deployment of the multi-cloud
  • Software demos development
  • Resource schedulers

 

9.Can you tell me about new factors of latest v1.24.0, v1.25.0 Azure Terraform Provider?

 
We can be able to find various new resource of last version of the Terraform. This is new resources of the data. Certificate of the Azurerm_batch is the best example. New resources support management for the certificates in Azure batch. Also, it helps to manage the public IP as well as prefix in the network. We can easily find the improvement in services of azurerm_apps resources in last versions.

 

10.Can you tell me one data resource for the last version?

 
Azurerm_firewall is the data resources for the last version. It helps us to access the data for particular firewall. This particular firewall is already existing. The new version involves a lot in the bug fixes.

 

11.Can you tell me what is the format in which data source returns information?

 

JSON is the format in which data source returns the information.

 

12.Can you tell me one best example for the management software of the source control? Also, tell me what config you should use for the backend?

 
Git is the best example for the management software of the source control. We should define the data during run time. Specially for allowing backend config.

 

13.Which environment variable allow Terraform to know it is run in automation context? Also, tell me the special thing about default workspace?

 
TF_IN_AUTOMATION is the best environment. In this variable allow Terraform to know it runs in automation context. We can’t be able to delete the default workspace.

 

14.Can you tell me some versions controls which terraform supports?

 
The most supported version controls for the terraform is GitHub. The terraform ropes Bucket Cloud. Following are few hold up on the terraform. They are,

  • GitLab CE
  • GitLab EE.

 

15.Can you tell me about Modules?

 
It is just like jug of various resources which are jointly used. Root modules are must for each and every terraform. Specially to include the resources which is mentioned in .tf files.

 

16.Can you tell me the process involved in making object for one module which is available for other at high level?

 
Following process is followed for making object for one module. Specially, which is available for other module at high level.

  • We should define the output variables in resource config.
  • We should declare output variables for 1st module to use in config of 2nd.
  • We should create new key. Then ensure its equivalent to output of 1st module.
  • We need to create file ‘variable.tf’ of 2nd module.
  • Now setup input variable which is inside ‘variable.tf’. This file enables the dynamic config of resources in the module.
  • For ensuring availability of variables to another module, we need to repeat this.

 

17.Can you tell me about the components?

 
The Terraform logical division into the distinct structures have two distinct components. Terraform Core as well as Terraform Plugins are the two components. The core utilizes RPCs for the communication with the Plugins. Also, core offers diverse ways for discovering as well as loading the plugins based on requirements. Plugins represents implementation of specific service like bash, AWS & provisioner.?

 ?

18.Can you tell me the common components for Config Management systems?

 
Following are the common components for Config Management systems. They are,

  • Control
  • Identification
  • Accounting
  • Verification
?

 ?

19.Can you tell me the Ansible command which executes playbook?

 
Ansible-playbook is the ansible command which executes playbook.

 

20.Can you tell me about the init and reason for using ‘-input=false’ option during the init run?

 
It is control. We use this for initializing an operational index which contains the pattern files. It is 1st authority which we sprint after writing the new design. This happens even after cloning which we obtain from the account control. We can easily ans safely lope control various times. Init downloads required plugins as well as modules for config. ‘input=false’ prevents the Terraform from user prompting for the input.

 

21.Can you tell me about the import command and request for the use of HTTP data source?

 
It Imports existing, unmanage resources into Terraform config. GET is the request for the use of HTTP data source.

 

22.Can you tell me about the command which you deprecated for workspace? Also, tell me the options which informs terraform for using local directories for plugins?

 
Environment is the command which you deprecated for workspace. -plugin-dir= is the options which informs terraform for using local directories for plugins.

 

23.Can you tell me the format of rendering the taken templates and format of ansible files? Also tell me the command line for running backend config?

 
String is the format of rendering the taken templates. YAML is the format of ansible files. Terraform init is the command for running the backend config.

 

24.Give me one good benefit for using immutable deployment? Also, tell me where will you find the official modules for using with the Terraform?

 
We never patch the instances or upgrade it in-place. We can find the official modules for using with the Terraform on the module repository.

 

25.In import command, can you tell me about ADDR as well as ID files representation? Also, tell we how will you define the source of a template?

 
Terraform identifier is ADDR. Provider identifier is ID. We can define the source in two ways. They are,

  • in-line.
  • from file.

 

26.Are you able to add policies for open source for Terraform enterprise?

 
We can’t be able to add policies for open-sourced descriptions. Especially for Terraform Enterprise. We can’t be able to add policies for the pro version enterprises. We can contact outlook policies with the help of a fine version for the enterprise.

 

27.Can you tell me is it possible to have the callback terraform with Azure and how?

 
Yes, it is possible to have the callback for Terraform with Azure. We can callback terraform with Azure with the help of the Event Hubs. Azure provides this effortlessly for its users.

 

28.Can you list out few terraform competitors name?

 
Following are few terraform competitor’s name. They are,

  • Packer
  • Kubernetes
  • Ansible
  • Cloud Foundry

 

29.Can you tell me about provisioners which we use in the terraform?

 
We use provisioners for arranging servers and for other objects which are transportation. We use this for repairs. This models exactly performs the actions on restricted machine. Also, it performs on the distant machines.

 

30.Can you tell me about null resource?

 
Null resource will implement the resource life cycle average. But it takes no more extra actions. Trigger argument will permit some specific subjective values. This is when misrepresented sources reserve will replace.

 

31.Tell me the terraform CLI uses?

 
Terraform is very simple for employing CLI. It is a solitary CLI apps. This apps then takes subcommand just like “relate” / “plan”. Total list for the subcommands is steering at the left.

 

32.Explain about the Terragrunt?

 
It is very thin covering for the terraform which implements all the practices. This is mainly advocated by Terraform Up & the Running book. They established this Terragrunt obliging. This is because it encourages versioned modules. Also, diverse environments reusable specially with few useful features. It counts implementation of recursive code in the subdirectories.

 

33.Explain about the Terraform cloud?

 
It is SaaS. We can be able to hold up in place when we want to run Terraform. We can also run it in restricted machine. It will save as well as retrieve all condition files from the Terraform Cloud. It removes all complexities in many difficult and preserve our own Terraform files. Specially in the multi-team.

 

34.Can you tell me few major features name of the terraform?

 
Following are few major feature names of the terraform. They are,

  • Infrastructures as the code
  • Change Automation
  • Execution Plans
  • Resource Graph

 

35.Tell me about the Terraform D?

 
It is a plugin. It is available in many of the in-services systems & windows. Terraform init will search next dir by default for the plugins.

 

36.Can you tell me about count Terraform uses? Also, tell me how will you check terraform installed versions?

 
We want to use [count. index] for identifying current iteration for the script. For testing current version, we should commence the window power shell. Then we can be able to check the terraform -version.

 

37.Explain about the Terraform provider?

 
We use the terraform for managing and informing the infrastructure resources. These resources are just like VMs, bodily machines, containers etc. It is accountable of API interactions as well as revealing resources.

 

38.Explain about the Terraform in the AWS?

 
Terraform has the capability to produce the “infrastructure as the code”. This tool will compare the AWS Cloud Formation. It permits us for producing an updated story of our AWS infrastructure.

 

39.Can you use Terraform for the on-prems infrastructure?

 
Yes, we can use Terraform for the on-prems infrastructure. We have many obtainable providers. We can choose based on our dependency. Also, most of the client Terraform build providers for their selves. All they want is API.

 

40.Can you tell me about LAC?

 
LAC refers to scheme where the developers will run and provision all the computer data centers mechanically. This is instead of getting physical process.

 

41.Can you tell me when using TEF API for resources provision, either history will be same just like it is on web?

 
Yes. It is similar just like it is on the web. This is because UI is very residential which keeps API as a base. So, the history in UI will avail during API and other methods around.

 

42.Can you tell me whether Terraform will support the themes?

 
In Terraform v0.3.1 version, it supports the Gtk themes. “cp/usr/wherever/THEMENAME/gtk/gtkrc $HOME/.gtkrc” comment is used to enable the gtk themes in system. If you encounter with some errors while opening theme files or during editing? Then .gtkrc is mandatory. Also, after editing, we should attach “pixmap_path/usr/wherever/THEMENAME/gtk”. Specially in starting of file name. Now, we can load the theme during startup.

 

43.Can you tell me the primary responsibilities for the Terraform Core?

 
The Core is binary statically compiled. It is written with the help of Go programming language. This compiled binary provides the users an entry point. Following are some of the primary responsibilities for the Terraform Core. They are,

  • Plan execution.
  • Resources of the state management
  • Communication with the plugins via RPC
  • ICF to read and interpolate of config files as well as modules

 

44.Can you tell me primary responsibilities for provider as well as provisioner plugins?

 
Following are few primary responsibilities for the provider plugins. They are,

  • Resource definition which maps to the particular services
  • Authenticate the infrastructure provider
  • Initialize the libraries which is used to make API calls
  • Primary responsibility for the provisioner is to execute the commands as well as scripts. Specially on the specific resources. This is after creating or its destruction.

 

45.Explain how Terraform helps to discover the plugins?

 
“Terraform init” helps the Terraform to read config files. Specially in work directory. Then it finds necessary plugins as well as search to install the plugins. Specially in various locations. Also, terraform downloads added plugins at this time. It decides version of plugin for using as well as writing a lock file. This is to ensure Terraform uses the same versions.

46.Can you tell me the types of the plugins?

 
There are three kinds of plugins. They are as follows.

  • Providers by the HashiCorp
  • Provisioners in-builts
  • 3rd party providers as well as provisioners.
    •  

      47.Can you tell me the various behavior of plugins during the discovery?

       
      The plugin behaviors depend on its type. In-builts provisioner is always available at binary. The providers by the HashiCorp will automatically download. If it is not installed already? 3rd party providers as well as provisioners installed it manually.

       

      48.State the difference between the Terraform as well as CloudFormation?

       
      CloudFormation covers all the bits as well as parts of the AWS. But Terraform covers very important resources of the AWS. Terraform can be able to provision the infrastructure for other providers & 3rd party services.

       

      49.Can you tell me the uses for apply command?

       
      We use this apply command for applying the changes which is required. Specially for reaching desired config state. Even for the action sets which are predetermined and generated by execution plan.

       

      50.What command will you use for destroying managed infrastructure?

       
      We use “terraform destroy” for destroying the managed infrastructure.

       

      51.Can you tell me some commonly used Terraform Commands?

       
      Following are some of the most commonly used terraform commands. They are,

      • Console
      • Apply
      • destroy
      • fmt
      • env
      • graph
      • get
      • output
      • Init
      • version
      • validate
      • Workspace

       

      52.Can you tell me some providers used in Terraform?

       
      Following are some providers which we use in Terraform. They are,

      • IaaS services.
      • PaaS services.
      • SaaS services.

       

      53.Give me some example for Iaas services?

       
      Following are some of the examples for IaaS services. They are,

      • AWS
      • GCP
      • OpenStack
      • Microsoft Azure

       

      54.Give me some example for SaaS and tell me one perfect example for PaaS service?

       
      Following are the best example for SaaS Services. They are,

      • Cloudflare
      • Terraform Cloud
      • DNSimple
      • Heroku is the best and perfect example for the PaaS services.

       

      55.Give me few Built-in Provisioners which are available in the Terraform?

       
      Following are few Built-in Provisioners which are available in the Terraform. They are,

      • file
      • chef
      • local-exec
      • habitat
      • remote-exec
      • puppet
      • salt-masterless

       

      56.Can you list me few features of Terraform could?

       
      Following are features of Terraform cloud. They are,

      • SAML singles sign on
      • Audit logging

       

      57.Tell me about HCL in Terraform?

       
      HCL is the short form of HashiCorps Configurations Language. This is config language which is built by the HashiCorp. We use this to build structured config language. It is man as well as machine friendly. Specially to use with the command lines tool. But targeted towards the servers, DevOps tools, etc.

       

      58.Can you tell me using which language Terraform is coded? Also, tell me how will you manage various versions of the Terraform?

       
      Terraform is open-sourced tool. HashiCorp created this tool. It is coded in Go language. We can easily manage various versions of the Terraform. Specially with the help of Tfenv file.

       

      59.Tell me how will you recover failed apply, specially where resources are provisions same time others are not?

       
      Easily we can be able to recover from failed apply. We should use r rang from using –force. Then we need to manually remove the resources and clean S3 states files. Then clean dynamic DB lock.

       

      60.Explain how will you deal the versioning in the Terraform?

       
      We should use semantic versioning Model. Then we need to use apply with the versioned modules or tags.

      61.Can you tell the list of files which are being processed by the terraform?

       
      Following are the few list of files which are being processed by the terraform. They are,

      • .tf
      • .tf.json

       

      62.Can you tell me how to avoid login credentials with hard coding when we create a VM in a Terraform?

       
      We can be able to store them very securely in the Azure Keys Vault. Even we can use the Managed Services Identity when we use Active Azure Directory.

       

      63.Tell me whether you can force ‘apply’ for running without the necessary of interactive entries of ‘yes’? Just like kick off Terraform run through Jenkins?

       
      Yes. We need to use ‘-auto-approves’ flags. Specially when we face issuing in running without the necessary of interactive entries of ‘yes’.

       

      64.Can you able to lock the Module versions in Terraform?

       
      Yes, we can be able to lock the module versions in Terraform. If we are using Module Registry in Terraform as source? Then we can use ‘version’ attribute. Specially within modules in Terraform config files. If we use GitHub repositories as source? Then we can easily specify the branches as well as versions. Specially within queries string with the help of ‘?ref’.

       

      65.Can you tell me does Azure VM scales sets support fully? Also, tell me does terraform supports the Azure functions?

       
      Yes. Azure VM Scales Sets supports fully. It is immutable computing layer which is very recommended. Yes. Terraform supports all of the Azure functions.

       

      66.Can you tell me how IAS helps?

       
      With the help of IAS we can be easily uses provision as well as apply the infrastructure config. It is just by standard workflow. It is across the providers like AWS, Azure, GCP etc. It is just by binding with standard syntax.

       

      67.Can you explain about day 0 & 1 activities?

       
      It refers to life cycle of infrastructures. The Day 0 prefers the code which provisions as well as config build initially. The Day 1 prefers the OS & app config which follows after initial build.

       

      68.Explain about the multiple cloud deployment?

       
      It means provisioning infrastructures into various cloud environments. This is to increase fault tolerance for your apps.

       

      69.Can you tell me how Terraform is useful?

       
      Terraform is tool which is mainly used for building, altering, and versing the infrastructure. It is safe as well as effective. It can be directly exist as well as accept the service providers. This is along with the convention in-houses solutions.

       

      70.Explain about the RPC in the Terraform?

       
      RPC means “Remote Procedures Calls”. In Terraform core it is use for communicating with the plugins. It provides multiple diverse ways for discovering. Also, loading the plugins based on requirements.

       

      71.Can you tell me why we prefer DevOps with Terraform?

       
      We prefer DevOps with Terraform because of its efficiency as well as safety. Specially for the delivery process of the software. Also, it brings power of the automation as well as extends its supports for IAC. It supports all coding type principles. This makes very dynamic as well as robust at same time.

       

      72.Can you tell me the command for manual taint resource in the Terraform?

       
      Following command is used to taint resource manually. It is taint resource.id This command modifies all state marketing files which it tainted.

       

      73.Can you tell me what will happen once we mark a resource as tainted?

       

      Once we mark a resource as tainted, it destroys as well as recreates when next apply will come into action.

       

      74.Can you tell me the command which is used to access current workspaces in config file?

       
      Following command is used to access current workspaces in config files. It is ${terraform.workspace}

       

      75.Can you tell me about the arguments which is used to modules in configuration?

       
      source & version module “consul” { source = “hashicorp/consul/aws” version = “0.1.0” }

       

      76.Can you tell me the code for accessing output variables from modules?

       
      Following code is used for accessing output variables from modules module..

       

      77.Can you tell me about the Child modules?

       
      A summoned module by next config is frequently known as “Child Module”.

       

      78.Can you tell me what to do with the Terraform which we can’t do with APIs?

       
      We can define infrastructure config in terraform. Then we can implement or create these config in Terraform automatically. Also, we are allowed to compare Terraform with similar solutions. It is just like AWS CloudFormation, OpenStack Heat, etc.

       

      79.Can you tell me how terraform uses packer images?

       
      When we configure terraform for compute, it uses packer images. This is just to provision the instance. Specially without any manual configuration.

       

      80.Can you tell me about variables in the terraform?

       
      We can be able to define the terraform variables in infrastructure plan. But it is prefered to store in its own files. All the files in the terraform directories will use this .tf automatically. Specially it loads during the operations.

       

      81.Can you tell me about the input as well as output variables?

       
      When the property of the input is yes, then it is input variable. We can get the value from external sources. It is just like call flow of the Architect. When the property of the output is yes, then it is output variable

       

      82.Call you tell me about the local terraform?

       
      Each and every local value will assign a name for expression. We can be able to use this many times within the module. Specially without repeating this.

       

      83.Explain about the variable factor?

       
      The variable factors will change based on output. It means more we get when there is increase in production. Similarly, less we get when there is decrease in production.

       

      84.What are the factors which directly used with production?

       
      Following are the factors which directly used with production. They are,

      • Labor
      • Raw materials
      • Energy

       

      85.Explain about the terraform Sentinel?

       
      This policy will define the rules which restrict resources provisioning. Terraform enforces this policy between plan as well as apply.

       

      86.Explain about the working of the terraform state?

       
      Automatically terraform stores the state about the managed infrastructure & config. After that terraform used this to map the real resources for configuration. It will keep in track of the metadata. Also, it improves the large infrastructure performance.

       

      87.Explain about the Tfstate files?

       
      This file contains more information about infrastructure provisioning which is managed by the terraform. Whenever there is a change in config file, it will automatically determine the config part which we create already. Then it changes the file based on the requirements.

       

      88.Can you tell me the command which is used for testing and executing terraform script?

       
      For running test, we must provide terraform fileas well as Go test. After that simply call the go test. Then the terratest will take care of the initing as well as applying our infrastructure. This will perform some tests and then it destroys.

       

      89.Can you tell me about the loops in terraform?

       

      Terraform provides many various looping constructs. Each of them intends to be used in various scenario. There are many looping structures available in the terraform.

       

      90.Explain about the Tfvars file?

       
      This extension is in root folders of environment. It defines the values to the variables. .tf uses the modules for declaring them. Some peoples apply tfvars files for modules and tf files for root modules.

       

      91.Can you explain about the building blocks in the terraform?

       
      Terraform uses very limited top-levels block types. These block types are blocks which appears outside any blocks in config files. Many terraform features implement top-levels blocks.

       

      92.What are the features which implements the top-levels blocks?

       
      Following are few features which implements the top-levels blocks. They are,

      • Resources
      • Data sources
      • Output values
      • Input variables

       

      93.How terraform lock the files?

       
      If the coding supports backend? Then the terraform locks our state. This is for all the operations which code the state. It prevents others. Specially from acquiring all the lock as well as potentially corrupting our state.

       

      94.When will the state lock take place?

       
      State locking will happen automatically. Specially on all the operations which could code the state. Also, no message will appear when this happens.

       

      95.How will you release this terraform lock?

       
      We can easily unlock the state by manual. It won’t modify our infrastructure. This manual command will remove lock of the state. It is just for current config.

       

      96.Can you tell me what will happen when you delete the state file?

       
      When we delete the state files in terraform Items will be removed from the state. Also, it doesn’t physically destroy.

       

      97.Can we store any secrets in the plain text?

       
      No, we should not store any secrets in the plain text.

       

      98.Can you tell me how to secure the terraform?

       
      We should use Terraform backend which supports the encryption. We should use the environment variables, secretly store the securely pass into our Terraform coding.

       

      99.Explain about the flatten Function?

       
      It takes list & replaces any of the element which are lists. Specially with flattened sequence for list contents.

       

      100.Can you tell me about the backend in the terraform?

       
      It determines about the state loading and operating. It is just like how apply executes. This abstraction will enable the non-local files states storage and remote execution, etc. It uses “local” backend. It is normal behaviors of the Terraform.

       

      January 24, 2021
© 2019 Hope Tutors. All rights reserved.

Site Optimized by GigCodes.com

Request CALL BACK