Merge branch 'master' of github.com:carpenike/ansible-role-k3s into carpenike/master

This commit is contained in:
Xan Manning 2020-02-27 18:16:49 +00:00
commit 84bf657f1c
2 changed files with 25 additions and 0 deletions

View file

@ -125,6 +125,7 @@ Below are variables that are set against specific hosts in your inventory.
| `k3s_node_ip_address` | IP Address to advertise for this node. | _NULL_ |
| `k3s_node_external_address` | External IP Address to advertise for this node. | _NULL_ |
| `k3s_node_labels` | List of node labels. | _NULL_ |
| `k3s_kubelet_args` | A list of kubelet args to pass to the server. | [] |
| `k3s_node_taints` | List of node taints. | _NULL_ |
| `k3s_node_data_dir` | Folder to hold state. | `/var/lib/rancher/k3s` |
| `k3s_tls_san` | Add additional hosname or IP as Subject Alternate Name in the TLS cert. | _NULL_ |
@ -155,6 +156,23 @@ If you are running k3s on systems with multiple network interfaces, it is
necessary to have the flannel interface on a network interface that is routable
to the master node(s).
#### Notes about `k3s_kubelet_args`
This parameter allows for assigning additional kubelet args to the server during
runtime. For instance, to use the Azure Cloud Controller, assign the following to
the master node's configuration in your host file.
Note, when using an external cloud controller as below, ensure that the native k3s
cloud controller is disabled by setting the `k3s_disable_cloud_controller` to `true`.
**YAML**:
```yaml
k3s_kubelet_args:
- cloud-provider: external
- provider-id: azure
```
#### Notes about `k3s_node_labels` and `k3s_node_taints`
Both these variables are lists that will be iterated on. The below example will

View file

@ -129,6 +129,13 @@ ExecStart={{ k3s_install_dir }}/k3s
{% endfor %}
{% endfor %}
{% endif %}
{% if k3s_kubelet_args is defined and k3s_kubelet_args is iterable %}
{% for arg in k3s_kubelet_args %}
{% for key, value in arg.items() %}
--kubelet-arg {{ key }}={{ value }}
{% endfor %}
{% endfor %}
{% endif %}
{% endfilter %}
{% endfilter %}