Azure AKS с agi c - как создать его с помощью Terraform? - PullRequest
1 голос
/ 14 апреля 2020

В настоящее время я настраиваю AGI C (контроллер входа шлюза приложений Kubernetes) для среды AKS (https://azure.github.io/application-gateway-kubernetes-ingress/setup/install-existing/#using -a-service-Principal ).

Как вся среда настроена с Terraform, я хотел бы установить необходимый репозиторий Helm также с Terraform.

Думаю, следующий простой код должен справиться:


data "helm_repository" "agic_repo" {
 name      = "agic_repository"
 url       = "https://appgwingress.blob.core.windows.net/ingress-azure-helm-package/"
}

resource "helm_release" "agic" {
 name        = "agic"
 namespace   = "agic"
 repository  = data.helm_repository.agic_repo.metadata[0].url
 chart       = "application-gateway-kubernetes-ingress"

 depends_on = [
    data.helm_repository.agic_repo,
  ]
}

Но я столкнулся с этой проблемой:


module.agic.helm_release.agic: Creating...



Error: chart "application-gateway-kubernetes-ingress" not found in https://appgwingress.blob.core.windows.net/ingress-azure-helm-package/ repository



  on ../../modules/agic/main.tf line 91, in resource "helm_release" "agic":

  91: resource "helm_release" "agic" {

Так выглядит, как будто пакет не может быть найден. Кто-нибудь еще решал это раньше?

Я не знаком с Helm, поэтому я не знаю, как «просмотреть» в репозиториях Helm, чтобы проверить, обращаюсь ли я к правильному URI ...

Поэтому я добавил репо вручную с помощью

helm repo add application-gateway-kubernetes-ingress https://appgwingress.blob.core.windows.net/ingress-azure-helm-package/

. Когда я ищу репо, я получаю:

V5T:~$ helm search | grep ingress
application-gateway-kubernetes-ingress/ingress-azure    1.0.0           1.0.0                   Use Azure Application Gateway as the ingress for an Azure...

Любая помощь приветствуется!

PS : Конечно, я мог бы сделать это с bash однострочником, но было бы здорово, если бы вся среда создавалась Terraform ...

1 Ответ

0 голосов
/ 14 апреля 2020

Согласно предоставленным вами данным, оно должно быть следующим:

resource "helm_release" "agic" {
 name        = "agic"
 namespace   = "agic"
 repository  = data.helm_repository.agic_repo.metadata[0].url
 chart       = "ingress-azure"

 depends_on = [
    data.helm_repository.agic_repo,
  ]
}

, поэтому имя диаграммы будет другим

...