-
Create Namespace for Prometheus
kubectl create ns prometheus -
Persistent Storage
We'll store Prometheus data on AWS EBS as persistent storage, for that create we'll create storage class and persitent volument claim. We need to create 2 SC and PVC for 2 different component of Prometheus - Server and AlertManager.StorageClass - AlertManager
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: prometheus-alertmanager provisioner: kubernetes.io/aws-ebs parameters: type: gp2 fsType: ext4 allowVolumeExpansion: trueStorageClass - Server
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: prometheus-server provisioner: kubernetes.io/aws-ebs parameters: type: gp2 fsType: ext4 allowVolumeExpansion: truePersistent Volume Claim - AlertManager
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: prometheus-alertmanager namespace: prometheus labels: app: prometheus-alertmanager spec: storageClassName: prometheus-alertmanager resources: requests: storage: 50Gi accessModes: - ReadWriteOncePersistent Volume Claim - Server
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: prometheus-server namespace: prometheus labels: app: prometheus-server spec: storageClassName: prometheus-server resources: requests: storage: 50Gi accessModes: - ReadWriteOnce -
Install using Helm
In this command we've set few values like
namespace, service type, storageclass, PVC and its size as created in previous typehelm install prometheus stable/prometheus \ --namespace prometheus \ --set alertmanager.persistentVolume.storageClass="prometheus-alertmanager",server.persistentVolume.storageClass="prometheus-server",alertmanager.persistentVolume.existingClaim="prometheus-alertmanager", server.persistentVolume.existingClaim="prometheus-server",server.service.type="LoadBalancer" -
Verify the installation
helm list -n prometheus kubectl get sc -n prometheus kubectl get po -n prometheus kubectl get svc -n prometheus
Install AWS CLI on Ubuntu localhost using Ansible Playbook --- - hosts: localhost tasks: - name: Installing Unzip package package: name: unzip state: present when: ansible_facts['os_family'] == "Debian" become: true - name: Create awscli directory in home directory file: path: ~/awscli state: directory mode: '0755' - name: Download bundled installer zip file get_url: url: https://s3.amazonaws.com/aws-cli/awscli-bundle.zip dest: ~/awscli/awscli-bundle.zip - name: Extract zip file unarchive: src: ~/awscli/awscli-bundle.zip dest: ~/awscli - name: Run install command shell: /home/ubuntu/awscli/awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws become: true Same script is also avail...
Comments
Post a Comment