puppet-kubernetes
puppet-kubernetes copied to clipboard
Unable to set manage_package = false on kubernetes::node and client
::kubernetes::node::kubelet includes ::kubernetes::node and it then includes ::kubernetes::client and I have no way of passing manage_package = false to those classes do I ?
If you declare the class kubernetes::client before kubernetes::node::kubelet, it should work:
class {'kubernetes::client': manage_package => false}
class { 'kubernetes::node': manage_package => false, before => Class['Kubernetes::Client'] } class { 'kubernetes::client': manage_package => false, before => Class['Kubernetes::Node::Kubelet'] }
class { 'kubernetes::node::kubelet': address => '0.0.0.0', allow_privileged => true, api_servers => "http://kube-master-01.openstacklocal:8080", container_runtime => 'docker', }
Error: Duplicate declaration: Class[Kubernetes::Client] is already declared; cannot redeclare at /etc/puppet/modules/kubestack/manifests/kubernetes/minion.pp:58 on node kube-minion-01.openstacklocal
Since kubernetes::client is used in kubernetes::node, you need to declare it before kubernetes::node:
class { 'kubernetes::client': manage_package => false, }
class { 'kubernetes::node': manage_package => false, }
class { 'kubernetes::master': manage_package => false, }
I will make this clearer in the documentation also.