A) This statement is CORRECT. One of the key features of StatefulSets is providing stable network identities. CoreDNS automatically creates DNS entries for these pods following exactly this naming pattern, allowing for predictable addressing, which is crucial for applications like databases that need stable networking.
B) This statement is CORRECT. CoreDNS is highly extensible through its plugin architecture. It supports plugins that can modify DNS queries/responses (rewrite) and restrict access to specific domains. This capability makes CoreDNS a powerful tool for implementing DNS-based security policies within Kubernetes clusters.
C) This statement is INCORRECT. CoreDNS doesn't maintain a persistent database of historical IP addresses. Instead, it works with the current state of the cluster and receives updates from the Kubernetes API server about the current pod and service IP addresses. When pods are terminated or recreated, their old IP addresses are not preserved in any historical database by CoreDNS.
D) This statement is CORRECT. This is a standard Kubernetes DNS feature. Services can communicate across namespace boundaries using fully qualified domain names (FQDNs) that include the namespace in the format described.