From 97df142727897cf7398703f4040124f4ae2af5a1 Mon Sep 17 00:00:00 2001 From: Mathieu Garcia Date: Wed, 5 Nov 2025 22:41:47 +0100 Subject: [PATCH] feat(ansible): add milvus role with tasks and templates --- ansible/playbooks/saas/roles/milvus/README.md | 1 + .../saas/roles/milvus/defaults/main.yml | 1 + .../saas/roles/milvus/tasks/backup.yml | 1 + .../saas/roles/milvus/tasks/build.yml | 14 +++ .../saas/roles/milvus/tasks/destroy.yml | 11 +++ .../saas/roles/milvus/tasks/main.yml | 39 ++++++++ .../saas/roles/milvus/tasks/restore.yml | 1 + .../roles/milvus/templates/milvus.yaml.j2 | 0 .../saas/roles/milvus/templates/nomad.hcl | 93 ++++++++++++++++++ .../saas/roles/milvus/templates/user.yaml.j2 | 3 + .../playbooks/saas/roles/milvus/vars/main.yml | 13 +++ .../saas/roles/milvus/vars/upstream.yml | 3 + ui/public/img/milvus.png | Bin 0 -> 59617 bytes 13 files changed, 180 insertions(+) create mode 100644 ansible/playbooks/saas/roles/milvus/README.md create mode 100644 ansible/playbooks/saas/roles/milvus/defaults/main.yml create mode 100644 ansible/playbooks/saas/roles/milvus/tasks/backup.yml create mode 100644 ansible/playbooks/saas/roles/milvus/tasks/build.yml create mode 100644 ansible/playbooks/saas/roles/milvus/tasks/destroy.yml create mode 100644 ansible/playbooks/saas/roles/milvus/tasks/main.yml create mode 100644 ansible/playbooks/saas/roles/milvus/tasks/restore.yml create mode 100644 ansible/playbooks/saas/roles/milvus/templates/milvus.yaml.j2 create mode 100644 ansible/playbooks/saas/roles/milvus/templates/nomad.hcl create mode 100644 ansible/playbooks/saas/roles/milvus/templates/user.yaml.j2 create mode 100644 ansible/playbooks/saas/roles/milvus/vars/main.yml create mode 100644 ansible/playbooks/saas/roles/milvus/vars/upstream.yml create mode 100644 ui/public/img/milvus.png diff --git a/ansible/playbooks/saas/roles/milvus/README.md b/ansible/playbooks/saas/roles/milvus/README.md new file mode 100644 index 00000000..680a4325 --- /dev/null +++ b/ansible/playbooks/saas/roles/milvus/README.md @@ -0,0 +1 @@ +# Role: `milvus` diff --git a/ansible/playbooks/saas/roles/milvus/defaults/main.yml b/ansible/playbooks/saas/roles/milvus/defaults/main.yml new file mode 100644 index 00000000..ed97d539 --- /dev/null +++ b/ansible/playbooks/saas/roles/milvus/defaults/main.yml @@ -0,0 +1 @@ +--- diff --git a/ansible/playbooks/saas/roles/milvus/tasks/backup.yml b/ansible/playbooks/saas/roles/milvus/tasks/backup.yml new file mode 100644 index 00000000..ed97d539 --- /dev/null +++ b/ansible/playbooks/saas/roles/milvus/tasks/backup.yml @@ -0,0 +1 @@ +--- diff --git a/ansible/playbooks/saas/roles/milvus/tasks/build.yml b/ansible/playbooks/saas/roles/milvus/tasks/build.yml new file mode 100644 index 00000000..68406697 --- /dev/null +++ b/ansible/playbooks/saas/roles/milvus/tasks/build.yml @@ -0,0 +1,14 @@ +--- +- name: Include upstream variables + ansible.builtin.include_vars: upstream.yml + +- name: Set custom variables + ansible.builtin.set_fact: + image_version: "{{ latest_version }}" + image_name: "{{ image.name }}" + image_labels: "{{ image.labels }}" + image_build: "{{ image.build }}" + +- name: End playbook if no new version + ansible.builtin.meta: end_host + when: softwares[image.name] is defined and softwares[image.name].version == image_version diff --git a/ansible/playbooks/saas/roles/milvus/tasks/destroy.yml b/ansible/playbooks/saas/roles/milvus/tasks/destroy.yml new file mode 100644 index 00000000..e00b7de1 --- /dev/null +++ b/ansible/playbooks/saas/roles/milvus/tasks/destroy.yml @@ -0,0 +1,11 @@ +--- +- name: Stop nomad job + ansible.builtin.include_role: + name: nomad + tasks_from: job_stop.yml + +- name: Remove software directory + ansible.builtin.file: + path: "{{ software_path }}" + state: absent + delegate_to: "{{ software.instance }}" \ No newline at end of file diff --git a/ansible/playbooks/saas/roles/milvus/tasks/main.yml b/ansible/playbooks/saas/roles/milvus/tasks/main.yml new file mode 100644 index 00000000..00e286c9 --- /dev/null +++ b/ansible/playbooks/saas/roles/milvus/tasks/main.yml @@ -0,0 +1,39 @@ +--- +- name: Create default directory + ansible.builtin.file: + path: "{{ item }}" + state: directory + owner: root + group: root + mode: "0755" + loop: + - "{{ software_path }}/milvus/config" + delegate_to: "{{ software.instance }}" + +- name: Copy configuration files + ansible.builtin.template: + src: "{{ item.src }}" + dest: "{{ software_path }}/{{ item.dest }}" + owner: root + group: root + mode: '0644' + loop: + - src: milvus.yaml.j2 + dest: milvus/config/embedEtcd.yaml + - src: user.yaml.j2 + dest: milvus/config/user.yaml + delegate_to: "{{ software.instance }}" + +- name: Copy nomad job + ansible.builtin.template: + src: nomad.hcl + dest: "/var/tmp/{{ domain }}.nomad" + owner: root + group: root + mode: '0600' + become: true + +- name: Run nomad job + ansible.builtin.include_role: + name: nomad + tasks_from: job_run.yml diff --git a/ansible/playbooks/saas/roles/milvus/tasks/restore.yml b/ansible/playbooks/saas/roles/milvus/tasks/restore.yml new file mode 100644 index 00000000..ed97d539 --- /dev/null +++ b/ansible/playbooks/saas/roles/milvus/tasks/restore.yml @@ -0,0 +1 @@ +--- diff --git a/ansible/playbooks/saas/roles/milvus/templates/milvus.yaml.j2 b/ansible/playbooks/saas/roles/milvus/templates/milvus.yaml.j2 new file mode 100644 index 00000000..e69de29b diff --git a/ansible/playbooks/saas/roles/milvus/templates/nomad.hcl b/ansible/playbooks/saas/roles/milvus/templates/nomad.hcl new file mode 100644 index 00000000..c449b59b --- /dev/null +++ b/ansible/playbooks/saas/roles/milvus/templates/nomad.hcl @@ -0,0 +1,93 @@ +job "{{ domain }}" { + region = "{{ fact_instance.region }}" + datacenters = ["{{ fact_instance.datacenter }}"] + type = "service" + +{% if software.constraints is defined and software.constraints.location is defined %} + constraint { + attribute = "${meta.location}" + set_contains = "{{ software.constraints.location }}" + } +{% endif %} + + constraint { + attribute = "${meta.instance}" + set_contains = "{{ software.instance }}" + } + + group "{{ domain }}" { + count = 1 + + network { + port "milvus_19530" { + to = 19530 +{% if software.static_port is defined %} + static = {{ software.static_port }} +{% endif %} + } + port "milvus_9091" { + to = 9091 + } + port "milvus_2379" { + to = 2379 + } + } + + service { + name = "{{ service_name }}-milvus" + port = "milvus_19530" + provider = "nomad" + } + + service { + name = "{{ service_name }}-webui" + port = "milvus_9091" + provider = "nomad" + tags = [ + {{ lookup('template', '../../traefik/templates/traefik_tag.j2') | indent(8) }} + ] + check { + type = "http" + path = "/healthz" + interval = "30s" + timeout = "20s" + } + } + + task "{{ domain }}-milvus" { + driver = "docker" + + config { + image = "milvusdb/milvus:v{{ softwares.milvus.version }}" + security_opt = [ + "seccomp=unconfined" + ] + volumes = [ + "{{ software_path }}/var/lib/milvus:/var/lib/milvus:rw", + "{{ software_path }}/milvus/config:/milvus/config:rw" + ] + ports = ["milvus_19530", "milvus_9091", "milvus_2379"] + command = "milvus" + args = [ + "run", "standalone" + ] + } + + env { + TZ = "Europe/Paris" + MILVUS_LOG_LEVEL = "info" + ETCD_USE_EMBED = "true" + ETCD_DATA_DIR = "/var/lib/milvus/etcd" + ETCD_CONFIG_PATH = "/milvus/config/embedEtcd.yaml" + COMMON_STORAGETYPE = "local" + DEPLOY_MODE = "STANDALONE" + } + + resources { + cpu = {{ size[software.size].cpu }} + memory = {{ size[software.size].memory }} + memory_max = {{ size[software.size].memory * 2 }} + } + } + } +} diff --git a/ansible/playbooks/saas/roles/milvus/templates/user.yaml.j2 b/ansible/playbooks/saas/roles/milvus/templates/user.yaml.j2 new file mode 100644 index 00000000..db77cc8b --- /dev/null +++ b/ansible/playbooks/saas/roles/milvus/templates/user.yaml.j2 @@ -0,0 +1,3 @@ +# Extra config to override default milvus.yaml +proxy: + healthCheckTimeout: 1000 # ms, the interval that to do component healthy check \ No newline at end of file diff --git a/ansible/playbooks/saas/roles/milvus/vars/main.yml b/ansible/playbooks/saas/roles/milvus/vars/main.yml new file mode 100644 index 00000000..dc15db50 --- /dev/null +++ b/ansible/playbooks/saas/roles/milvus/vars/main.yml @@ -0,0 +1,13 @@ +--- +image: + build: false + upstream: + source: github + user: milvus-io + repo: milvus + type: releases + format: deb + file: milvus_VERSION_ARCH.FORMAT + os: linux + labels: {} + name: milvus \ No newline at end of file diff --git a/ansible/playbooks/saas/roles/milvus/vars/upstream.yml b/ansible/playbooks/saas/roles/milvus/vars/upstream.yml new file mode 100644 index 00000000..fa90cda8 --- /dev/null +++ b/ansible/playbooks/saas/roles/milvus/vars/upstream.yml @@ -0,0 +1,3 @@ +--- +upstream_versions: "{{ (lookup('url', 'https://api.github.com/repos/' + image.upstream.user + '/' + image.upstream.repo + '/tags', headers={'Accept': 'application/vnd.github+json', 'Authorization': 'Bearer ' + lookup('ansible.builtin.env', 'GITHUB_API_TOKEN') })) }}" +latest_version: "{{ upstream_versions | community.general.json_query('[].name') | select('match', '^(v|r)?\\d{1,4}(\\.\\d{1,4})(\\.\\d{1,4})$') | community.general.version_sort | last | replace('v', '') }}" diff --git a/ui/public/img/milvus.png b/ui/public/img/milvus.png new file mode 100644 index 0000000000000000000000000000000000000000..91e8d4b83de9777b55966464e75690c19510627e GIT binary patch literal 59617 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 S$H9QlB`>Y=tya=B?0*0va?Z#A literal 0 HcmV?d00001