* Implement kubeadm init,join for Debian OS family (PoC) with
the external etcd option set.
* Make certs/tokens management optional and depending on
the use_kubeadm var
* Do not delegate static pods and config management to kubeadm
and remove produced artifacts to be regenerated by ansible.
* Add new set of system pods manifests templates based on that kubeadm
produces by default and parametrize it by ansible vars
* Fix apiserver container logging to follow 12-factor apps
and scheduler/controller-manager logging setup
Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
Shorten deployment time with:
- Remove redundand roles if duplicated by a dependency and vice versa
- When a member of k8s-cluster, always install docker as a dependency
of the etcd role and drop the docker role from cluster.yaml.
- Drop etcd and node role dependencies from master role as they are
covered by the node role in k8s-cluster group as well. Copy defaults
for master from node role.
- Decouple master, node, secrets roles handlers and vars to be used w/o
cross references.
Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
etcd facts are generated in kubernetes/preinstall, so etcd nodes need
to be evaluated first before the rest of the deployment.
Moved several directory facts from kubernetes/node to
kubernetes/preinstall because they are not backward dependent.
This should make things a little more composable,
by making these roles meta roles that perform no
actions by default we allow each role to own its own
resources.