Commit graph

31 commits

Author SHA1 Message Date
Xan Manning
077c9a3fd6 bugfix: k3s_runtime_config 2021-08-18 20:44:06 +01:00
Xan Manning
f198b45d58 used combined configuration from vars.yaml, removed duplicated task for control plane 2021-08-14 14:04:56 +01:00
Anes Belfodil
c0ec5ca930
Add advertised_address 2021-08-09 17:53:28 -04:00
Xan Manning
ba113bcd05 Fix primary control node delegation 2021-07-24 17:38:45 +01:00
Xan Manning
e90448f40b Updated systemd template to use token when joining a cluster 2021-07-24 17:21:31 +01:00
Yajo
4b42a9bf49 fix: restore clustering feature
For some weird reason, string booleans were set on `k3s_control_node` and `k3s_primary_control_node`, making their behavior non-obvious (for python `bool("false") == True`).

This fixes that problem, and BTW restores the ability to create clusters, which got lost with this bug.

After running the role against a cluster, see:

```sh
❯ ansible -i inventories/testing.yaml k8s_node -m command -ba 'kubectl get node'
vm0 | CHANGED | rc=0 >>
NAME   STATUS   ROLES                       AGE     VERSION
vm0    Ready    control-plane,etcd,master   9m19s   v1.21.2+k3s1
vm2 | CHANGED | rc=0 >>
NAME   STATUS   ROLES                       AGE     VERSION
vm2    Ready    control-plane,etcd,master   9m22s   v1.21.2+k3s1
vm1 | CHANGED | rc=0 >>
NAME   STATUS   ROLES                       AGE     VERSION
vm1    Ready    control-plane,etcd,master   9m22s   v1.21.2+k3s1
```

Now, after the patch:

```sh
❯ ansible -i inventories/testing.yaml k8s_node -m command -ba 'kubectl get node'
vm0 | CHANGED | rc=0 >>
NAME   STATUS   ROLES                       AGE    VERSION
vm0    Ready    control-plane,etcd,master   2m2s   v1.21.2+k3s1
vm1    Ready    control-plane,etcd,master   58s    v1.21.2+k3s1
vm2    Ready    control-plane,etcd,master   80s    v1.21.2+k3s1
vm1 | CHANGED | rc=0 >>
NAME   STATUS   ROLES                       AGE    VERSION
vm0    Ready    control-plane,etcd,master   2m2s   v1.21.2+k3s1
vm1    Ready    control-plane,etcd,master   58s    v1.21.2+k3s1
vm2    Ready    control-plane,etcd,master   80s    v1.21.2+k3s1
vm2 | CHANGED | rc=0 >>
NAME   STATUS   ROLES                       AGE    VERSION
vm0    Ready    control-plane,etcd,master   2m2s   v1.21.2+k3s1
vm1    Ready    control-plane,etcd,master   58s    v1.21.2+k3s1
vm2    Ready    control-plane,etcd,master   80s    v1.21.2+k3s1
```

@Tecnativa TT2541
2021-07-21 12:37:17 +00:00
Yajo
05e62b6344 fix: avoid failure with jinja2_native=true
If you run the role on an ansible configured with that setting, it will fail with:

    fatal: [vm0]: FAILED! => {"msg": "Unexpected templating type error occurred on ({% for host in ansible_play_hosts_all %}\n{% filter string %}\n{% filter replace('\\n', ' ') %}\n{{ host }}\n@@@\n{{ hostvars[host].ansible_host | default(hostvars[host].ansible_fqdn) }}\n@@@\nC_{{ hostvars[host].k3s_control_node }}\n@@@\nP_{{ hostvars[host].k3s_primary_control_node | default(False) }}\n{% endfilter %}\n{% endfilter %}\n@@@ END:{{ host }}\n{% endfor %}): sequence item 4: expected str instance, bool found"}
