воскресенье, 8 января 2012 г.

CAELinux в облаке

источник*
Приходилось ли Вам сталкиваться с проблемами, когда нужно просчитать большую задачу, но нет возможности или желания покупать ради нее высокотехнологичный сервер-решатель с 64 ГБ памяти на борту? Или может нужно рассчитать газодинамику, а под рукой только Ваш ноутбук, на котором подобный расчет будет длиться сутками, и Вы хотели бы ускорить этот процесс при этом используя арендуемый по Вашему запросу кластер?

Тогда CAELinux in the Cloud может оказаться именно тем чего Вы так давно ждали!

Используя сервис Amazon Elastic Compute Cloud, Вы можете запустить столько “серверов” с CAELinux, “по требованию”, с характеристиками аппаратной части  полностью соответствующими Вашим потребностям в расчетных мощностях (максимальная конфигурация может содержать  8 ядер и 64 ГБ ОЗУ) и все это Вы получаете заплатив лишь за время использования серверов!


Более подробно:

Amazon Elastic Cloud Computing (данное название можно перевести как Эластичное** (гибкое и приспосабливающееся) вычислительное облако от Amazon, далее по тексту EC2, более подробно смотрите тут) это один из крупнейших хостинговых сервисов по аренде виртуальных машин. Он позволяет “по требованию” получить доступ к любому количеству серверов, которое только может потребоваться для достижения требуемой для Вашей задачи вычислительной мощности. Воспользоваться сервисом может любой. Общая стоимость эксплуатации начисляется за час работы каждого запущенного экземпляра. Цена которая выходит в итоге является более чем разумной и демократичной. Основной “фишкой” EC2 применительно к научным расчетам, является возможность выполнения очень больших задач на очень мощных серверах, которые могут иметь до 64 ГБ памяти и 8 ядер. При этом нет необходимости покупать подобное высокопроизводительное и дорогостоящее оборудование, а можно оплатить лишь несколько часов аренды, за которые посчитается задача.

Чтобы извлечь максимальную выгоду из гибкости даваемой облаками, CAELinux 2010 был переработан и адаптирован к использованию в облаке Amazon EC2. Теперь любой желающий может запустить образ CAELinux на “ферме” серверов  EC2 когда ему нужно, и использовать полный набор замечательного ПО для расчета задач МКЭ и ГГД (CFD/FEA). Данное ПО не только предустановлено, но и готово к запуску Ваших задач. Еще одним великолепным преимуществом запуска CAELinux в Обалке состоит в том, что Вам нет надобности платить большие деньги за лицензии инженерного ПО, а только за стоимость “железа” на котором ПО будет запущено. Таким образом, если, для примера, Вы хотите запустить очень большую газодинамическую задачу, для решения которой нужны будут четыре узла по 8 ядер на каждом, Вам не придется потратить ни единой копейки на лицензии!!

Для того, чтобы получить доступ к работающему экземпляру “сервера” на  EC2, Вы можете пойти привычным путем используя комбинацию из терминального доступа через SSH и  SFTP для обмена файлами между сервером и Вашим компьютером. Но в то же время Вы также можете запустить CAELinux в “Облаке” как удаленный виртуальный рабочий стол. Это возможно благодаря предустановленному серверу удаленного доступа NX. Используя бесплатный клиент  NoMachine NX  на Вашей рабочей станции, Вы можете получить полнофункциональную рабочую станцию для инженерных расчетов (CAE)  соединения.

Для того чтобы все корректно работало, пришлось создать принципиально новый релиз образа CAELinux - CAELinux EC2 который пока, что является предрелизом т.е. находится в режиме бета-тестирования и распространяется пока только для тестирования. Целью данного первого выпуска является задача дать возможность всем желающим протестировать сервис и сообщить чего именно не хватает в данном релизе и что в нем можно улучшить с Вашей точки зрения.

Использование CAELinux в облаке Amazon EC2

Для того чтобы начать воспользоваться услугами сервиса Amazon EC2, Вам необходим рабочий аккаунт на Amazon Web Service (AWS). Для более подробной информации по AWS пожалуйста посетите http://aws.amazon.com

 

Чтобы запустить экземпляр CAELinux:

1) Залогиньтесь в панели управления AWS и перейдите в закладку EC2,

2) Выберите Region = EU West и в левом меню перейдите в категорию  "Images AMIs" (Amazon Machine Image – образы виртуальных машин Amazon)

3)  Выберите фильтр "Public images" (общедоступные образы) и ищите по ключевому слову: "CAELinux" (keyword "CAELinux").

Вы должны увидеть следующий образ сервера:

AMI ID

Source

Kernel ID

Architecture

Root

ami-360b3b42

008531201741/CAELinux2010.2-20110730

aki-2e4a7f5a

x86_64

EBS

4) Кликните ПКМ (правой клавишей мыши) на образе и выберите "Launch instance" чтобы запустить сервер с данным образом.

