Jak używać szablonów z konsulem

Jak używać szablonów z konsulem
Szablon Consul to proste i potężne narzędzie, które wypełnia wartości od konsula do systemu plików. Szablony konsulów mogą również wykonywać niektóre polecenia. Zasadniczo szablon konsula działa jako demon, a ten demon może zapytać o klaster konsulu i aktualizuje dowolną liczbę określonych szablonów na system plików. Szablon konsuli jest szeroko używany do aktualizacji plików konfiguracyjnych usług.

Warunek wstępny

  1. Wirtualny serwer instancji
  2. Użytkownik root
  3. Konsul zainstalowany na serwerze

System aktualizacji

Zalecamy uaktualnienie wszystkich pakietów i repozytoriów przed zainstalowaniem nowego pakietu w systemie. Wykonaj następujące polecenie, a wykonuje to zadanie dla Ciebie.

aktualizacja apt-get

Zainstaluj szablon konsulu

W tym przewodniku zakładamy, że zainstalowałeś już konsul na serwerze, a także utworzyłeś klaster konsulu. Teraz będziemy instalować i używać szablonu konsuli, ale agent konsulu musi uruchomić do używania szablonu konsuli. Szablon konsuli nie jest domyślnie dodany w pakiecie serwera konsu, będziemy musieli go pobrać i zainstalować osobno. Aby to zrobić, musisz pobrać najnowszy binarny szablon konsuli z oficjalnej strony internetowej pobierania. Wykonaj następujące polecenie, a wykonuje to zadanie dla Ciebie.

curl -o https: // uwalnia.Hashicorp.com/consul-template/0.20.0/Consul
-szablon_0.20.0_linux_amd64.TGZ

Następnie musisz wyodrębnić archiwum wyżej niższe za pomocą następującego polecenia.

TAR -ZXF Consul -Template_0.20.0_linux_amd64.TGZ

Możesz także zainstalować go lokalnie za pomocą Docker, jeśli chcesz. Po zainstalowaniu Docker w systemie możesz sklonować oficjalne repozytorium szablonu konsuli za pomocą następującego polecenia.

Git Clone https: // github.com/Hashicorp/Consul-Template.git

Następnie wykonaj następujące polecenie, aby skompilować szablon konsula binarny. Zrób Dev teraz, pomyślnie zainstalowałeś szablon konsulu na swoim serwerze.

Konfigurowanie szablonu konsula

Mamy szablon konsulu zainstalowany w twoim systemie, teraz jesteśmy gotowi go użyć. Oto przykładowy plik konfiguracyjny dla konfigura.HCl.

konsul
Adres = "LOCAHOST: 8500"
spróbować ponownie
włączone = true
Próby = 12
backoff = "250ms"

token = "w94rimkutqh1a4vjgn+t+vn1y0nerc/ch93e1f1zchu ="

ROLOOD_SIGNAL = "wzdłuż westchnienia" zabójcy_signal = "sigint" max_stale = "10m" log_level = "ostrzeżenie"#
PID_FILE = "/Consul-Template/Consul-Template.PID "Wave
min = "5s"
max = "10s"

Vault
Adres = "
[http: // localhost: 8200] (http: // localhost: 8200/) "
token = "r/uf0tya5ykhplpnll807kwj4ziji3clyqefamorsjg"
odnowienie_token = false

deduplicate
włączone = true
# prefix = "Consul-Template/Dedup/"

szablon
Źródło = "./vault/szablony/PKI/certyfikat.ctmpl "
miejsce docelowe = "./vault/wyjściowe/pki/mpatel.Twoja domena.com.crt "
Perty = 0400
left_delimiter = ""
right_delimiter = ""
Czekać
min = "2s"
max = "10s"


szablon
Źródło = "./vault/szablony/pki/ca.ctmpl "
miejsce docelowe = "./vault/wyjściowe/pki/mpatel.Twoja domena.com.ca.crt "

szablon
Źródło = "./vault/szablony/pki/klucz.ctmpl "
miejsce docelowe = "./vault/wyjściowe/pki/mpatel.Twoja domena.com.klucz"

W powyższym pliku konfiguracyjnym zmień adres konsulowy, adres sklepienia, token konsulu, token sklepienia, ścieżki szablonu źródłowego i ścieżki plików wyjściowych z twoimi wartościami. Teraz możesz uruchomić szablon konsula za pomocą następującego polecenia.

./Consul -Template -Config Config.HCl

Tworzenie certyfikatów dynamicznie za pomocą sklepienia

Vault to powszechnie znane narzędzie open source do zarządzania tajnymi danymi. Tutaj zobaczymy kolejne użycie szablonu konsula do dynamicznego tworzenia certyfikatów z Vault. Szablon konsulu może uruchomić więcej niż jeden szablon. W celu programowego tworzenia certyfikatów potrzebujesz tych trzech szablonów podanych poniżej.

  1. ca.CTMPL
- /* ./vault/szablony/ca.ctmpl */ -
z tajnym „PKI-INT/Issue/cert-generator” „common_name = yourdomain.com "
.Dane.emising_ca end
  1. CTMPL
- /* ./sklepienie/szablony/certyfikat.ctmpl */ -
z tajnym „PKI-INT/Issue/cert-generator” „common_name = yourdomain.com "
.Dane.certyfikat end
  1. CTMPL
- /* ./vault/szablony/klucz.ctmpl */ -
z tajnym „PKI-INT/Issue/cert-generator” „common_name = yourdomain.com "
.Dane.private_key end

Nie zapomnij zastąpić COM swojej faktycznej domeny. Powyższe trzy szablony to trzy różne szablony wejściowe, ale zostaną one skompresowane w pojedynczym wywołaniu API, gdy będą działać w tym samym procesie szablonu konsuli. Teraz, gdy masz gotowy powyższy szablon konsulu i konfiguracja, możesz go użyć do dynamicznego tworzenia certyfikatów za pomocą następującego polecenia.

./Consul -Template -Config Config.HCl

Możesz także użyć szablonu konsula, aby odkryć wszystkie usługi działające w klastrze konsuli. Aby to zrobić, musisz utworzyć szablon zapisany jako usługi w całości.TPL.

usługi.TPL
Services Range# .Nazwa serwis zasięgowy .Nazwa
.Adres end
koniec

Po utworzeniu szablonu musisz uruchomić szablon. Tym razem tylko określamy plik szablonu, aby uruchomić szablon. Wykonaj następujące polecenie, aby uruchomić szablon.

Consul-Template -Template = "All-Services.TPL: All-Services.txt "-once

Użyliśmy flagi - raz w powyższym poleceniu, aby uruchomić proces raz, a następnie automatycznie zrezygnuje. Zobaczysz następujące dane wyjściowe dla działających usług:

# konsul
35.75.121.88
# Redis
35.75.86.171
35.75.109.224
35.75.59.65
# Web
192.168.86.205
192.168.109.224
192.168.59.110

Wniosek

W tym przewodniku nauczyłeś się instalować i skonfigurować szablon konsulu na serwerze. Teraz możesz użyć szablonu konsula do wykonywania różnych operacji w swoich aplikacjach. Mamy nadzieję, że teraz masz wystarczającą wiedzę, aby pracować z szablonem konsula.