Voorwaarde
- Een virtuele instantieserver
- Een rootgebruiker
- Consul geïnstalleerd op de server
Systeem bijwerken
We raden u aan om alle pakketten en opslagplaatsen te upgraden voordat u een nieuw pakket op het systeem installeert installing. Voer de volgende opdracht uit en het zal het werk voor u doen:.
apt-get updateConsul-sjabloon installeren
In deze handleiding gaan we ervan uit dat je consul al op de server hebt geïnstalleerd en ook een consul-cluster hebt aangemaakt. Nu zullen we de consul-sjabloon installeren en gebruiken, maar de consul-agent moet actief zijn om de consul-sjabloon te gebruiken. Het consul-sjabloon is niet standaard toegevoegd aan het consul-serverpakket, we moeten het downloaden en apart installeren. Om dit te doen, moet u de nieuwste binaire consul-sjabloon downloaden van de officiële download-webpagina. Voer de volgende opdracht uit en het zal het werk voor u doen:.
curl -o https://releases.hashicorp.com/consul-sjabloon/0.20.0/consul-sjabloon_0.20.0_linux_amd64.tgz
Vervolgens moet u het hierboven gedownloade archief uitpakken met de volgende opdracht:.
tar -zxf consul-template_0.20.0_linux_amd64.tgzJe kunt het ook lokaal installeren met behulp van docker als je wilt. Zodra u de docker op uw systeem hebt geïnstalleerd, kunt u de officiële consul-sjabloonrepository klonen met de volgende opdracht:.
git kloon https://github.com/hashicorp/consul-sjabloon.gitVoer vervolgens de volgende opdracht uit om de binaire consul-sjabloon te compileren:. make dev Nu heb je de consul-sjabloon met succes op je server geïnstalleerd.
Consul-sjabloon configureren
We hebben een consul-sjabloon op uw systeem geïnstalleerd, nu zijn we klaar om het te gebruiken. Hier is een voorbeeldconfiguratiebestand voor consul-template ctemplate config.hcl.
consuladres = "locahost:8500"
opnieuw proberen
ingeschakeld = waar
pogingen = 12
uitschakeling = "250ms"
token = "w94RIMKUtQH1a4VJGN+t+vn1Y0nErc/ch93E1F1ZcHU="
reload_signal = "SIGHUP"kill_signal = "SIGINT"max_stale = "10m"log_level = "waarschuwing"#
pid_file = "/consul-sjabloon/consul-sjabloon.pid"wacht
min = "5s"
max = "10s"
kluis
adres = "
[http://localhost:8200](http://localhost:8200/)"
token = "R/Uf0tYa5YkhPLpNLL807KWJ4ZiJi3clyQEfaMoRSJg"
renew_token = false
ontdubbelen
ingeschakeld = waar
# prefix = "consul-sjabloon/dedup/"
sjabloon
bron = "./kluis/sjablonen/pki/cert.ctmpl"
bestemming = "./kluis/output/pki/mpatel.jouwdomein.com.crt"
permanenten = 0400
left_delimiter = ""
right_delimiter = ""
wacht
min = "2s"
max = "10s"
sjabloon
bron = "./kluis/sjablonen/pki/ca.ctmpl"
bestemming = "./kluis/output/pki/mpatel.jouwdomein.com.ca.crt"
sjabloon
bron = "./kluis/sjablonen/pki/sleutel.ctmpl"
bestemming = "./kluis/output/pki/mpatel.jouwdomein.com.sleutel"
Wijzig in het bovenstaande configuratiebestand het consul-adres, het kluisadres, het consul-token, het kluistoken, de bronsjabloonpaden en de uitvoerbestandspaden met uw werkelijke waarden. Nu kunt u de consul-sjabloon uitvoeren met de volgende opdracht:.
./consul-sjabloon -config config.hclDynamisch certificaten maken met Vault
Vault is een algemeen bekende open source-tool voor het beheren van geheime gegevens. Hier zullen we een ander gebruik van de consul-sjabloon zien voor het dynamisch maken van certificaten met kluis. Consul-sjabloon kan meer dan één sjabloon uitvoeren. Om programmatisch certificaten aan te maken, hebt u deze drie onderstaande sjablonen nodig:.
- ca.ctmpl
with secret "pki-int/issue/cert-generator" "common_name=YourDomain.com"
.Gegevens.uitgifte_ca einde
- ctmpl
with secret "pki-int/issue/cert-generator" "common_name=YourDomain.com"
.Gegevens.certificaat einde
- ctmpl
with secret "pki-int/issue/cert-generator" "common_name=YourDomain.com"
.Gegevens.private_key einde
Vergeet niet om com te vervangen door uw huidige domein. De bovenstaande drie sjablonen zijn drie verschillende invoersjablonen, maar ze worden gecomprimeerd tot een enkele API-aanroep wanneer ze onder hetzelfde consul-sjabloonproces worden uitgevoerd. Als u nu alle bovenstaande consul-sjablonen en configuratie gereed hebt, kunt u deze gebruiken om dynamisch certificaten te maken met behulp van de volgende opdracht:.
./consul-sjabloon -config config.hclU kunt ook de consul-sjabloon gebruiken om alle services in uw consul-cluster te ontdekken. Om dit te doen, moet u een sjabloon maken die is opgeslagen als alle services.tpl.
alle diensten.tplbereik diensten# .Naambereikservice .Naam
.Adresend
einde
Nadat u de sjabloon nu hebt gemaakt, moet u de sjabloon uitvoeren. Deze keer zullen we alleen het sjabloonbestand specificeren om de sjabloon uit te voeren. Voer de volgende opdracht uit om de sjabloon uit te voeren:.
consul-template -template = "alle diensten.tpl:alle diensten.txt" -eenmaalWe hebben een vlag gebruikt - eenmaal in de bovenstaande opdracht om het proces één keer uit te voeren en dan zal het automatisch stoppen. U ziet de volgende uitvoer voor de actieve services:
# consul35.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
Conclusie
In deze handleiding hebt u geleerd hoe u een consul-sjabloon op uw server installeert en instelt. Nu kunt u de consul-sjabloon gebruiken om verschillende bewerkingen op uw applicaties uit te voeren. We hopen dat je nu voldoende kennis hebt om met de consul-sjabloon te werken.