Puncte:0

Actualizarea versiunii Azure kubernetes prin Terraform - fără cheie publică SSH

drapel ls

Încerc să folosesc Terraform pentru a actualiza versiunea kubernetes pentru un cluster Azure Kubernetes Service (AKS). Configurația Terraform pentru cluster arată astfel:

resursă „azurerm_kubernetes_cluster” „dev-k8s” {
  nume = "clusterul meu"
  ... etc

  kubernetes_version = "1.22.1"

  profil_linux {
    admin_username = var.admin_username

    ssh_key {
      key_data = fișier(var.k8s_public_key)
    }
  }

Când încerc să alerg plan de terraformă din terminalul meu local linux (atunci când v-ați conectat la Azure prin Azure CLI) variabila var.k8s_public_key rezolvă să ~/.ssh/my-k8s.pubși primesc următorul mesaj de eroare:

Eroare: argument funcție invalid


  pe linia 22 k8s.tf, în resursa „azurerm_kubernetes_cluster” „dev-k8s”:
  22: key_data = file(var.k8s_public_key)
    |----------------
    | var.k8s_public_key este „~/.ssh/my-k8s.pub”

Valoare nevalidă pentru parametrul „cale”: nu există niciun fișier la
/home/myuser/.ssh/my-k8s.pub; această funcție funcționează numai cu fișiere care
sunt distribuite ca parte a codului sursă de configurare, deci dacă acest fișier va
fi creat de o resursă în această configurație, trebuie în schimb să obțineți acest lucru
rezultat dintr-un atribut al acelei resurse.

Am un privat cheie, dar nicio cheie publică. Dacă este necesară cheia publică, trebuie să creez una nouă. Eroarea mă încurcă totuși, deoarece am crezut că cheia publică trebuie să fie pe partea serverului, nu pe partea clientului meu. De asemenea, ghidurile pe care le-am analizat arată cum se generează o pereche de chei publice/private, apoi se creează clusterul folosind acele acreditări. Nu sunt sigur cum să fac Actualizați cluster-ul fără cheia publică. Dacă generez o nouă cheie publică, atunci cum va fi aceasta legată de cluster și cum funcționează aceasta pentru a-mi permite accesul la cluster? Am nevoie chiar de cheia publică dacă actualizez doar clusterul? Caut sfaturi despre ce se întâmplă sau cum să rezolv acest lucru, deoarece nu înțeleg clar problema.

Dacă scot linux_profile secțiune din configurația Terraform, plan de terraformă reușește, dar apoi dorește să creeze un cluster complet nou cu același nume. Nu sunt sigur ce se întâmplă sau ce trebuie să fac pentru a actualiza versiunea kubernetes.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.