(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Управление IBM SmartCloud Enterprise: Часть 2. Применение и поддержка пакетов программного обеспечения с ICCT

Источник: IBM

Пакет ПО - это совокупность файлов программного обеспечения, конфигурации и метаданных, которые можно установить на экземпляр виртуальной машины. В этой статье из двух частей авторы показывают, как использовать инструмент IBM Image Construction and Composition Tool (ICCT) для создания пакета ПО и работы с ним в системе IBM SmartCloud Enterprise. ICCT решает задачи учета и обеспечивает удобный пошаговый процесс и графический интерфейс пользователя для создания пакетов ПО, настройки экземпляров виртуальных машин и создания образов. Во второй части авторы показывают, как создать специальный образ с пакетом программного обеспечения, составленным в Части 1.

Эта статья демонстрирует, как поддерживать пакеты программного обеспечения в среде IBM SmartCloud Enterprise. На конкретном примере описаны действия, необходимые для записи нового частного образа с предварительно установленным пакетом ПО и его использования на виртуальной машине Linux . Предполагается, что читатель знаком с идеями облачных вычислений. Для того чтобы повторить действия, описанные в этой статье, необходима учетная запись пользователя IBM SmartCloud Enterprise.

Из Части 1 вы узнали, как создавать пакеты программ для виртуальных машин в среде IBM SmartCloud Enterprise. Теперь воспользуемся таким пакетом для создания специального образа. Итак, приступим.

Создание специального образа

  1. Войдите в пользовательский интерфейс ICCT и выберите Images > Build Images. Или можно вернуться к странице приветствия и нажать кнопку Build and Manage Images.

    Рисунок 1. Создание образов в ICCT
    Создание образов в ICCT

  2. Нажмите кнопку Import from Cloud Provider (импорт от поставщика облака).
  3. Выберите RedHat Enterprise Linux 6 64-bit на левой панели и нажмите кнопку Add, чтобы добавить эту ОС в окно импорта. Нажмите кнопку Import.

    Рисунок 2. Импорт образа RedHat Enterprise Linux 6 64-bit
    Импорт образа RedHat Enterprise Linux 6 64-bit

  4. Метаданные образа импортируются и перечисляются в окне левой панели. Выберите образ, чтобы увидеть его детали в окне правой панели.

    Рисунок 3. Подробная информация по RedHat Enterprise Linux 6 64-bit
    Подробная информация по RedHat Enterprise Linux 6 64-bit

  5. Нажмите кнопку Extend на правой панели, введите данные и нажмите кнопку Create. На левой панели откроется новый проект образа.

    Рисунок 4. Расширение образа
    Расширение образа

  6. На правой панели нажмите кнопку Start Editing (начать редактирование). Появится сообщение о состоянии образа "Out of Sync" (Синхронизация отсутствует). Разверните раздел Software Bundles, чтобы добавить пакет ПО Google Chrome, созданный в Части 1.

    Рисунок 5. Обновление пакетов ПО
    Обновление пакетов ПО

  7. Нажмите кнопку Add Bundle (Добавить пакет). Появится диалоговое окно, позволяющее выбирать пакеты, совместимые с этим образом. Google Chrome входит в список.

    Рисунок 6. Добавление в образ пакета программного обеспечения Google Chrome
    Добавление в образ пакета программного обеспечения Google Chrome

  8. Выберите Google Chrome и нажмите кнопку Add (Добавить).

    Рисунок 7. GoogleChrome добавил проект в образ
    GoogleChrome добавил проект в образ

  9. Нажмите кнопки Save, Done Editing и Synchronize. Появится страница соглашения. Обратите внимание на локальный пакет Enablement, который ICCT добавляет по умолчанию. Нажмите кнопку I agree (Я согласен) и Done (Готово).

    Рисунок 8. Синхронизация образа
    Синхронизация образа

  10. ICCT вызывает API SmartCloud для инициализации базового образа. После создания экземпляра ICCT загружает и устанавливает пакеты ПО. Зайдите в SmartCloud Portal, чтобы увидеть их экземпляры. В SmartCloud Portal видны запрашиваемые временные экземпляры (см. имя с уникальным ID рядом с именем образа RHEL6WithGoogleChrome), а затем экземпляры в состоянии инициализации. Возможно, после инициализации экземпляра придется обновить панель управления, чтобы увидеть пакет ПО в списке.

    Рисунок 9. Инициализация экземпляра в SmartCloud после синхронизации
    Инициализация экземпляра в SmartCloud после синхронизации

  11. Когда временный экземпляр создан, он переходит в состояние Active на портале SmartCloud.

    Рисунок 10. Инициализированный экземпляр в SmartCloud после синхронизации
    Инициализированный экземпляр в SmartCloud после синхронизации

  12. Когда экземпляр активен, ICCT начинает установку пакетов программного обеспечения. Можно вернуться в GUI ICCT и нажать кнопку Refresh (Обновить), относящуюся к образу. Статус образа показывает Synchronizing (Синхронизация), а ниже описание: Installing execution package on VM (Установка исполняемого пакета на ВМ).

    Рисунок 11. Обновление статуса образа в инструменте Image Construction and Composition
    Обновление статуса образа в инструменте Image Construction and Composition

    Рисунок 12. Неудачная синхронизация в ICCT
    Неудачная синхронизация в ICCT

    В случае ошибки войдите во временный экземпляр, найдите и исправьте ошибку в сценариях RAM и ICCT и снова нажмите кнопку Synchronize. ICCT удалит старый временный экземпляр и создаст новый.

    Рисунок 13. Успешная синхронизация в ICCT
    Успешная синхронизация в ICCT

Когда ICCT заканчивает установку пакетов, статус образа меняется на Synchronized. Можно войти в экземпляр и убедиться, что Google Chrome установлен. Проверьте IP-адрес временного экземпляра в SmartCloud Portal с помощью ${SmartCloud_VM}, чтобы можно было войти в экземпляр через SSH как idcuser.

Проверка работоспособности Google Chrome

Чтобы убедиться, что Google Chrome работает в этом временном экземпляре, выполните следующие действия.

  1. Запустите vncserver в экземпляре и откройте порт 5901, подключитесь через vncviewer и запустите Google Chrome. В инструкциях используйте свой IP-адрес, а не тот, что показан в примере.
    ssh idcuser@${SmartCloud_VM}
    Last login: Fri Mar  2 14:43:35 2012 from vhost4244.site2.compute.ihost.com
    [idcuser@vhost0134 ~]$ vncserver -geometry 1280x1024 -depth 16
    

  2. Для доступа к рабочим столам требуется пароль.
    Password:
    Verify:
    xauth:  creating new authority file /home/idcuser/.Xauthority
    
    New 'vhost0134:1 (idcuser)' desktop is vhost0134:1
    
    Creating default startup script /home/idcuser/.vnc/xstartup
    Starting applications specified in /home/idcuser/.vnc/xstartup
    Log file is /home/idcuser/.vnc/vhost0134:1.log
    
    [idcuser@vhost0134 ~]$ sudo iptables -I INPUT -m state --state NEW -p
     tcp --destination-port 5901 -j ACCEPT
    

  3. Выполните команды vncviewer ${SmartCloud_VM}:1 и start /opt/google/chrome/google-chrome, чтобы проверить, что он работает.

В целях безопасности, вместо процесса, приведенного выше, можно запустить VNC через SSH-туннель, например, так:

ssh -i ~/.ssh/key_name -L 5901:${SmartCloud_VM}:5901 idcuser@${SmartCloud_VM}

Затем выполните команды vncviewer localhost:1 и start /opt/google/chrome/google-chrome, чтобы убедиться, что все работает.

Рисунок 14. Запуск Chrome в экземпляре SmartCloud
Запуск Chrome в экземпляре SmartCloud

Закройте Google Chrome. Внесите любые дальнейшие ручные изменения, которые необходимо сохранить в экземпляре, и выйдите из него.

Запись образа

Теперь, когда временный экземпляр работает надлежащим образом, запишите его как образ, чтобы больше не переустанавливать Google Chrome.

  1. Нажмите кнопку Capture в ICCT. Образ перейдет в состояние синхронизации в ICCT GUI.

    Рисунок 15. Создание образа в ICCT с помощью команды Capture
    Создание образа в ICCT с помощью команды Capture

  2. На вкладке Instance временного экземпляра в SmartCloud Portal появляется уведомление о сохранении образа.

    Рисунок 16. Уведомление о сохранении образа
    Уведомление о сохранении образа

    Это означает начало записи нового частного образа с предварительно установленным Google Chrome.

  3. На вкладке Image в SmartCloud Portal новый частный образ RHEL6WithGoogleChrome находится в состоянии записи.

    Рисунок 17. Запись образа в SmartCloud
    Запись образа в SmartCloud

    Когда новый образ записан, можно создать новый экземпляр записанного образа прямо из SmartCloud Portal. ICCT автоматически удаляет временный экземпляр.

  4. Когда образ перейдет в состояние Captured, обновите панель управления, вернитесь на вкладку Images и выберите записанный образ, чтобы увидеть пакеты программного обеспечения этого образа. Пакеты ПО обновляются, когда ICCT обновляет файл Semantic Topology ресурса образа RAM после успешной записи образа.

    Рисунок 18. Образ в SmartCloud
    Образ в SmartCloud

    Теперь образ с предварительно установленным Google Chrome доступен для создания новых экземпляров.

  5. Если нажать кнопку Refresh в ICCT, статус образа должен смениться на Capture Complete (Запись завершена).

    Рисунок 19. Статус "Запись завершена" в ICCT
    Статус Запись завершена в ICCT

  6. с деталями образа RHEL6WithGoogleChrome можно ознакомиться в RAM (ресурс Template Topology).

    Рисунок 20. Обычные детали ресурса Template Topology в RAM
    Обычные детали ресурса Template Topology в RAM

  7. В файле топологии Rhel6.1_x64.topology можно заметить ссылку на ресурс GoogleChrome SoftwareBundle с указанием UUID и версии RAM (см. рисунок 21 и листинг 1).

    Рисунок 21. Файл семантической топологии ресурса
    Файл семантической топологии ресурса

    Листинг 1. Файл семантической топологии ресурса

    <core:unit uuid="_z79cOWSIEeG4Dsea31AM7A" name="bundle_455977"
     goalInstallState="installed" initInstallState="installed">
        <core:capability uuid="_z79cOmSIEeG4Dsea31AM7A" name="cap" linkType="any">
          <core:extendedAttribute uuid="_dZzakWSpEeG4Dsea31AM7A" name="symbolicName">
            <core:data xsi:type="xsd:string" uuid="_z79cO2SIEeG4Dsea31AM7A">
             <strong>com.google.chrome</strong>
            </core:data>
          </core:extendedAttribute>
          <core:extendedAttribute uuid="_dZzakmSpEeG4Dsea31AM7A" name="version">
            <core:data xsi:type="xsd:string" uuid="_z79cPGSIEeG4Dsea31AM7A">
             1.0.0
            </core:data>
          </core:extendedAttribute>
          <core:extendedAttribute uuid="_dZzak2SpEeG4Dsea31AM7A" name="bundleName">
            <core:data xsi:type="xsd:string" uuid="_z79cPWSIEeG4Dsea31AM7A">
             <strong>GoogleChrome</strong>
            </core:data>
          </core:extendedAttribute>
          <core:extendedAttribute uuid="_dZzalGSpEeG4Dsea31AM7A" name="bundleRepoId">
            <core:data xsi:type="xsd:string" uuid="_z79cPmSIEeG4Dsea31AM7A">
             <strong>ryo-asset://07356E0D-3868-1709-0F95-AD9FF0355FF4_1.0.0@
             https://www-147.ibm.com/cloud/enterprise/ram.ws</strong>
            </core:data>
          </core:extendedAttribute>
        </core:capability>
    

  8. В листинге 2 показано, как воспользоваться API REST для извлечения списка SwBundles для записанного образа.

    Листинг 2. Извлечение списка SwBundles с помощью API REST

    curl -k -H 'Accept: application/json' -u <userid7gt;:<password>
     https://www-147.ibm.com/computecloud/enterprise/api/rest/20100331/
      offerings/image/${imageId}/swbundle
    where imageId is  20045166
    
    {"SwBundleImageDetails":
     [
      {"SwBundleNum":1,"SwBundlePricingDetails":
      {"rate":0,"unitOfMeasure":"UHR","countryCode":"897","effectiveDate":1313107200000,
       "currencyCode":"USD","pricePerQuantity":1},
      "RamUuid":"07356E0D-3868-1709-0F95-AD9FF0355FF4",
      "RamVersion":"1.0.0","name":"GoogleChrome","id":"2909","description":
      "Install Latest Google Chrome using yum"}
     ]
    }
    

Создание экземпляра

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

  1. Подключитесь к SmartCloud Portal. Выберите образ на вкладке Image и нажмите кнопку Create Create (Создать экземпляр).

    Рисунок 22. Создание экземпляра в SmartCloud
    Создание экземпляра в SmartCloud

    Рисунок 23. Принятие условий соглашения
    Принятие условий соглашения

  2. Обратите внимание на имя образа и пакет ПО на странице соглашения. Нажмите кнопку Submit (Отправить).

    Рисунок 24. Отправка запроса на экземпляр в SmartCloud
    Отправка запроса на экземпляр в SmartCloud

  3. Когда экземпляр инициализирован, можно проверить, что Google Chrome работает, точно так же, как во временном экземпляре (см. выше). Если вы не закрыли браузер перед записью, то возможно, придется удалить /home/idcuser/.config/google-chrome/SingletonLock.

    Рисунок 25. Успешное создание экземпляра в SmartCloud
    Успешное создание экземпляра в SmartCloud

Последние замечания

Специалист по программному обеспечению должен гарантировать, что в первой строке bash-сценария указано местоположение интерпретатора bash в виде #!/bin/bash. Механизму Virtual System Activation Engine (VSAE), который запускает выполнение сценариев конфигурации и сброса, нужно указать местоположение интерпретатора, иначе сценарии не выполнятся.

Если нужно написать сценарии на платформах Windows, то до загрузки этих сценариев в ICCT их необходимо обработать dos2unix или аналогичным инструментом.

Во время создания виртуального образа ICCT загружает и устанавливает пакет программного обеспечения в экземпляре. Во время инициализации SmartCloud не копирует ресурс RAM Composable Software Bundle в экземпляр автоматически; однако SmartCloud позволяет копировать в экземпляр файлы из ресурса Template Topology (образа), так что возможна дополнительная ручная настройка путем обновления ресурса образа Template Topology RAM.

Образ Google Chrome не требует никакой дополнительной настройки. Однако если вы хотите внести незначительные изменения в экземпляр во время инициализации без использования ICCT для перезаписи нового образа, можно создать клон этого образа или обновить ресурс Template Topology записанного образа.

Все сценарии активации ресурса Template Topology должны быть упакованы в папку activation_scripts русурса в каталоге ресурсов IBM Rational. Эта папка должна также содержать файл scripts.txt с описанием дополнительных файлов, необходимых для создания экземпляра, и их местоположения. Файл scripts.txt определяет пары имен и значений для сценариев активации. Имя ― это фактическое имя файла, с которым вы работаете, а значение ― полный путь и имя файла, который должен присутствовать в экземпляре. Следующий пример демонстрирует файл scripts.txt для образа сервера Linux NFS.

run_once.txt=/etc/init.d/cloud-startup3.sh
config.txt=/etc/cloud/nfs_config.pl

Файлы сценариев в папке activation_scripts и ссылки на них в scripts.txt копируются в указанные каталоги экземпляра до его запуска. Если какой-либо из файлов сценария уже существует в файловой системе вашего образа, он будет заменен тем, который находится в каталоге русурсов IBM Rational.

Заключение

Эти две статьи на простом примере научили читателей создавать и поддерживать пакеты программного обеспечения с помощью ICCT в среде IBM SmartCloud Enterprise; в них показано также, как создать образ с этим пакетом программного обеспечения с помощью ICCT.



 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 28.11.2012 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
IBM Rational Functional Tester Floating User License
IBM RATIONAL Rose Enterprise Floating User License + Sw Subscription & Support 12 Months
IBM RATIONAL Quality Manager Quality Professional Authorized User Single Install License + Sw Subscription & Support 12 Months
IBM RATIONAL Clearcase Floating User License + Sw Subscription & Support 12 Months
IBM RATIONAL Clearcase Floating User From Rational Clearcase Lt Floating User Trade Up License + Sw Subscription & Support 12 Months
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Безопасность компьютерных сетей и защита информации
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
СУБД Oracle "с нуля"
Программирование на Visual С++
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100