feat: add prometheus manifest
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
---
|
||||
- name: Install initial dependencies
|
||||
apt:
|
||||
name:
|
||||
- apt-transport-https
|
||||
- ca-certificates
|
||||
- curl
|
||||
- gnupg
|
||||
- lsb-release
|
||||
state: present
|
||||
update_cache: yes
|
||||
|
||||
- name: Add Docker official GPG key
|
||||
apt_key:
|
||||
url: https://download.docker.com/linux/debian/gpg
|
||||
state: present
|
||||
|
||||
- name: Set up Docker repository for ARM architecture
|
||||
apt_repository:
|
||||
repo: "deb [arch={{ 'arm64' if ansible_architecture == 'aarch64' else 'armhf' }}] https://download.docker.com/linux/debian {{ ansible_distribution_release }} stable"
|
||||
state: present
|
||||
|
||||
- name: Install Docker Engine and CLI components
|
||||
apt:
|
||||
name:
|
||||
- docker-ce
|
||||
- docker-ce-cli
|
||||
- containerd.io
|
||||
state: present
|
||||
update_cache: yes
|
||||
|
||||
- name: Ensure Docker service is started and enabled
|
||||
systemd:
|
||||
name: docker
|
||||
state: started
|
||||
enabled: yes
|
||||
|
||||
- name: Add current user to docker group
|
||||
user:
|
||||
name: "{{ ansible_user }}"
|
||||
groups: docker
|
||||
append: yes
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
- name: Download and execute K3s installation script with monitoring metrics enabled
|
||||
shell: |
|
||||
curl -sfL https://get.k3s.io | sh -
|
||||
environment:
|
||||
INSTALL_K3S_EXEC: "--server --write-kubeconfig-mode 644 --kube-controller-manager-arg bind-address=0.0.0.0 --kube-proxy-arg metrics-bind-address=0.0.0.0 --kube-scheduler-arg bind-address=0.0.0.0"
|
||||
args:
|
||||
creates: /usr/local/bin/k3s
|
||||
|
||||
- name: Ensure K3s service is started and enabled
|
||||
systemd:
|
||||
name: k3s
|
||||
state: started
|
||||
enabled: yes
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
- name: Create monitoring namespace
|
||||
kubernetes.core.k8s:
|
||||
name: monitoring
|
||||
kind: Namespace
|
||||
state: present
|
||||
|
||||
- name: Add Prometheus community Helm repository
|
||||
kubernetes.core.helm_repository:
|
||||
name: prometheus-community
|
||||
repo_url: "https://prometheus-community.github.io/helm-charts"
|
||||
|
||||
- name: Copy Prometheus customization values
|
||||
template:
|
||||
src: values.yml.j2
|
||||
dest: /tmp/prometheus-values.yml
|
||||
|
||||
- name: Deploy kube-prometheus-stack via Helm
|
||||
kubernetes.core.helm:
|
||||
name: kube-prometheus-stack
|
||||
chart_ref: prometheus-community/kube-prometheus-stack
|
||||
release_namespace: monitoring
|
||||
values_files:
|
||||
- /tmp/prometheus-values.yml
|
||||
state: present
|
||||
|
||||
Reference in New Issue
Block a user