Voraussetzung
- Ein virtueller Instanzserver
- Ein Root-Benutzer
- Konsul auf dem Server installiert
System aktualisieren
Wir empfehlen Ihnen, alle Pakete und Repositorys zu aktualisieren, bevor Sie ein neues Paket auf dem System installieren. Führen Sie den folgenden Befehl aus und er erledigt die Arbeit für Sie.
apt-get-UpdateKonsul-Vorlage installieren
In dieser Anleitung gehen wir davon aus, dass Sie consul bereits auf dem Server installiert und auch einen consul-Cluster erstellt haben. Jetzt werden wir die Konsul-Vorlage installieren und verwenden, aber der Konsulagent muss ausgeführt werden, um die Konsul-Vorlage zu verwenden. Die Konsul-Vorlage ist nicht standardmäßig im Konsul-Serverpaket enthalten, wir müssen sie herunterladen und separat installieren install. Um dies zu tun, müssen Sie die neueste Binärdatei für die Konsul-Vorlage von der offiziellen Download-Webseite herunterladen. Führen Sie den folgenden Befehl aus und er erledigt die Arbeit für Sie.
curl -o https://releases.hashicorp.com/consul-template/0.20.0/konsul-Vorlage_0.20.0_linux_amd64.tgz
Als nächstes müssen Sie das oben heruntergeladene Archiv mit dem folgenden Befehl extrahieren.
tar -zxf consul-template_0.20.0_linux_amd64.tgzSie können es auch lokal mit Docker installieren, wenn Sie möchten. Sobald Sie das Docker auf Ihrem System installiert haben, können Sie das offizielle Konsul-Vorlagen-Repository mit dem folgenden Befehl klonen.
git-Klon https://github.com/hashicorp/consul-template.gitFühren Sie als nächstes den folgenden Befehl aus, um die Konsul-Vorlagen-Binärdatei zu kompilieren. make dev Jetzt haben Sie das Konsul-Template erfolgreich auf Ihrem Server installiert.
Konsul-Vorlage konfigurieren
Wir haben die Konsul-Vorlage auf Ihrem System installiert und können sie jetzt verwenden use. Hier ist eine Beispielkonfigurationsdatei für consul-template ctemplate config.hcl.
KonsulAdresse = "locahost:8500"
wiederholen
aktiviert = wahr
Versuche = 12
backoff = "250ms"
Token = "w94RIMKUtQH1a4VJGN+t+vn1Y0nErc/ch93E1F1ZcHU="
reload_signal = "SIGHUP"kill_signal = "SIGINT"max_stale = "10m"log_level = "warn"#
pid_file = "/consul-template/consul-template.pid"warte
min = "5s"
max = "10s"
Tresor
Adresse = "
[http://localhost:8200](http://localhost:8200/)"
Token = "R/Uf0tYa5YkhPLpNLL807KWJ4ZiJi3clyQEfaMoRSJg"
renew_token = false
deduplizieren
aktiviert = wahr
# prefix = "consul-template/dedup/"
Vorlage
Quelle = "./vault/templates/pki/cert.ctmpl"
Ziel = "./vault/output/pki/mpatel.Deine Domain.com.crt"
Dauerwellen = 0400
left_delimiter = ""
right_delimiter = ""
warten
min = "2s"
max = "10s"
Vorlage
Quelle = "./vault/templates/pki/ca.ctmpl"
Ziel = "./vault/output/pki/mpatel.Deine Domain.com.ca.crt"
Vorlage
Quelle = "./vault/templates/pki/key.ctmpl"
Ziel = "./vault/output/pki/mpatel.Deine Domain.com.Schlüssel"
Bitte ändern Sie in der obigen Konfigurationsdatei die Konsul-Adresse, Tresor-Adresse, Konsul-Token, Tresor-Token, Quellvorlagenpfade und Ausgabedateipfade mit Ihren tatsächlichen Werten. Jetzt können Sie die Konsul-Vorlage mit dem folgenden Befehl ausführen.
./consul-template -config config.hclZertifikate dynamisch mit Vault erstellen
Vault ist ein weithin bekanntes Open-Source-Tool zur Verwaltung geheimer Daten. Hier sehen wir eine weitere Verwendung der Konsul-Vorlage zum dynamischen Erstellen von Zertifikaten mit Tresor. Consul-Vorlage kann mehr als eine Vorlage ausführen run. Um Zertifikate programmatisch zu erstellen, benötigen Sie diese drei unten aufgeführten Vorlagen.
- ca.ctmpl
with secret "pki-int/issue/cert-generator" "common_name=IhreDomain.com"
.Daten.issue_ca end
- ctmpl
with secret "pki-int/issue/cert-generator" "common_name=IhreDomain.com"
.Daten.Zertifikat Ende
- ctmpl
with secret "pki-int/issue/cert-generator" "common_name=IhreDomain.com"
.Daten.private_key end
Bitte vergessen Sie nicht, com durch Ihre tatsächliche Domain zu ersetzen. Die oben genannten drei Vorlagen sind drei verschiedene Eingabevorlagen, die jedoch in einem einzigen API-Aufruf komprimiert werden, wenn sie unter demselben Konsul-Vorlagenprozess ausgeführt werden. Wenn Sie nun alle oben genannten Konsul-Vorlagen und -Konfigurationen bereit haben, können Sie sie verwenden, um Zertifikate dynamisch mit dem folgenden Befehl zu erstellen.
./consul-template -config config.hclSie können auch die Konsul-Vorlage verwenden, um alle Dienste zu ermitteln, die in Ihrem Konsul-Cluster ausgeführt werden. Dazu müssen Sie eine als all-services gespeicherte Vorlage erstellen.tpl.
all-services.tplBereichsdienste# .NameBereichsdienst .Name
.AdresseEnde
Ende
Nachdem Sie die Vorlage jetzt erstellt haben, müssen Sie die Vorlage ausführen. Dieses Mal werden wir nur die Vorlagendatei angeben, um die Vorlage auszuführen. Führen Sie den folgenden Befehl aus, um die Vorlage auszuführen.
consul-template -template="all-services.tpl: all-services.txt" -einmalWir haben ein Flag verwendet - einmal im obigen Befehl, um den Prozess einmal auszuführen und dann wird er automatisch beendet. Sie sehen die folgende Ausgabe für die laufenden Dienste:
# Konsul35.75.121.88
# erneut
35.75.86.171
35.75.109.224
35.75.59.65
# Netz
192.168.86.205
192.168.109.224
192.168.59.110
Fazit
In dieser Anleitung haben Sie erfahren, wie Sie ein Konsul-Template auf Ihrem Server installieren und einrichten. Jetzt können Sie die Konsul-Vorlage verwenden, um verschiedene Operationen an Ihren Anträgen durchzuführen. Wir hoffen, dass Sie jetzt genug Wissen haben, um mit der Konsul-Vorlage zu arbeiten.