Wednesday, April 8, 2020

Till now, we have discussed custom resources and applying it for traditional clusters. Custom resources can be used with personal computing Kubernetes clusters such as those on windows. Two technologies made it possible for developers to overcome the reduced support on native development over Windows. First, the ability to specify insecure registry to house all the container images mean that the containers don’t require a login or have to go online to external registries to fetch their images. Second, the Kubernetes cluster for windows would accept this insecure registry as a parameter at startup to allow its orchestration framework to redirect all requests for container image lookups to the passed in registry. Together they helped the containers find and load their images for applications to run.
Kubernetes manifests can be applied across applications, services and charts. This makes it very powerful tool to add configmaps, secrets and change existing definitions.
It is not a full configuration management system  like SaltStack or a database. It’s limited set of Kustomization files provide Kubernetes specific customization. A tool for keeping it in sync with the deployments can work outside its scope since the kustomization files are declarative.
Configuration management software can be external to the Kubernetes cluster and work across clusters. Take Zookeeper for instance which is popularly used by applications hosted on the Kubernetes cluster. Zookeeper can work outside the cluster as a configuration management tool. Zookeeper can be used to implement dynamic configuration in a distributed application.  This is one of the basic schemes where each configuration is stored in the form of ZNode. Processes wake up with the fullname of ZNode and set a watch on it. If the configuration is updated, the processes are notified and they apply the updates.
Sometimes a configuration change is dependent others. For example, host and port may be known only afterwards. In this case clients can co-ordinate with a rendezvous node. The node is filled in with details as and when they become available. The workers set a watch on this node before they begin their changes. While Kubernetes implements coordination within its system, devops can use the zookeeper across Kubernetes clusters for configuration management. This brings versioning, syncing and change capture across the kustomization files that would have only been possible by bringing the redeployment through full development cycles involving source control. The configuration management system is also local to production and mission critical systems.

No comments:

Post a Comment