Статьи

TOSCA Orchestration для VMware — гибридное облако стало проще

[Эта статья была написана Йорамом Вайнребом .]

Cloudify VMware |  TOSCA Orchestration |  VMware / OpenStack |  OpenStack / VMware |  VMware Hybrid Cloud |  Гибридное Облако |  TOSCA


Недавно мы тесно сотрудничали с VMware, чтобы сделать гибридное облако реальностью. Большинство корпоративных организаций выбирают многоблаковую стратегию по многим причинам. Они начинают с VMware и OpenStack для своей среды частного облака и комбинации открытого облака для сценария dev / test или емкости доступа. Более того, многие крупные операторы связи также переходят от дорогостоящих аппаратных устройств к виртуализированному центру обработки данных (Network Functions Virtualization) на основе стека, аналогичного используемому предприятиями.

Вот почему для Cloudify была важная цель — иметь возможность расширить свою и без того широкую поддержку межоблачной оркестровки, чтобы поддерживать предложения VMware по виртуализации и облаку.

Согласование TOSCA для VMware в Cloudify позволяет легко переносить и переносить рабочие нагрузки между инфраструктурой VMware и любым облаком — и обратно, и все это с одним и тем же планом.


В этом посте я объясню, как вы можете запустить свою первую оркестровку приложений в vCloud Air — публичном облачном предложении VMware — с помощью Cloudify для автоматизации рабочих процессов на узлах, смоделированных с использованием спецификации TOSCA .

Мы начнем с локальной установки Cloudify CLI, затем загрузим менеджер Cloudify и, наконец, загрузим и развернем план нашего веб-приложения в облаке vCloud Air с помощью этого менеджера.

Вы можете посмотреть это видео, которое демонстрирует реализацию этого процесса шаг за шагом ниже.

Для начала вам понадобятся учетные данные учетной записи vCloud Air через учетную запись подписки (поддержка по запросу скоро будет).

Кроме того, вам нужно создать шаблон Ubuntu, который может поддерживать Docker (версия 14.04 или старше с обновлением ядра). Вам нужно будет добавить в этот шаблон возможность «SSH без пароля», сгенерировав ключ SSH, а затем добавив открытый ключ SSH в файл пользователя .ssh / authorized_keys .

Начнем с установки инструмента командной строки Cloudify (CLI):

  1. Убедитесь, что у вас установлен Python 2.7 и менеджер пакетов pip (если pip не установлен, сделайте это, используя эти инструкции ).

  2. Установить Python Virtualenv

    pip install virtualenv 
  3. Создать новую виртуальную среду

    virtualenv yournewcfyenv 
  4. CD в эту новую папку («yournewcfyenv»)

  5. Активировать виртуальную среду

    source ./bin/activate 
  6. Установите Cloudify CLI

    pip install cloudify 
  7. Запустите, cfy –versionчтобы убедиться, что инструмент Cli был успешно установлен

После того, как мы установили Cloudfy CLI, мы хотим развернуть менеджер Cloudify в нашем облаке vCloud Air. Cloudify построен с использованием подключаемой архитектуры, где поддержка облаков обеспечивается облачным плагином, который содержит схему менеджера. Это план, который устанавливает приложение Cloudify manager таким же образом, как мы позже установим план приложения.

  1. Получите плагин vCloud Air cloud от github

    wget https://github.com/cloudify-cosmo/tosca-vcloud-plugin/archive/1.0m2.zip
    unzip 1.0m2.zip

  2. Перейдите в папку tosca-vcloud-plugin .

  3. В папке manager_blueprint отредактируйте файл input.json .template и заполните все пустые свойства.

    {
    "vcloud_username": "",
    "vcloud_password": "",
    "vcloud_url": "https://vchs.vmware.com",
    "vcloud_service": "<#########-####>",
    "vcloud_vcd": "<#########-####>",
    "manager_server_name": "",
    "manager_server_catalog": "",
    "manager_server_template": "",
    "management_network_name": "",
    "floating_ip_gateway": "<#########-####>",
    "floating_ip_public_ip": "###.###.###.###",
    "manager_private_key_path": "",
    "agent_private_key_path": "<~/.ssh/vcloud.pem>"
    
    }
  4. Сохраните его под тем же именем без суффикса шаблона

  5. Чтобы запустить самозагрузку, выполните следующие команды:

    cfy init
    cfy local install-plugins –p ./manager_blueprint/vcloud.yaml
    cfy bootstrap –p ./manager_blueprint/vcloud.yaml –i ./manager_blueprint/inputs.json

  6. Вы должны увидеть довольно длинный вывод консоли, который должен заканчиваться IP-адресом вашего недавно созданного менеджера Cloudify.

Когда менеджер Cloudify запущен, пришло время загрузить наш план … но сначала нам нужно его получить.

nodecellar_create_deployment nodecellar_deployment_completed

  1. Скачать образец плана

    wget https://github.com/cloudify-cosmo/cloudify-nodecellar-docker-example/archive/vcloud-plugin.zip
    unzip vcloud-demo.zip

  2. Загрузить план менеджеру

    cfy blueprints upload –b myblueprint –p cloudify-nodecellar-docker-example/blueprint/docker-vcloud-blueprint.yaml
  3. Откройте менеджер IP в веб-браузере (IP можно получить, запустив cfy status)

  4. Выберите « myblueprint », и отобразится представление топологии, описывающее развертывание.

  5. Нажмите кнопку « Создать развертывание » (рисунок 1).

  6. Во всплывающем диалоговом окне заполните все поля и назовите развертывание.

  7. Нажмите развертывание, и развертывание начнет процесс инициализации.

  8. После этого выберите рабочий процесс установки в представлении развертывания, и рабочий процесс начнет установку.

  9. Когда все узлы станут зелеными, ваше приложение готово для просмотра в пользовательском интерфейсе.

В этой статье мы рассмотрели простой сценарий развертывания менеджера Cloudify в vCloud Air, а затем загрузки загруженного проекта на основе TOSCA и, наконец, его развертывания в облаке.

Это позволяет моделировать процессы DevOps в удобочитаемом формате, поддерживать документы, которые можно выполнить с помощью Cloudify в vCloud Air, vSphere, а также в гибридных облачных средах.

** Краткое примечание: **

Плагин Cloudify vCloud Air находится в стадии разработки, и этот предварительный просмотр рассматривается в альфа-версии. В этой версии каждой виртуальной машине был назначен плавающий IP-адрес (правило DNAT) для эксклюзивного хранения этого открытого IP-адреса. Следовательно, чтобы менеджер и виртуальная машина проекта работали, как описано выше, вам потребуется как минимум два общедоступных IP-адреса, для которых не определены правила NAT. Для выпуска плагина мы удалим это ограничение и позволим вам определить правила NAT уровня порта.