- Dec 13, 2016
-
-
Bogdan Dobrelya authored
Also place in global vars and do not repeat the kube_*_config_dir and kube_namespace vars for better code maintainability and UX. Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
-
- Dec 12, 2016
-
-
Bogdan Dobrelya authored
-
Bogdan Dobrelya authored
* For Debian/RedHat OS families (with NetworkManager/dhclient/resolvconf optionally enabled) prepend /etc/resolv.conf with required nameservers, options, and supersede domain and search domains via the dhclient/resolvconf hooks. * Drop (z)nodnsupdate dhclient hook and re-implement it to complement the resolvconf -u command, which is distro/cloud provider specific. Update docs as well. * Enable network restart to apply and persist changes and simplify handlers to rely on network restart only. This fixes DNS resolve for hostnet K8s pods for Red Hat OS family. Skip network restart for canal/calico plugins, unless https://github.com/projectcalico/felix/issues/1185 fixed. * Replace linefiles line plus with_items to block mode as it's faster. Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com> Co-authored-by: Matthew Mosesohn <mmosesohn@mirantis.com>
-
Alexander Block authored
-
Alexander Block authored
At least the OS images from Azure do not grow the root FS automatically.
-
Alexander Block authored
It actually slows down things dramatically when used in combination with Ansible.
-
Alexander Block authored
Some systems (e.g. CentOS on Azure) have requiretty in sudoers which makes pipelining fail.
-
- Dec 09, 2016
-
-
Bogdan Dobrelya authored
In order to enable offline/intranet installation cases: * Move DNS/resolvconf configuration to preinstall role. Remove skip_dnsmasq_k8s var as not needed anymore. * Preconfigure DNS stack early, which may be the case when downloading artifacts from intranet repositories. Do not configure K8s DNS resolvers for hosts /etc/resolv.conf yet early (as they may be not existing). * Reconfigure K8s DNS resolvers for hosts only after kubedns/dnsmasq was set up and before K8s apps to be created. * Move docker install task to early stage as well and unbind it from the etcd role's specific install path. Fix external flannel dependency on docker role handlers. Also fix the docker restart handlers' steps ordering to match the expected sequence (the socket then the service). * Add default resolver fact, which is the cloud provider specific and remove hardcoded GCE resolver. * Reduce default ndots for hosts /etc/resolv.conf to 2. Multiple search domains combined with high ndots values lead to poor performance of DNS stack and make ansible workers to fail very often with the "Timeout (12s) waiting for privilege escalation prompt:" error. * Update docs. Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
-
Bogdan Dobrelya authored
Add upload tag allow users to exclude distributing images across nodes when running with the download tag set. Add related tags and update docs as well. Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
-
Alexander Block authored
-
Matthew Mosesohn authored
Version 1.9 has reduced verbosity for federation dns queries which flood container logs.
-
Alexander Block authored
-
Alexander Block authored
-
Bogdan Dobrelya authored
Add tags to allow more granular tasks filtering. Add generator script for MD formatted tags found. Add docs for tags how-to. Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
-
Alexander Block authored
This deletes everything related to the cluster and allows to start from scratch.
-
Aleksandr Didenko authored
This will allow to use '-e docker_version=1.12' in ansible playbook execution. It's also backward-compatible and will work with floating docker_version format in custom yaml files. Closes #702
-
- Dec 07, 2016
-
-
Dan Bode authored
The variale etcd_access_addresses is used to determine how to address communication from other roles to the etcd cluster. It was set to the address that ansible uses to connect to instance ({{ item }})s and not the the variable: ip_access which had already been created and could already be overridden through the access_ip variable. This change allows ansible to connect to a machine using a different address than the one used to access etcd.
-
Matthew Mosesohn authored
Fixes: #669
-
Bogdan Dobrelya authored
Override GCE sysctl in /etc/sysctl.d/99-sysctl.conf instead of the /etc/sysctl.d/11-gce-network-security.conf. It is recreated by GCE, f.e. if gcloud CLI invokes some security related changes, thus losing customizations we want to be persistent. Update cloud providers firewall requirements in calico docs. Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
-
Aleksandr Didenko authored
When running legacy calicoctl we do not specify calico hostname in calico-node container thus we should not specify it in CNI config. Also move 'legacy_calicoctl' set_fact task to the top.
-
fen4o authored
kube-controller-manager's cluster signing cert and key points by default to not existing `/etc/kubernetes/ca/ca.pem` and `/etc/kubernetes/ca/ca.key` [docs][1] [1]: http://kubernetes.io/docs/admin/kube-controller-manager/#options
-
- Dec 06, 2016
-
-
Aleksandr Didenko authored
In new `calicoctl` version nodes peering with routers is broken. We need to use predictable node names for calico-node and the same names in calico `bgpPeer` resources and CNI.
-
Aleksandr Didenko authored
New calicoctl does not support --detach=false option, so we should use a recommended way to run calico-node service: http://docs.projectcalico.org/v2.0/usage/configuration/as-service Closes #674, #675
-
Matthew Mosesohn authored
ipv4 forwarding gets broken when restarting networking, which breaks all networking for all pods.
-
- Dec 05, 2016
-
-
Matthew Mosesohn authored
-
- Dec 03, 2016
-
-
Chad Swenson authored
-
- Dec 02, 2016
-
-
ant31 authored
-
- Nov 29, 2016
-
-
Sebastian Melchior authored
-
- Nov 28, 2016
-
-
Yuriy Taraday authored
Fixes #655. This is a teporary solution for long-polling idle connections to apiserver. It will make Nginx not cut them for the duration of expected timeout. It will also make Nginx extremely slow in realizing that there is some issue with connectivity to apiserver as well, so it might not be perfect permanent solution.
-
Bogdan Dobrelya authored
* Add an option to deploy K8s app to test e2e network connectivity and cluster DNS resolve via Kubedns for nethost/simple pods (defaults to false). * Parametrize existing k8s apps templates with kube_namespace and kube_config_dir instead of hardcode. * For CoreOS, ensure nameservers from inventory to be put in the first place to allow hostnet pods connectivity via short names or FQDN and hostnet agents to pass as well, if netchecker deployed. Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
-
- Nov 25, 2016
-
-
Bogdan Dobrelya authored
* Add dns_replicas, dns_memory/cpu_limit/requests vars for dns related apps. * When kube_log_level=4, log dnsmasq queries as well. * Add log level control for skydns (part of kubedns app). * Add limits/requests vars for dnsmasq (part of kubedns app) and dnsmasq daemon set. * Drop string defaults for kube_log_level as it is int and is defined in the global vars as well. * Add docs Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
-
Aleksandr Didenko authored
We no longer need to use v0.22.0 for calicoctl since Kargo has support for new calicoctl CLI format. Also fixing condition logic for calico pool task.
-
- Nov 24, 2016
-
-
Bogdan Dobrelya authored
When download_run_once with download_localhost is used, docker is expected to be running on the delegate localhost. That may be not the case for a non localhost delegate, which is the kube-master otherwise. Then the dnsmasq role, had it been invoked early before deployment starts, would fail because of the missing docker dependency. * Fix that dependency on docker and do not pre download dnsmasq image for the dnsmasq role, if download_localhost is disabled. * Remove become: false for docker CLI invocation because that's not the common pattern to allow users access docker CLI w/o sudo. * Fix opt bin path hack for localhost delegate to ignore errors when it fails with "sudo password required" otherwise. * Describe download_run_once with download_localhost use case in docs as well. Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
-
- Nov 23, 2016
-
-
Bogdan Dobrelya authored
Use cloud-init config to replace /etc/resolv.conf with the content for kubelet to properly configure hostnet pods. Do not use systemd-resolved yet, see https://coreos.com/os/docs/latest/configuring-dns.html "Only nss-aware applications can take advantage of the systemd-resolved cache. Notably, this means that statically linked Go programs and programs running within Docker/rkt will use /etc/resolv.conf only, and will not use the systemd-resolve cache." Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
-
Artem Panchenko authored
-
Bogdan Dobrelya authored
W/o this patch, the "Download containers" task may be skipped when running on the delegate node due to wrong "when" confition. Then it fails to upload nginx image to the nodes as well. Fix download nginx dependency so it always can be pushed to nodes when download_run_once is enabled. Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
-
- Nov 22, 2016
-
-
Aleksandr Didenko authored
When setting permission for containers download/upload dir we're using `ansible_ssh_user`. But if playbook is executed without user being explicitly set `ansible_ssh_user` may be undefined. In such situations dir ownership will default to `ansible_user_id` Closes: #644
-
Bogdan Dobrelya authored
According to http://kubernetes.io/docs/user-guide/images/ : By default, the kubelet will try to pull each image from the specified registry. However, if the imagePullPolicy property of the container is set to IfNotPresent or Never, then a local\ image is used (preferentially or exclusively, respectively). Use IfNotPresent value to allow images prepared by the download role dependencies to be effectively used by kubelet without pull errors resulting apps to stay blocked in PullBackOff/Error state even when there are images on the localhost exist. Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
-
Bogdan Dobrelya authored
Pre download all required container images as roles' deps. Drop unused flannel-server-helper images pre download. Improve pods creation post-install test pre downloaded busybox. Improve logs collection script with kubectl describe, fix sudo/etcd/weave commands. Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
-
- Nov 21, 2016
-
-
Paweł Skrzyński authored
-