Тиллер: набрать tcp 127.0.0.1:80: подключиться: соединение отказано - PullRequest
1 голос
/ 24 октября 2019

Со времени обновления версий моего скрипта eks terraform. Я получаю сообщение об ошибке после ошибки.

В настоящее время я застрял на этой ошибке:

Ошибка: Get http://localhost/api/v1/namespaces/kube-system/serviceaccounts/tiller: dial tcp 127.0.0.1:80: connect: connectionотказано

Ошибка: Get http://localhost/apis/rbac.authorization.k8s.io/v1/clusterrolebindings/tiller: dial tcp 127.0.0.1:80: connect: соединение отклонено

Сценарий работает нормально, и я все еще могу использовать его со старымверсия, но я пытаюсь обновить версию кластера.

provider.tf

provider "aws" {
  region  = "${var.region}"
  version = "~> 2.0"

  assume_role {
    role_arn = "arn:aws:iam::${var.target_account_id}:role/terraform"
  }
}

provider "kubernetes" {
  config_path = ".kube_config.yaml"
  version = "~> 1.9"
}

provider "helm" {
  service_account = "${kubernetes_service_account.tiller.metadata.0.name}"
  namespace       = "${kubernetes_service_account.tiller.metadata.0.namespace}"


  kubernetes {
    config_path = ".kube_config.yaml"
  }
}

terraform {
  backend "s3" {

  }
}

data "terraform_remote_state" "state" {
  backend = "s3"
  config = {
    bucket         = "${var.backend_config_bucket}"
    region         = "${var.backend_config_bucket_region}"
    key            = "${var.name}/${var.backend_config_tfstate_file_key}" # var.name == CLIENT
    role_arn       = "${var.backend_config_role_arn}"
    skip_region_validation = true
    dynamodb_table = "terraform_locks"
    encrypt        = "true"
  }
}

kubernetes.tf

resource "kubernetes_service_account" "tiller" {
  #depends_on = ["module.eks"]

  metadata {
    name      = "tiller"
    namespace = "kube-system"
  }

  automount_service_account_token = "true"
}

resource "kubernetes_cluster_role_binding" "tiller" {
  depends_on = ["module.eks"]

  metadata {
    name = "tiller"
  }

  role_ref {
    api_group = "rbac.authorization.k8s.io"
    kind      = "ClusterRole"
    name      = "cluster-admin"
  }

  subject {
    kind = "ServiceAccount"
    name = "tiller"

    api_group = ""
    namespace = "kube-system"
  }
}

версия terraform: 0.12.12 версия модуля eks: 6.0.2

1 Ответ

1 голос
/ 25 октября 2019

Это означает, что ваша запись server: в вашем .kube_config.yml указывает на неправильный порт (и, возможно, даже на неправильный протокол, так как обычная связь kubernetes проходит через https и защищена взаимной аутентификацией TLS), или существуетбольше не прокси, который прослушивал на localhost:80, или, возможно, --insecure-port был 80 и теперь 0 (как настоятельно рекомендуется)

К сожалению, без каких-либо подробностей никто не может угадать , какое правильное значение было или должно быть изменено на

...