Deployments are one of the most common Kubernetes objects and serve as a higher-level abstraction over ReplicaSets. They allow you to:
> Declare how many replicas of your application should run
> Define the update strategy (like rolling updates) when you need to change your application
> Roll back to previous versions if needed
> Automatically create and manage ReplicaSets
When you create a Deployment, Kubernetes automatically creates a ReplicaSet under the hood. The Deployment doesn't replace ReplicaSets but works as a higher-level abstraction that manages them.
*****
A) This is actually the job of the Kubernetes Scheduler, not Ingress objects. Ingress objects are used to manage external access to services in a cluster, typically through HTTP. They provide load balancing, SSL termination, and name-based virtual hosting.
B) This is the purpose of Secret objects, not ConfigMaps. ConfigMaps are designed to store non-sensitive configuration data in key-value pairs, while Secrets specifically handle sensitive information like passwords, tokens, and keys.
D) Monitoring and metrics collection are typically handled by tools like Prometheus, not ServiceAccount objects. ServiceAccounts provide an identity for processes running in pods, allowing them to interact with the Kubernetes API and other services.