Выберите количество экземпляров (number of instance), которое хотите запустить  (начинать лучше с одного, мне так кажется ;-) )

Выберите тип оборудования для сервера (server hardware). Неплохой начальной конфигурацией является  Large, m1.large, 7.5Gb RAM, 2 cores (двух ядерный сервер с 7.5 ГБ памяти)

Пожалуйста обратите внимание на тот факт, что величина почасовой оплаты сильно зависит от типа выбранного оборудования. Более подробно смотрите тут. Используйте “Spot Instances”*** если хотите сэкономить.

Продолжите работу помощника (wizard). Оставьте настройки ядра и  диска по умолчанию (kernel / ramdisk settings) и выберите или создайте пару ключей (create a "key pair"), если это необходимо 

Если Вы еще не создали группу (Firewall / Security group rule to allow SSH access) правил доступа по SSH это нужно сделать.  Чтобы позволить доступ по SSH необходимо разрешить использование 22 tcp порта ( tcp port 22, source 0.0.0.0/0).

Подтвердите созданную опцию и запустите мастер помощника (Wizard).

5)  Перейдите в закладку  Instances: в ней отображаются статусы всех Ваших “экземпляров”. Сервер станет доступным приблизительно через 2-3 минуты.

Получение доступа к запущенному экземпляру:

Запущенный экземпляр имеет два ip адреса, один – для работы по сети  внутри облака AWS, и и второй для доступа к машине из любой точки интернет.Каждому из  IP адресов соответствует свое DNS имя. То, которое Вам нужно для подключения, выглядит следующим образом: ec2-XX-XX-XXX-XX.eu-west-1.compute.amazonaws.com

Выберите запущенный экземпляр и в нижней закладке (ячейке) скопируйте публичное имя (Public DNS) для последующего использования.

a) Получение доступа к серверу через SSH (терминал):

Для подключения к Вашему серверу Вы можете воспользоваться своим любимым SSH клиентом (ssh на linux, putty на windows компьютерах). При подключении используйте адрес ec2-XX-XX-XXX-XX.eu-west-1.compute.amazonaws.com (чтобы избежать ошибок просто вставьте ранее скопированное DNS имя). Авторизация базируется исключительно на Вашей паре ключей (Amazon SSH keypair), так что лучше всего положить их в удобной для Вас дирректории и убедиться, что Вы убрали права на чтение и запись для всех остальных: chmod go-rwx mykeypair.pem

Теперь подключаемся:

ssh -i mykeypair.pem ubuntu@ec2-XX-XX-XXX-XX.eu-west-1.compute.amazonaws.com

Как только залогинетесь задайте пароль пользователя ubuntu:

passwd

b) Теперь для доступа к Вашему серверу используем клиент NX (remote desktop) :

Для начала установите клиент NoMachine NX на свой локальный компьютер. Более подробно тут

Теперь создайте новое подключение используя помощник NX Connection Wizard, задайте следующие настройки:

host = ec2-XX-XX-XXX-XX.eu-west-1.compute.amazonaws.com (используйте ранее скопированный адрес DNS чтобы избежать ошибок)

тип подключения = ADSL,

тип рабочего стола (Desktop) = GNOME (вместо KDE)

Выберите рабочее разрешение (Desktop Size) = минимум - 1024x768

Продолжите работу помощника и логиньтесь используя

логин (login): ubuntu

пароль (password): "тот что Вы задали в пункте a)"

Буквально через некоторое время (для первого раза оно будет около минуты, но не больше) у Вас появится окно с удаленным рабочим столом сервера на базе CAELinux запущенного в облаке Amazon EC2.

c) Передача файлов между Вашим компьютером и Вашим удаленным сервером:

Наиболее простым вариантом является использование любого удобного Вам клиента умеющего работать с SFTP или SCP для подключения к Вашему серверу. Если Вы используете Windows, Вы можете воспользоваться программами FileZilla или WinSCP для подключения и обмена файлами.

Для Linux, неплохим клиентом SFTP  является ранее упомянутая FileZilla. Также Вы можете использовать команду sshfs для монтирования удаленной папки. Самым простым вариантом подключения через SSH удаленной папки в Linux GNOME, является использование  инструмента "Connect to Server".

Впрочем чем бы Вы не воспользовались, в качестве основных настроек используйте в качестве адреса хоста (host address): ec2-XX-XX-XXX-XX.eu-west-1.compute.amazonaws.com, в качестве логина = ubuntu и пароля="your custom password" для подключения.

Хранение данных:

По умолчанию хранилище,встроенное в образ CAELinux хранит информацию лишь в течении своей “жизни”. Другими словами до первого выключения. Остановили экземпляр – потеряли все данные. Чтобы данные сохранились, выберите остановить экземпляр с последующей перезагрузкой.

