
Bereitstellen von Prometheus & Grafana
Wir erwachen aus dem Winterschlaf! Fangen wir an, wenn Sie der Meinung sind, dass es in Ordnung ist, mit diesem Dokument zu tod@s, das wir in zukünftigen Beiträgen als Grundlage verwenden werden. Ich hatte gedacht, dass wir dieses Jahr den Schwerpunkt auf Metriken und Protokolle legen werden (Abgesehen von den üblichen), Daher denke ich, dass dieses Dokument zur schnellen Bereitstellung von Prometheus und Grafana nützlich sein kann.
Bevor Sie beginnen, Nun, das war's auch schon, dass die Weihnachtsferien für mich lang waren… Ich mag diese Sache mit Feiertagen und langen Wochenenden =) Aber, nun ja, Ich möchte euch sagen, dass ich bereits die Grundlage für das vorbereitet habe, was wir dieses Jahr auf dem Blog sehen werden, Ich hoffe, Sie finden es interessant; Es wird wie gewohnt sein, Ein bisschen von allem, wann immer es möglich ist 2 Wöchentliche Beiträge, sondern sich auf Dinge zu konzentrieren, die im Blog noch nicht viel entwickelt wurden, Dinge, die vielleicht einfach umzusetzen sind und viel dazu beitragen, das Umfeld sichtbar zu machen. Öffnen Sie Vorschläge in meiner E-Mail. Oh, und Sie können auch SPAM Fede Cinalli , um zum Zum Podcast 🙂
Gestartet! Was ich gesagt habe, Heute ein erstes erstes Dokument, wo wir sehen können, wie einfach es ist, Prometheus und Grafana zu implementieren. Ich verstehe, dass beide Lösungen bekannt sind, Prometheus ist Open Source und wird es uns ermöglichen, verschiedene Metriken zu speichern, um sie elegant mit Grafana zu visualisieren. Die Idee ist, ein komplettes Telemetriesystem einzurichten, das es uns ermöglicht, den Status der Systeme zu kennen, die wir als Kerngeschäft betrachten.
In den Beispielen, die wir sehen werden, Wir werden immer Docker-Container verwenden (für alle Vorteile, die sie uns bei der Installation von, aktualisieren, verwalten…), Sowohl Prometheus als auch Grafana werden also in ihren eigenen Behältern untergebracht sein. In der Regel basieren die Beiträge auf Ubuntu Server, wobei abgesehen von der Basiskonfiguration, Sie müssen Docker installiert.
Bereitstellen von Prometheus
So stellen Sie den ersten Container bereit, Wenn das für dich in Ordnung ist, Wir erstellen einen Ordner, Darin belassen wir die docker-compose.yaml mit der Definition des Containers, den wir bereitstellen werden, Und dann, Lo Desplegaremos.
cd mkdir prometheus cd prometheus mkdir prometheus
Wir erstellen und bearbeiten den Container mit 'nano docker-compose.yaml’
Version: '3.8' services: Prometheus: Bild: Prom/Prometheus container_name: Neustart von Prometheus: Befehl unless-stopped: - '--config.file=/etc/prometheus/prometheus.yml' - '--storage.tsdb.retention.time=15d' volumes: - ./Prometheus:/usw./prometheus - prom_data:/Versprechen Sie uns Häfen: - 9090:9090 Netzwerke: prometheus_default: Inhalte: prom_data: Netzwerke: prometheus_default: Fahrer: Brücke Ipam: Konfiguration: - Subnetz: XX.XX.XX.0/24 Tor: XX.XX.XX.1
Wir werden einen Container erstellen, der prometheus genannt wird, Basierend auf diesem Bild, , die (Vorgabe) Port 9090TCP, an den wir uns später anschließen können. (In meinem Fall) Wir haben es bestanden 2 Befehle, eine, um Ihnen die Prometheus-Konfigurationsdatei zu übergeben (prometheus.yml) und eine weitere, um anzuzeigen, dass ich eine Einbehaltung von 15 Tage (Wenn wir wollen). Sowie das Netzwerk, Besonders gerne verteile ich Ränge, Erzählen Sie es ihnen, oder lassen Sie das Symbol 4 Letzte Zeilen.
Und bevor Sie den Container starten, Wir müssen die Konfigurationsdatei erstellen, hierfür, Wir betreiben einfach 'Nano Prometheus/prometheus.yml’ und wir definieren es:
global: scrape_interval: 5scrape_timeout: 5evaluation_interval: 5s #scrape_configs: # - job_name: Prometheus # honor_timestamps: STIMMT # scrape_interval: 15s # scrape_timeout: 10s # metrics_path: /Metrik # Schema: HTTP (Englisch) # static_configs: # - Ziele: # - Localhost:9090
In meinem Fall, Sie werden sehen, was ich kommentiert habe (#) Lassen Sie mich nicht von lokalen Metriken überrumpeln, des Prometheus-Behälters selbst, Ich interessiere mich nicht für sie, Aber für den Geschmack, 🙂 Wenn Sie keine Metriken zum Testen haben, Sie kommentieren es aus.
Und jetzt müssten wir nur noch den Behälter aufklappen, Ausgeführte:
sudo docker compose up -d
Sobald Sie das Prometheus-Image heruntergeladen haben, Es hebt den Container an und wir können uns mit der GUI verbinden, wenn wir bestätigen möchten, dass alles gut gelaufen ist (merken, bis 9090TCP). Denken Sie daran, wenn Sie mit Docker-Befehlen nicht zurechtkommen, wir werden immer Portainer haben; Aber wow, In diesem Fall, wenn Sie die Schritte gut befolgt haben, Der Container wurde angehoben, Und wenn nicht,, Sie schauen sich die Protokolle 'sudo docker logs prometheus -f' an..
Bereitstellen von Grafana
Genau wie Prometheus, Grafana wird in einem anderen Docker-Container abgelegt, So einfach und unkompliziert geht's. Wir erstellen einen Ordner, in dem wir das Docker compose belassen und dann bereitstellen:
cd mkdir grafana cd grafana
Und wir haben dort mit 'nano docker-compose.yaml erstellt.’ die Definition des Grafana-Containers, den wir wollen:
Dienste: Grafana: Bild: Grafana/Grafana-OSS container_name: Grafana Neustart: Es sei denn, die Ports wurden gestoppt: - '3000:3000' volumes: - ./Grafana-Lagerung:/var/lib/grafana-Netzwerke: - grafana_default Volumina: Grafana-Lagerung: {} Netzwerke: grafana_default: Fahrer: Brücke Ipam: Konfiguration: - Subnetz: XX.XX.XX.0/24 Tor: XX.XX.XX.1
Dass das neueste Image von Grafana Open Source heruntergeladen wird, und wird es über Port 3000tcp ausgeben.
Endlich, Wir entfalten und starten den Behälter mit:
sudo docker compose up -d
Öffnen Sie einen Browser gegen Port 3000tcp des Docker-Rechners, und Grafana wird ausgeführt. Wir melden uns als Admin an / Admin standardmäßig, und wir werden sicherstellen, dass Sie das Passwort ändern.
Wir beenden das Dokument, indem wir die Datenquelle in Grafana erstellen, die das Bindeglied gegen Prometheus sein wird, Gehen wir zu 'Home’ > "Verbindungen’ > "Datenquellen’ > "Neue Datenquelle hinzufügen", und wir haben einen vom Typ Prometheus hinzugefügt. Wir geben der Datenquelle einen Namen und geben die URL unseres Prometheus an.
Ab sofort, Wir werden jetzt in der Lage sein, Metriken in Prometheus zu speichern, und betrachten Sie sie von Grafana aus, gut, da wir die Dashboards selbst herstellen, oder nehmen Sie sie direkt aus der Grafana-Community 🙂
Das war's für heute, Wir beginnen mit den Säulen =) Ich hoffe, dass du es wie immer großartig machst, und dass diese Zeit uns geholfen hat, ein wenig mehr zu reifen! Ich schicke dir eine Umarmung, Passt gut auf euch auf!