Импортировать вручную созданный кластер K8s в KOps

Когда-то я посещал все веб-страницы со словом «импорт KOps», но не находил способа импортировать мой вручную созданный кластер K8s. Кластер, созданный вручную, означает «Развернутое Infra на AWS с использованием Terraform и Kubernetes с использованием сценария обеспечения Terraform в качестве сценария оболочки». Теперь, когда я вижу, что управление средой вручную - это проблема, я с нетерпением жду возможности перенести ее в KOps. Для этого я сделал следующее:

  1. Установлены aws cli, kubectl и kops на моем локальном компьютере.

  2. Создан пользователь KOps с политиками AmazonEC2FullAccess, AmazonRoute53FullAccess, AmazonS3FullAccess, IAMFullAccess, AmazonVPCFullAccess и сгенерированы ключи доступа и секретные ключи.

  3. Настроил учетные данные с помощью aws configure.

  4. Создан сегмент S3 для хранения состояния.

  5. Задайте переменные env, такие как регион и имя кластера.

  6. Наконец, выполнила команду импорта kops, как показано ниже:

    kops import cluster --region ${REGION} --name ${OLD_NAME}

Но обнаружена ошибка ниже:

Cluster.kops "jjm-prod-use1-kubernetes" not found

Подробно:

$ kops import cluster --region ${REGION} --name ${OLD_NAME} -v 10
I0131 16:32:12.059651   25683 factory.go:68] state store s3://kops-state-store-jjm
I0131 16:32:13.133145   25683 s3context.go:194] found bucket in region "us-east-1"
I0131 16:32:13.133174   25683 s3fs.go:220] Reading file "s3://kops-state-store-jjm/jjm-prod-use1-kubernetes/config"

Это заставило меня серьезно задуматься о публикации этого вопроса. Есть ли способ, которым кластер K8s, созданный без использования kubeup.sh, можно поставить под контроль KOps? Пожалуйста, порекомендуйте.

Примечание. Я не могу воссоздать (уничтожить и создать) кластеры, когда они работают в производственной среде.

РЕДАКТИРОВАТЬ: Я знаю, что этого можно достичь, только если кластер был настроен с использованием kubeup.sh. Но есть ли другой выход?


person jagatjyoti    schedule 31.01.2019    source источник


Ответы (1)


Это возможно только при загрузке кластера с помощью сценария kube-up.sh, как официально объявлено в Страницы документации Kops. Фактически, kube-up.sh был исключен из списка поддерживаемых инструментов для AWS для установки Kubernetes. Несмотря на то, что кластер, составленный из kube-up.sh, предоставляет множество параметров настройки, которые конкретно применимы к AWS, исходный сценарий использует переменные среды для определения этих параметров. Поэтому я предполагаю, что в вашем случае добиться этого достаточно сложно.

person Nick_Kh    schedule 04.02.2019
comment
Точно! Но мне было интересно, есть ли способ. Перепробовав все возможные варианты, похоже, что есть только одно решение - воссоздать кластер. :( - person jagatjyoti; 04.02.2019