<p>I need to create and mantain some global variables accessible for applications running in all namespaces, because some tools/apps are standard in my dev cluster.</p>
<p><strong>For example:</strong></p>
<ul>
<li>APM ENDPOINT</li>
<li>APM User/pass</li>
<li>RabbitMQ endpoint</li>
<li>MongoDB endpoint</li>
</ul>
<p>For any reason, when i change/migrate any global variable, i want to change one time for all running applications in cluster (just needed restart pod), and if a create an &quot;global&quot; configmap and read in envFrom, i need to change/update the configmap in all namespaces.</p>
<p>Someone have an idea to do this? I thinked to use Hashicorp vault with specific role for global environments, but i need to adapt all applications to use Vault, and maybe have better idea.</p>
<p>Thanks</p>

mzibit
<p>There is no in-built solution in Kubernetes for it except for <a href="https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/#create-a-configmap" rel="nofollow noreferrer">creating a ConfigMap</a>, and use  <code>envFrom</code>  to define all of the ConfigMap's data as Pod environment variables, which will indeed require to update them separately for each namespace. So using HashiCorp Vault is a better solution here; one more option here can be trying to customize env with Kubernetes addons <a href="https://github.com/EmberStack/kubernetes-reflector" rel="nofollow noreferrer">like this</a>.</p>