2021-07-19 09:26:57 +00:00
Michael Robinson
3006716f66
Case insensitive control node lookup 2021-05-29 14:26:50 -06:00
Xan Manning
f4fcd2897d Update test sequence for check mode, fixed check mode on cgroup test 2021-04-18 20:39:06 +01:00
Xan Manning
23054c76f6 Updated command modules to use cmd argument 2021-04-10 12:31:18 +01:00
Xan Manning
4326f4497d Renamed k3s_control_node_address -> k3s_registration_address 2021-03-14 16:29:14 +00:00
Xan Manning
1d93c2115d Cluster-init checks added, tidy up of task format 2021-02-28 16:48:23 +00:00
Xan Manning
62b2d7cb36 Typo bugfixes 2021-02-27 19:02:49 +00:00
Xan Manning
7e4a16e167 Pre-documentation work
- Restructured when and asserts
  - Standardise molecule call, add systemd config
2021-02-16 16:53:49 +00:00
Xan Manning
e7c714424c
Tiidy up and refactoring of tasks (#80)
* Tidy up and refactoring of tasks

  - `k3s_config_dir` derived from `k3s_config_file`, reused throughout the role
    to allow for easy removal of "Rancher" references #73.
  - `k3s_token_location` has moved to be in `k3s_config_dir`.
  - Tasks for creating directories now looped to caputure configuration from
    `k3s_server` and `k3s_agent` and ensure directories exist before k3s
    starts, see #75.
  - Server token collected directly from token file, not symlinked file
    (node-token).
  - `k3s_runtime_config` defined in `vars/` for validation and overwritten in
    tasks for control plane and workers.
  - Removed unused references to GitHub API.

* set_fact now uses FQCN

* re-pin molecule<3.2

* Command module now uses FQCN

* Added package checks for #72

* Reorder task files

  - Docker tasks moved into a separate directory for ease of removal #67
  - Bugfix: Control plane on alternate port didn't work.
  - Validation tasks grouped

* Fix Fedora tests

* Add optional documentation links to validations steps #76

* Removed jmespath requirement

* Fix issue with data collection

* Release candidate
2020-12-21 19:14:52 +00:00
Xan Manning
e25edbef3c rework documentation, change github link, replace deprecated variables 2020-12-16 11:02:15 +00:00
Xan Manning
34e2af3d47 Set embedded Etcd as stable, deprecate docker 2020-12-12 14:27:59 +00:00
Xan Manning
4afc2c8a5a Fixed data-dir configuration and draining of nodes. Added documentation. 2020-12-05 21:56:28 +00:00
Xan Manning
ebf32dbd99 v2 pre-release 2020-11-29 20:10:42 +00:00
Xan Manning
8c791cb611 Change terminology of tasks to remove "master" 2020-11-10 19:01:05 +00:00
Xan Manning
35b037c7ee Pre-FQCN breakage 2020-10-23 16:31:21 +01:00
Xan Manning
57b9a2a0be Moved to file based config, pre-FQCN, pre-update to documentation 2020-10-22 19:26:15 +01:00
Xan Manning
c743df868b Fixing ansible-linting, exclude name check for Travis-CI
This release also fixes:

  - #38 : removing the --disable-agent option. Please use node taints.
  - #39 : clarified where jmespath should be installed in README.md
2020-09-15 18:20:23 +01:00
Xan Manning
d53102dda3 Check mode support added 2020-07-25 17:39:01 +01:00
Xan Manning
848a5457ff Add option for unsupported single node with database backend. Issue #27 2020-05-30 15:16:20 +01:00
Xan Manning
6090071982 Bugfix, issue with HA build for joining new nodes 2020-05-25 17:57:43 +01:00
Xan Manning
9524b07df0 Fix joining nodes to an existing cluster 2020-05-25 16:25:09 +01:00
Xan Manning
e3301a59e4 Updated state tasks to dynamic include rather thn static import
This is an initial attempt to address issue #22, I have also included a
task to drain the node before deleting it.
2020-05-18 19:53:03 +01:00
Xan Manning
aa1a0a9620 Added option to provision multiple standalone k3s
Fixes #21
2020-05-16 20:18:20 +01:00
Xan Manning
09fc37e6ec Fixed provisioning of multi-master, need to test LB with k3s_control_node_address 2020-01-11 22:42:29 +00:00
Xan Manning
f2a3f75f08 Added some validation steps, fixed issue with checksum, introducing rootless
as an option, however this is experimental in both K3s and this role.
2019-12-22 18:54:25 +00:00
Renamed from tasks/preconfigure-k3s.yml (Browse further)