$ cat topics/advanced-devops--cloud

# Advanced DevOps & Cloud

---
> ### What is Platform Engineering?
> ### What is FinOps?
> ### What is Policy as Code?
> ### What is Chaos Engineering?
> ### What is Blue/Green Deployment?
> ### What is Feature Flagging?
> ### What is a Service Catalog?
> ### What is a Service Level Agreement (SLA)?
> ### What is a Service Level Objective (SLO)?
> ### What is a Service Level Indicator (SLI)?
> ### What is a Runbook?
> ### What is a Playbook in Incident Response?
> ### What is Observability?
> ### What is Tracing in Observability?
> ### What is a Sidecar Pattern?
> ### What is a Service Mesh Control Plane?
> ### What is GitHub Actions?
> ### What is a Self-Healing System?
> ### What is Canary Analysis?
> ### What is Infrastructure Drift?
> ### Difference between count and for_each?
> ### How to resolve Terraform State if it gets locked ?
> ### Terraform apply failed halfway, How do you resolve it ?
> ### A production resource was manually changed during an emergency. Terraform now wants to revert the change. What would you do?
> ### What is a Race Condition?
> ### What is Terraform State Corruption?
> ### Why do we store Terraform State Remotely?
> ### What is the use of DynamoDB when storing the State File Remotely?
> ### What are Provisioners and why are they not widely used?
> ### What is the difference between running Terraform and running it with Ansible?
> ### Where can we store the State File Remotely, and why don't we store it on GitHub?
> ### What is Terraform Taint and how is it useful?
> ### After Terraform Plan, one production server is going to be recreated. How will you troubleshoot it?
> **Inspect the plan:** Run `terraform plan` and identify why Terraform wants to replace the server. Look for either `-/+` or `+/-`, which indicate replacement. The order shows whether Terraform will destroy the existing resource before creating the replacement or create the replacement before destroying the existing resource.
> **Check configuration changes:** Review recent changes to arguments such as the AMI, subnet, instance type, or other replacement-triggering attributes.
> **Check immutable attributes:** Some resource attributes cannot be updated in place and require replacement.
> **Check state and real infrastructure:** Compare the Terraform configuration and state with the actual resource in the cloud.
> **Check recent changes:** Review code commits and any manual changes made through the cloud console.
> **Review lifecycle rules:** Check whether `create_before_destroy` or other lifecycle settings affect replacement behavior.
> **Validate the fix:** Make the required correction and generate a new plan.
> ### What changes are performed when we run Terraform Init?
> ### What is the difference between Arguments, Attributes, and Interpolation?
> ### What are Dynamic Blocks?
> ### How do you delete a specific resource while running Terraform Apply?
> ### How does Terraform resolve Resource Dependencies?
> ### Which command should you run to inspect and sync state with reality without changing actual resources?
> ### How do we protect Sensitive Variables in Terraform?
> ### What happens when you remove the middle item from a list of resources managed using Count?
> ### How do you stop managing an existing S3 bucket without deleting it?
> ### How do you protect a production Aurora PostgreSQL cluster against accidental deletion or replacement?
> ### What will Terraform Refresh do?
> ### How will you restore a Terraform State File if it gets accidentally deleted?
> Check whether S3 bucket versioning is enabled.
> Identify the last known-good version of the state object.
> Restore the appropriate version or download it as a recovery copy.
> Check the current state and backend configuration before resuming Terraform operations.
> Run a refresh-only plan and a normal plan to verify that Terraform correctly identifies the infrastructure.
> ### What happens if you do not use DynamoDB with a State File Stored Remotely in S3?