Folositi K8s pentru a rula Terraform
NOTA: Experimentam activ acest lucru in aer liber. Luati in considerare acest software ALPHA si poate fi modificat.
Terraform-controller – Acesta este un instrument de nivel scazut pentru a rula module Terraform controlate de Git in Kubernetes. Controlerul gestioneaza fisierul de stare TF folosind Kubernetes ca backend de fisier de stat la distanta (necesita Terraform 0.13.4)! Puteti avea modificari aplicate automat sau puteti astepta un „OK” explicit inainte de a rula.
Exista doua parti ale stivei, controlerul si executorul.
Controlerul creeaza trei CRD-uri si ruleaza controlere pentru module si executii. Un modul este elementul de constructie si este la fel ca un modul de terraforma. Aceasta este mentionata dintr-o executie care este utilizata pentru a combina toate informatiile necesare pentru a rula Terraform. Executia combina variabilele Terraform si variabilele de mediu din secrete si / sau harti de configurare pentru a le furniza executantului.
Executorul este un job care ruleaza Terraform. Luand date de la executarea CRD, executorul executa terraform init, terraform plan si terraform create / destroy in functie de context.
Executiile au o relatie de la 1 la mai multi cu rularile de executie, deoarece actualizarile sau modificarile sunt facute in modul sau sunt executate rulari suplimentare pentru actualizarea resurselor de terraforma.
Utilizati manifestele furnizate kubectl create -f ./manifests pentru a fi implementate intr-un cluster k8s existent. Manifestele vor crea toate CRD-urile necesare si o implementare cu imaginea rancher / terraform-controller.
Verifica
Spatiu de nume
Totul este plasat in spatiul de nume terraform-controller cu aceste manifeste furnizate. Editati metadata.namespace in fisiere pentru a schimba spatiul de nume sau eliminati pentru a rula in mod implicit. Va trebui sa actualizati argumentele pentru comanda din implementare pentru a actualiza sau elimina argumentul –namespace pentru executabil. Trecerea in steag limiteaza controlerul doar la vizionarea obiectelor CRD in spatiul sau de nume, eliminati acest parametru pentru a permite controlerului terraform sa vada toate obiectele CRD din orice spatiu de nume.
Quickstart Appliance + k3s
Utilizati (k3d) [https://github.com/rancher/k3d/releases] pentru a invarti clusterele mici (k3s) [https://github.com/rancher/k3s] pentru o pornire rapida a utilizarii controlerului Terraform. Imaginea aparatului este pre-construita impreuna cu manifestele de implementare si va crea automat tot ce are nevoie Terra Controller atunci cand pornesc.
videos de lucio saints incesto abuela y nieto
videos porno violada maduritas corriendose
maduras gordas desnudas ana marco primer anal
pajas entre colegas follando en un crucero
cincuentonas viejas en orgias
corridas a chorro peliculas eroticas gratis en español
abuelas incestos follando a mi hija
madres haciendo pajas a sus hijos follando con mirones
pajas pollones porno guarras españolas
maduras españolas anal porno obligado
cine porno español madres haciendo pajas a sus hijos
porno estremo rajas peludas
sin bragas en la calle ver peliculas de incesto
viejas feas videos incesto amateur
suegras peludas maduras follando en español
tetudas jovenes el mejor video porno
porno vitange meadas gay
videos guarros follar abuelas
colegialas cachondas ultimos videos faking
videos porno xxx incesto sara rossi fakings
cattle.io 2019-05-22T17: 19: 01Z modules.terraformcontroller.cattle.io 2019-05-22T17: 19: 01Z ~ k3d sterge –nume terraform
Cu controlerul care ruleaza, puteti rula exemplul furnizat in directorul ./example care va arata cum sa rulati un modul de baza Digital Ocean Terraform care ia un do_token si do_name si creeaza o picatura.
Modificati ./example/00-secret.yaml cu simbolul API Digital Ocean si numele dorit al picaturii.
Rulati kubectl create -f ./example -n terraform-controller pentru a crea toate envvars / secretele / modulul si executia care va rula automat. Controlerul creeaza joburi pentru Terraform ruleaza astfel incat sa acceseze jurnalele verificati jurnalele pod pentru executorul sa creeze si sa distruga joburi. Acest exemplu este configurat pentru a confirma si sterge automat cand obiectul CRD este distrus.
Stergeti picatura stergand CRD kubectl delete -f ./example/20-deployment.yaml -n terraform-controller.
Aprobarea unui plan
In ./example/20-state.yaml, acesta este preconfigurat pentru a aproba si sterge automat cand efectuati CRD de executie. Puteti dezactiva spec.destroyOnDelete si spec.autoConfirm si le puteti face manual facand urmatoarele.
Pentru a obtine planul, verificati jurnalele podurilor utilizate pentru a rula lucrarea. jurnale kubectl [nume-executor-pod] -n control-terraform
Presupunand ca actiunea pe care Terraform o va efectua este corecta adnotati Executia de executare pentru a aproba modificarile:
kubectl adnota executionruns.terraform-controller.cattle.io [executare-executare-nume] -n terraform-controller approbat = “da” –overwrite
Dupa finalizarea lucrarii, puteti vedea rezultatele de la Terraform verificand Executarea:
kubectl obtine executionruns.terraform-controller.cattle.io [executare-executare-nume] -n terraform-controller -o yaml
Cu destroyOnDelete dezactivat, va trebui sa stergeti picatura de mana, deoarece un job de distrugere nu va incepe.
Construirea unui mediu de executie personalizat
Creati un fisier Docker
Construiti acea imagine si treceti la un registru.
Cand creati executia, definiti imaginea:
Daca aveti deja o executie, editati CR prin kubectl si adaugati campul de imagine.
Cladire
face
Executie locala
Utilizati ./bin/terraform-controller
Rularea Executorului in Docker – Utila pentru testarea Executorului
docker run -d -v “/Path/To/Kubeconfig:/root/.kube/config” -e “KUBECONFIG = / root / .kube / config” -e “EXECUTOR_RUN_NAME = RUN_NAME” -e “EXECUTOR_ACTION = create” rancher / terraform-controller-executor: dev
Licenta
Copyright (c) 2019 Rancher Labs, Inc.
Licentiat sub licenta Apache, versiunea 2.0 („Licenta”); nu puteti utiliza acest fisier decat in conformitate cu licenta. Puteti obtine o copie a Licentei la adresa
http://www.apache.org/licenses/LICENSE-2.0
Cu exceptia cazului in care legislatia aplicabila o impune sau se aproba in scris, software-ul distribuit in baza Licentei este distribuit pe „CA ATARE”, FARA GARANTII SAU CONDITII DE ORICE TIP, fie expres, fie implicit. Consultati licenta pentru limbajul specific care reglementeaza permisiunile si limitarile din licenta.








