Kubernetes: запуск и настройка в локальной демо-системе
Содержание:
1. Быстрый Kubernetes (Вы читаете данный раздел);
2. Запускаем сервисы онлайн;
3. Масштабируя высоты.
Kubernetes - система оркестрации для контейнеров Docker с открытым исходным кодом. В этой статье я покажу, как запустить и настроить ее в локальной демо-системе. Для простоты демонстрации я сделаю это на узлах VirtualBox, запущенных на локальном рабочем столе, но их легко заменить физическими узлами, облачными экземплярами Linux или другой технологией виртуализации, какая вам нравится. Чтобы настройка была простой, я воспользуюсь Vagrant—думаю, читатели этой рубрики легко его установят (для этого достаточно установить пакет vagrant командами yum install или apt-get — если не получится, зайдите на http://vagrantup.com и следуйте инструкциям).
Если у вас установлены VirtualBox и Vagrant, для установки и запуска Kubernetes достаточно выполнить приведенные ниже команды. Но учтите: при выполнении этих команд будет загружен файл Vagrant и запустятся виртуальные машины в локальной системе. Я, кстати, ненавижу эту тенденцию вслепую устанавливать что-то из Интернета, а в проектах она встречается все чаще и чаще. Как это возможно? Я бы высмеял администратора Windows, загружающего случайный EXE-файл и дважды щелкающего по нему, но вот эквивалент этих действий для Linux:
Считаете, это сложно? Значит, вы еще ни разу не сбрасывали пароль root в Linux - http://www.oldnix.org/reset-password-root-linux/ (http://www.oldnix.org/reset-password-root-linux/).
Впрочем, в данном случае это меня не остановило. Но если вы параноик (а системный администратор обязан им быть), всегда проверяйте такие вещи на тестовой системе, которую легко восстановить в случае сбоя и у которой нет доступа к каким бы то ни было важным данным.

Проект Kubernetes включает тестовую систему на основе Vagrant, что еще раз доказывает удобство Vagrant для быстрого тестирования развертываемых систем
Тем не менее это самый быстрый способ установки и запуска Kubernetes, который я видел. В проекте проделана большая работа, чтобы хорошо упаковать его. Vagrant, как я и говорил ранее — отличное средство для быстрого создания прототипов тестовых систем и систем для разработки. Вся настройка через SSH выполняется «прямо из коробки», и это отлично подходит для нашей ситуации. Приведенные выше команды загружают файл Vagrantfile и несколько скриптов и код для Kubernetes. При запуске Vagrantfile первоначально содержит информацию о главном и единственном узле Kubernetes. В качестве основы скрипт использует «компьютер» fedora. Первоначальная установка займет некоторое время, зависящее от скорости вашего интернет-подключения (но при последующих запусках все будет гораздо быстрее, так как Vagrant кэширует «компьютер» локально). Большая часть трудной работы для этой демонстрационной установки выполняется SaltStack, единственным решением для управления конфигурацией и Dev-Ops, о котором я еще не писал за последний год. Для сети также используется Open vSwitch, и он пригодится вам, если вы не сталкивались с ним раньше.

На этой схеме показана связь между Kubernetes и Open vSwitch в тестовом кластере на основе Vagrant
1.
2. Запускаем сервисы онлайн;
3. Масштабируя высоты.
Kubernetes - система оркестрации для контейнеров Docker с открытым исходным кодом. В этой статье я покажу, как запустить и настроить ее в локальной демо-системе. Для простоты демонстрации я сделаю это на узлах VirtualBox, запущенных на локальном рабочем столе, но их легко заменить физическими узлами, облачными экземплярами Linux или другой технологией виртуализации, какая вам нравится. Чтобы настройка была простой, я воспользуюсь Vagrant—думаю, читатели этой рубрики легко его установят (для этого достаточно установить пакет vagrant командами yum install или apt-get — если не получится, зайдите на http://vagrantup.com и следуйте инструкциям).
Если у вас установлены VirtualBox и Vagrant, для установки и запуска Kubernetes достаточно выполнить приведенные ниже команды. Но учтите: при выполнении этих команд будет загружен файл Vagrant и запустятся виртуальные машины в локальной системе. Я, кстати, ненавижу эту тенденцию вслепую устанавливать что-то из Интернета, а в проектах она встречается все чаще и чаще. Как это возможно? Я бы высмеял администратора Windows, загружающего случайный EXE-файл и дважды щелкающего по нему, но вот эквивалент этих действий для Linux:
$ export KUBERNETES_PROVIDER=vagrant
$ curl -sS https://get.k8s.io | bash Считаете, это сложно? Значит, вы еще ни разу не сбрасывали пароль root в Linux - http://www.oldnix.org/reset-password-root-linux/ (http://www.oldnix.org/reset-password-root-linux/).
Впрочем, в данном случае это меня не остановило. Но если вы параноик (а системный администратор обязан им быть), всегда проверяйте такие вещи на тестовой системе, которую легко восстановить в случае сбоя и у которой нет доступа к каким бы то ни было важным данным.
Проект Kubernetes включает тестовую систему на основе Vagrant, что еще раз доказывает удобство Vagrant для быстрого тестирования развертываемых систем
Быстрый Kubernetes
Тем не менее это самый быстрый способ установки и запуска Kubernetes, который я видел. В проекте проделана большая работа, чтобы хорошо упаковать его. Vagrant, как я и говорил ранее — отличное средство для быстрого создания прототипов тестовых систем и систем для разработки. Вся настройка через SSH выполняется «прямо из коробки», и это отлично подходит для нашей ситуации. Приведенные выше команды загружают файл Vagrantfile и несколько скриптов и код для Kubernetes. При запуске Vagrantfile первоначально содержит информацию о главном и единственном узле Kubernetes. В качестве основы скрипт использует «компьютер» fedora. Первоначальная установка займет некоторое время, зависящее от скорости вашего интернет-подключения (но при последующих запусках все будет гораздо быстрее, так как Vagrant кэширует «компьютер» локально). Большая часть трудной работы для этой демонстрационной установки выполняется SaltStack, единственным решением для управления конфигурацией и Dev-Ops, о котором я еще не писал за последний год. Для сети также используется Open vSwitch, и он пригодится вам, если вы не сталкивались с ним раньше.

На этой схеме показана связь между Kubernetes и Open vSwitch в тестовом кластере на основе Vagrant