Configuration Management Flashcards

1
Q

Can you explain the key differences between push-based and pull-based configuration management systems?

A
  • Push-based systems push configuration changes from a central server to nodes (Ansible)
  • Pull-based systems have nodes periodically pull their configurations from a central server (Puppet)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the advantages and drawbacks of pull based configuration management systems?

A
  • ensure nodes are always in the desired state
  • might introduce latency in updates.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the advantages and drawbacks of push based configuration management systems?

A
  • offer simplicity and immediate control over changes
  • can face scalability challenges
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How would you decide which configuration management system to use for a given environment?

A

depends on:
* network architecture
* scalability requirements
* the desired trade-off between control and latency

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

How would you design a configuration management strategy that ensures consistency and flexibility while handling frequent updates and dynamic scaling?

A
  1. centralize configuration management using tools like Consul or etcd to store configuration values
  2. create configuration templates for services and utilize environment-specific variables
  3. automate the deployment of configuration changes through a CI/CD pipeline (consistency)
  4. Incorporate auto-discovery mechanisms in tools like Kubernetes or service mesh solutions for dynamic scaling
  5. Validate configuration changes and using version control for configuration templates
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Could you describe some effective strategies and tools you’ve used to detect and remediate configuration drift in large-scale environments?

A
  1. Puppet performs regular checks and alert when inconsistencies are detected
  2. Remediation can be automated using Puppet
  3. Use configuration management databases
  4. Use monitoring tools can help track changes and provide insights into the drift’s root causes
  5. Implement strong change management processes
  6. Periodically auditing configurations
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Can you discuss how you’d approach implementing immutable infrastructure using configuration management tools?

A
  • use tools like Terraform to provision infrastructure
  • use tools like Puppet for config management
  • employ version control to manage infrastructure code
  • create new images with the necessary updates, test them thoroughly, and then replace existing instances (Packer)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are the considerations for managing updates and patches for immutable infrastructure?

A
  1. Creation time
  2. Testing new images
  3. Replacing new images gracefully
  4. Use rollback strategies and blue-green deployments to minimize downtime during updates
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

How would you handle a subtle configuration drift in a complex distributed system?

A
  1. Compare configuration states across multiple nodes
  2. utilize advanced monitoring tools with anomaly detection algorithms to identify deviations from the desired configuration baseline
  3. Automated remediation scripts were triggered when drift was detected
How well did you know this?
1
Not at all
2
3
4
5
Perfectly