Nödvändig förutsättning
- En virtuell instansserver
- En rotanvändare
- Konsul installerad på servern
Uppdatera systemet
Vi rekommenderar att du uppgraderar alla paket och arkiv innan du installerar något nytt paket på systemet. Kör följande kommando så gör det jobbet åt dig.
apt-get-uppdateringInstallera konsulmallen
I den här guiden antar vi att du redan har installerat konsul på servern och även skapat ett konsulkluster. Nu kommer vi att installera och använda konsulmallen men konsulagenten måste köras för att använda konsulmallen. Konsulmallen läggs inte till som standard i konsulns serverpaket, vi måste ladda ner den och installera den separat. För att göra det måste du ladda ner den senaste binära konsulmallen från dess officiella hemsida. Kör följande kommando så gör det jobbet åt dig.
curl -o https: // släpper.hashicorp.com / konsul-mall / 0.20.0 / konsul-mall_0.20.0_linux_amd64.tgz
Därefter måste du extrahera det nedladdade arkivet med följande kommando.
tjära -zxf konsul-mall_0.20.0_linux_amd64.tgzDu kan också installera den lokalt med docker om du vill. När du har installerat dockaren på ditt system kan du klona det officiella konsulmallförvaret med följande kommando.
git klon https: // github.com / hashicorp / konsul-mall.gitKör sedan följande kommando för att kompilera binär konsulmall. make dev Nu har du installerat konsulmallen på din server.
Konfigurera konsulmall
Vi har en konsulmall installerad på ditt system nu är vi redo att använda den. Här är ett exempel på en konfigurationsfil för konsul-mall-ctemplate-konfiguration.hcl.
konsuladdress = "locahost: 8500"
Försök igen
aktiverat = sant
försök = 12
backoff = "250ms"
token = "w94RIMKUtQH1a4VJGN + t + vn1Y0nErc / ch93E1F1ZcHU ="
reload_signal = "SIGHUP" kill_signal = "SIGINT" max_stale = "10m" log_level = "varna" #
pid_file = "/ konsul-mall / konsul-mall.pid "vänta
min = "5s"
max = "10s"
valv
adress = "
[http: // localhost: 8200] (http: // localhost: 8200 /) "
token = "R / Uf0tYa5YkhPLpNLL807KWJ4ZiJi3clyQEfaMoRSJg"
förnya_token = falsk
deduplicera
aktiverat = sant
# prefix = "konsul-mall / dedup /"
mall
källa = "./ valv / mallar / pki / cert.ctmpl "
destination = "./ valv / utgång / pki / mpatel.din domän.com.crt "
perms = 0400
left_delimiter = ""
right_delimiter = ""
vänta
min = "2s"
max = "10s"
mall
källa = "./ valv / mallar / pki / ca.ctmpl "
destination = "./ valv / utgång / pki / mpatel.din domän.com.ca.crt "
mall
källa = "./ valv / mallar / pki / nyckel.ctmpl "
destination = "./ valv / utgång / pki / mpatel.din domän.com.nyckel"
I ovanstående konfigurationsfil, ändra konsuladress, valvadress, konsul-token, valv-token, källmallvägar och utdatafilvägar med dina faktiska värden. Nu kan du köra konsulmallen med följande kommando.
./ consul-template -config config.hclSkapa certifikat dynamiskt med Arkiv
Vault är ett allmänt känt verktyg för öppen källkod för hantering av hemliga data. Här ser vi en annan användning av konsulmallen för att skapa certifikat dynamiskt med valv. Konsulmallen kan köras mer än en mall. För att skapa certifikat programatiskt behöver du dessa tre mallar nedan.
- ca.ctmpl
med hemlig "pki-int / issue / cert-generator" "common_name = YourDomain.com "
.Data.utfärdande_ca end
- ctmpl
med hemlig "pki-int / issue / cert-generator" "common_name = YourDomain.com "
.Data.certifikat end
- ctmpl
med hemlig "pki-int / issue / cert-generator" "common_name = YourDomain.com "
.Data.privat_nyckel end
Glöm inte att ersätta com med din faktiska domän. Ovanstående tre mallar är tre olika inmatningsmallar men de komprimeras till ett enda API-samtal när de körs under samma konsulmallprocess. Nu när du har alla ovanstående konsulmallar och konfigurationer redo kan du använda den för att skapa certifikat dynamiskt med följande kommando.
./ consul-template -config config.hclDu kan också använda konsulmallen för att upptäcka alla tjänster som körs i ditt konsulkluster. För att göra det måste du skapa en mall som sparats som all-services.tpl.
all-tjänster.tplrange services # .Namn intervalltjänst .Namn
.Adress end
slutet
När du har skapat mallen nu måste du köra mallen. Den här gången kommer vi bara att specificera mallfilen för att köra mallen. Kör följande kommando för att köra mallen.
consul-template -template = "all-services.tpl: all-services.txt "-en gångVi har använt en flagga - en gång i ovanstående kommando för att köra processen en gång och sedan avslutas den automatiskt. Du ser följande utdata för de körande tjänsterna:
# konsul35.75.121.88
# redis
35.75.86.171
35.75.109.224
35.75.59.65
# webb
192.168.86.205
192.168.109.224
192.168.59.110
Slutsats
I den här guiden har du lärt dig hur du installerar och konfigurerar en konsulmall på din server. Nu kan du använda konsulmallen för att utföra olika operationer i dina applikationer. Vi hoppas att du nu har tillräckligt med kunskap för att arbeta med konsulmall.