Развертывание кластера Kubernetes в Digital Ocean?

Похоже, что get.k8s.io - это рекомендуемый способ развертывания кластера Kubernetes, но Digital Ocean не поддерживается этим скриптом.

Есть ли альтернативный способ легко настроить кластер в Digital Ocean, который я пропустил?

Спасибо


person user964375    schedule 29.03.2015    source источник
comment
Вы читали digitalocean.com/community/tutorials/?   -  person Jon Skeet    schedule 29.03.2015
comment
В этом руководстве упоминается, что он был разработан с версией 0.7, поэтому я подумал, что он, скорее всего, устарел. Было бы здорово, если бы существовало что-то вроде get.k8s.io, которое выполняло бы всю работу за пользователя.   -  person user964375    schedule 29.03.2015
comment
Я предполагаю, что по мере развития k8s будет появляться все больше и больше размещенной поддержки, такой как Google Container Engine. (Заявление об ограничении ответственности: я сотрудник Google.) Боюсь, что я не хотел бы говорить, есть ли на данный момент более простой способ запустить Digital Ocean.   -  person Jon Skeet    schedule 29.03.2015
comment
Понятно, тогда я воспользуюсь Google Container Engine для изучения кубернетов :)   -  person user964375    schedule 29.03.2015
comment
Я работаю над PR, чтобы дать кубернетам любовь к coreos, размещенным в DigitalOcean. Вы можете посмотреть: github.com/looztra/coreos-k8s-demo / tree / update_052015. На данный момент я все еще сталкиваюсь с некоторыми проблемами со службой DNS (SkyDNS), но кубернеты без DNS уже в порядке   -  person Christophe Furmaniak    schedule 13.05.2015


Ответы (5)


Вы можете использовать kubicorn, чтобы довольно легко создать довольно крутой кластер кубернетов в Digital Ocean. Вот шаги, необходимые для этого:

// Install kubicorn
go get github.com/kris-nova/kubicorn

// Configure your auth
export DIGITALOCEAN_ACCESS_TOKEN=***************************************** 

// Create your kubernetes profile from the default profile
kubicorn create mycluster --profile do

// Tweak your cluster as you like
kubicorn edit mycluster

// Apply your profile
kubicorn apply mycluster -v 4

// Use kubectl to access your cluster
kubectl get no

Обратите внимание, что kubicorn поставляется как библиотека, а также как инструмент командной строки, поэтому вы, вероятно, сможете также включить эту логику в программу, если хотите.

Источник: https://www.nivenly.com/kubernetes-on-digital-ocean-with-encrypted-vpn-service-mesh/.

person Kris Nova    schedule 04.08.2017
comment
Уделите несколько минут, чтобы улучшить свой ответ, суммируя важную информацию из связанного сообщения в блоге здесь. Поскольку мы создаем библиотеку информации на длительный срок, мы требуем, чтобы все ответы были самодостаточными и включали ссылки только для справки < / а> - person Cody Gray; 04.08.2017
comment
Я обновился на конкретном примере .. Надеюсь, это поможет, спасибо! - person Kris Nova; 22.09.2017
comment
Как добавить внешний ip в цифровой океан? - person ROI; 12.02.2018

Вы можете сделать это вручную или с помощью Ansible. Я предлагаю вам взглянуть на это репозиторий github https://github.com/kubernetes-incubator/kubespray/blob/master/contrib/inventory_builder/inventory.py

На самом деле вы можете развернуть рабочий, многоузловой, TLS-защищенный, готовый к работе кластер k8s, просто выполнив следующие простые шаги:

1) Создайте одну или несколько машин у вашего любимого провайдера облачного хостинга.

Вы можете использовать скрипт Terraform или сделать это вручную.

2) git clone https://github.com/kubernetes-incubator/kubespray/blob/master/contrib/inventory_builder/inventory.py

3) touch ./kubespray/inventory/inventory.cfg

4) Отредактируйте только что созданный файл и сделайте что-нибудь вроде:

[etcd]
<master-ip>

[kube-master]
<master-ip>

[kube-node]
<node1-ip>
<node2-ip>
<node3-ip>

[k8s-cluster:children]
kube-node
kube-master

Взгляните на файл примера инвентаризации для справки.

5) установите ansible на свой компьютер с помощью brew или apt-get, например.

brew install ansible

6) запустите ansible playbook

ansible-playbook -u root -b -i inventory/inventory.cfg cluster.yml

Пользователь зависит от дистрибутива Linux, который вы выбрали для развертывания на машинах, но убедитесь, что у выбранного вами использования есть root-доступ.

Посмотрите это видео на YouTube: https://www.youtube.com/watch?v=N9q51JgbWu8&t=339s

person xechelonx    schedule 19.06.2017
comment
У меня проблема с получением внешнего ip в цифровом океане, может у вас есть какое-то решение? - person ROI; 12.02.2018

Вы также можете использовать Kubeadm. Сегодня я установил кластер Kubernet в цифровом океане с помощью Kubeadm.

Похоже, Kubeadm - это инструмент, разработанный Google, и скоро он будет рекомендован Google. Хотя на сегодняшний день он находится в альфа-состоянии.

Подробности приведены здесь. Использование kubeadm для создания кластера | Kubernetes

person rayhan    schedule 29.10.2016
comment
Kubeadm в настоящее время находится в стадии бета-тестирования и не готов к производству. Если вы просто хотите надрать шины с кубернетами, это может быть нормально, но для более серьезных развертываний я бы предложил использовать что-то вроде kargo (ansible) или заклинание, или обратиться к поставщику услуг, например GCE или AWS. - person xechelonx; 19.06.2017

Тим Смарт составил несколько сборников пьес по Digital Ocean Ansible здесь. Я не пробовал их, но похоже, что они обновлены для работы с Kubernetes v1.0.3.

person CJ Cullen    schedule 01.10.2015

Вы можете использовать это в качестве отправной точки. Я тоже этим пользовался.

https://github.com/jiteshmohan/kubernetes-do

У меня есть старая версия моих текущих сценариев для развертывания моего личного кластера, чтобы делать это с помощью terraform, если вы хотите взглянуть.

https://github.com/cescoferraro/kubernetes-do

Такие люди, как Skippbox, придумали хороший инструмент для развертывания одного экземпляра kubernetes на DO:

https://github.com/skippbox/kmachine

person CESCO    schedule 03.10.2016