При запуск, обратите внимание, что дисковое пространство предоставляемое основной дисковой системой ограничено (около 2.5 ГБ свободного пространства).

Для для локального хранения временных данных используйте возможности локального диска сервера. Доступ к такому локальному диску можно получить используя команду /mnt ну или  /home/ubuntu/localdisk. При этом Code-Aster был сконфигурирован таким образом, чтобы исползовать локальный диск исключительно как “рабочее пространство” (место для временного хранения рабочих файлов при расчете), но если Вы запустите большую задачу, убедитесь, что Вы настроили Ваш расчетный инструментарий для хранения всех временных файлов на /mnt.

Если Вам нужно нормальное постоянное хранилище, самым простым вариантом является создание нового раздела в консоли AWS (Amazon AWS console) и подключите данный раздел к работающему экземпляру.  В этом случае Вы сможете сохранить все свои данные, даже если экземпляр машины в EC2 перезагрузился по какой-то причине.

Остановка экземпляра CAELinux:

Если Вы хотите остановить запущенный экземпляр, причем так, чтобы автоматом остановить и начисление оплаты за использование сервиса, Вам нужно перейти в панель управления AWS (AWS management console), В закладке EC2 (EC2 Tab), в разделе “экземпляры” (Instance section). Щелчок правой клавишей мыши на экземпляре, который Вы хотите остановить, и выберите  "Terminate" в меню. Буквально через минуту машина будет остановлена, и все созданные данные будут потеряны (данные станут такими же, как на исходном образе). Для того чтобы сохранить изменения, выберите пункт "Stop", а не “Terminate”. Будьте аккуратны, потому что Экземпляры образов EBS (EBS Instance Images) не предназначены для хранения информации, для этих целей подключайте раздел диска EBS (EBS Volumes).
Если Вам нужно больше информации по Модулю Гибкого Хранилища (Elastic Block Store (EBS)), пожалуйста  прочитайте документацию по использованию Amazon EC2.

ВАЖНОЕ ЗАМЕЧАНИЕ: ЕСЛИ ВЫ НЕ ХОТИТЕ ОПЛАЧИВАТЬ ЧАСЫ ПРОСТОЯ, ВЫ ДОЛЖНЫ ПРЕКРАЩАТЬ (TERMINATE) РАБОТУ СОБСТВЕННХ ЭКЗЕМПЛЯРОВ ИЗ КОНСОЛИ УПРАВЛЕНИЯ AWS (AWS MANAGEMENT CONSOLE) !!

ВАЖНОЕ ЗАМЕЧАНИЕ №2: Если Вы прервете (TERMINATE) работу экземпляра, все данные, которые он содержит будут ПОТЕРЯНЫ. Для сохранения данных выберите остановку (Stop). Образы EC2 EBS не предназначены для постоянного хранения, если нужно – используйте внешние разделы EBS (EBS volumes) для хранения данных в облаке.

Обратная связь для пользователей и Ваших пожеланий

Если у Вас есть пожелания, комментарии и отзывы – пожалуйста оставляйте их на форуме.

И пожалуйста, не забывайте, что это пока что все еще бета версия.

Кластер в Облаке

Текущий образ CAELinux который хранится в облаке содержит все необходимые средства ждя запуска расчетов с использованием множества процессоров, но не содержит преднастроек для запуска задач на кластере из виртуальных машин EC2 (cluster of EC2 virtual machines).

Но в ближайшее время возможности “CAELinux in the Cloud” будут расширены включением в состав приложений небольшой утилиты по настройке кластера "CAELinux Cluster In the Cloud" в облаке. Для этого надо будет сконфигурировать ряд запущенных экземпляров CAELinux на EC2 для запуска больших задач с помощью MPI. Это позволит Вам запустить распределенную задачу (MPI jobs) на Вашем виртуальном кластере, используя Code-Aster, Code-Saturne, OpenFOAM или Elmer. Для того, чтобы помочь нам развивать CAELinux, подобный сервис создающий кластер в облаке (Cluster in the Cloud service) будет предлагаться в качестве сервиса с платной годовой подпиской (цену при этом планируем сделать очень разумной).


*Это перевод статьи, оригинал которой доступенпо ссылке. Перевод старался сделать по смыслу максимально близким к оригиналу. Если заметите неточности, просьба отписывать в комментариях

** Elastic -гибкий; приспособляющийся; удобный для применения.Т.е. гибкое решение, удобное для клиентов, которое может быть в любой момент подстроено под вычислительные потребности и финансовые возможности

*** Spot - место, ячейка, наличный товар, товар по кассовым сделкам, продаваемый на месте, готовый к сдаче, немедленно уплачиваемый, т.е. в данном случае, имеется в виду использование уже арендованных кем-то, но простаивающих в данный момент

Комментариев нет:

Отправить комментарий

Related Posts Plugin for WordPress, Blogger...
Rambler's Top100