add/remove admin node pool (#556)

This commit is contained in:
D. Lee 2023-02-04 19:17:05 -08:00 committed by GitHub
parent 2c37231393
commit 51b44563c8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 36 additions and 3 deletions

View File

@ -3,14 +3,19 @@ project_name: "default"
main_node_size: "s-1vcpu-2gb" main_node_size: "s-1vcpu-2gb"
crawl_node_size: "c-4" crawl_node_size: "c-4"
admin_node_size: "s-4vcpu-8gb"
droplet_region: "sfo3" droplet_region: "sfo3"
enable_admin_addons: true
node_pools: node_pools:
- name=main-app;size={{ main_node_size }};label=nodeType=main;count=2 - name=main-app;size={{ main_node_size }};label=nodeType=main;count=2
- name=crawling;size={{ crawl_node_size }};label=nodeType=crawling;taint=nodeType=crawling:NoSchedule;auto-scale=true;min-nodes=1;max-nodes=3;count=1 - name=crawling;size={{ crawl_node_size }};label=nodeType=crawling;taint=nodeType=crawling:NoSchedule;auto-scale=true;min-nodes=1;max-nodes=3;count=1
- "{% if enable_admin_addons %}name=admin-app;size={{ admin_node_size }};label=nodeType=admin;count=1{% endif %}"
enable_admin_addons: true
admin_node_pool:
name: admin-app
size: s-4vcpu-8gb
label: nodeType=admin
count: 1
db_name: "{{ project_name }}" db_name: "{{ project_name }}"
k8s_name: "{{ project_name }}" k8s_name: "{{ project_name }}"

View File

@ -106,6 +106,34 @@
changed_when: false changed_when: false
when: cluster_check.stdout.find(k8s_name) == -1 when: cluster_check.stdout.find(k8s_name) == -1
- name: d_ocean | k8s | test for existing k8s cluster's node pools
ansible.builtin.command: doctl kubernetes cluster node-pool list {{ k8s_name }}
changed_when: false
failed_when: false
register: cluster_nodepools_check
- name: d_ocean | k8s | create a admin node pool in the cluster {{ k8s_name }}
# skip_ansible_lint
ansible.builtin.command: >-
doctl kubernetes cluster node-pool create {{ k8s_name }}
--name {{ admin_node_pool.name }} --size {{ admin_node_pool.size }}
--label {{ admin_node_pool.label }} --count {{ admin_node_pool.count }}
async: 1800
poll: 60
changed_when: false
when: enable_admin_addons and cluster_nodepools_check.stdout.find(admin_node_pool.name) == -1
- name: d_ocean | k8s | remove a admin node pool from the cluster {{ k8s_name }}
# skip_ansible_lint
ansible.builtin.command: >-
echo "yes" | doctl kubernetes cluster node-pool delete {{ k8s_name }} {{ admin_node_pool.name }}
async: 1800
poll: 60
changed_when: false
when: not enable_admin_addons and cluster_nodepools_check.stdout.find(admin_node_pool.name) >= 0
- name: d_ocean | k8s | Get information about our cluster - name: d_ocean | k8s | Get information about our cluster
community.digitalocean.digital_ocean_kubernetes_info: community.digitalocean.digital_ocean_kubernetes_info:
oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}" oauth_token: "{{ lookup('ansible.builtin.env', 'DO_API_TOKEN') }}"