- •Лекція 7. Grid-портал для доступу користувачів до ресурсів і прикладних програм Grid
- •10.1 Будова кластера
- •10.2 Організація мережі обчислювального кластеру
- •10.2.1 Мережеві карти
- •10.2.2 Комутатори
- •10.2.3 Мережеве забезпечення кластеру.
- •10.2.4 Мережева файлова система
- •10.2.5 Конфігурація сервера
- •10.2.6 Конфігурація клієнтів
- •10.2.7 Ssh, беспарольный доступ
- •10.3 Розпаралелювання програм
- •10.3.1 Варіанти декомпозиції
- •10.3.2 Тривіальна декомпозиція
- •10.3.3 Функціональна декомпозиція
- •10.3.4 Декомпозиція даних
- •10.3.5 Regular Domain Decomposition
- •10.3.6 Сітка процесів
- •10.3.7 Зміна елементів даних
- •10.3.8 Область перекриття
- •10.3.9 Граничний обмін
- •10.3.10 Деталізація
- •10.4 Паралельна віртуальна машина (pvm)
- •10.4.1 Взаємодія завдань у pvm
- •10.4.2 Управління завданнями
- •10.4.3 Передача повідомлень
- •10.4.4 Архівування даних
- •10.4.5 Установка pvm
- •10.4.6 Адміністрування pvm
- •10.5 Інтерфейс передачі повідомлень (mpi)
- •10.5.1 Встановлення системи mpi
- •10.5.2 Конфігурація кластеру mpich
- •10.5.3 Конфігурація кластеру lam/mpi
- •10.5.4 Конфігурація кластеру OpenMp
- •10.5.5 Компіляція і виконання
- •10.5.6 Загальна організація mpi
- •Лекція 8. Grid-застосування
10.2.5 Конфігурація сервера
Для забезпечення мережевого доступу вузлів кластеру до розшарених на сервері кластеру ресурсів необхідно спочатку вирішити підключення nfs-клієнтам до nfs-сервера. Далі будемо припускати, що вузли кластера мають ip-адреси в діапазоні 192.168.1.2-192.168.1.254. Консоль кластеру, до каталогів файлової системи до якої ми будемо підключатися через NFS, має ip-адреса 192.168.1.1. Для дозволу мережевого доступу до NFS з цих адрес у файлі /etc/hosts.allow прописуємо наступну рядок:
portmap: 192.168.1.1
Крапка в кінці рядка обов'язкова. Далі слід визначити до якого каталогу ми дозволяємо мережевий доступ. Тобто, якому каталогу давати доступ. Приміром, необхідно забезпечити у вузлах кластеру доступ до каталогу /home/mpiuser/data-and-progs. Для цього у файлі /etc/exports прописуємо рядок:
/Home/mpiuser/data-and-progs 192.168.1.0/255.255.255.0 (rw,no_root_squash) На цьому налаштування серверної частини закінчено. Щоб зміни вступили в силу необхідно перезапустити службу NFS за допомогою команди "service portmap restart".
10.2.6 Конфігурація клієнтів
Переходимо від сервера кластера (консолі кластера) до решти вузлів. Все що буде описано нижче необхідно виконати на кожному комп'ютері кластеру крім консольного.
Для підключення будь-якої файлової системи (розділу диска, мережевого ресурсу) використовується команда mount, якщо підключення відбувається вручну, або запис у файлі /etc/fstab, якщо підключення відбувається в момент завантаження системи. Нас буде цікавити останній випадок.
Для забезпечення запуску mpi-програм нам потрібно, щоб вміст каталогу /home/mpiuser/data-and-progs на вузлах кластеру збігався з вмістом цього ж каталогу на консолі кластеру. Для цього необхідно в домашньому каталозі користувача mpiuser (/home/mpiuser) створити порожній каталог data-and-progs. Після чого прописати у файлі /etc/fstab такий рядок:
192.168.1.1: /home/mpiuser/data-and-progs/home/mpiuser/data-and-progs nfs rw 0 0
Щоб віддалений (мережевий) каталог монтувався автоматично при завантаженні кластеру, сервіс клієнта NFS повинен запускатися в процедурі початкового завантаження.
На цьому установка мережевої кластерної файлової системи завершена. При включенні кластеру, консоль кластеру повинна бути завантажена до того, як будуть включатися інші вузли.
10.2.7 Ssh, беспарольный доступ
Розглянемо процедуру створення безпарольного доступу користувача user1 з консолі кластера на вузли кластеру по протоколу SSH. Безпарольний доступ забезпечить більш комфортну роботу в паралельній віртуальній машині. Так, відпаде необхідність вводити паролі доступу при додаванні в віртуальну машину кожного нового вузла і при копіюванні виконуваних модулів в локальні файлові системи вузлів кластеру.
Алгоритм забезпечення безпарольного доступу наступний: 1. Логін до консолі кластера: ssh user1@server 2. Переходимо в каталог ssh: cd ~ /. Ssh 3. Генеруємо rsa-ключі: ssh-keygen-t rsa 4. На питання задати ім'я файлу тиснемо Enter - залишається ім'я за замовчуванням id_rsa. 5. На прохання поставити пароль тиснемо Enter два рази (другий раз для перевірки). 6. Копіюємо публічний ключ на вузол кластеру: scp id_rsa.pub user1@node1: ~ /.Ssh
7. Логіном до вузла node1: ssh user1@node1 8. Переходимо в каталог ssh: cd ~ /.Ssh 9. Копіюємо публічний ключ: cat id_rsa.pub>> authorized_keys2 10. Відключаємося від вузла node1 11. Повторюємо пункти 6-10 для інших вузлів кластера (node2 ... nodeN)
Після проведення описаної процедури користувач "user1" зможе підключатися до вузлів кластеру з консолі кластера не вводячи свій пароль. Слід зазначити, таким чином забезпечується безпарольний доступ лише для одного користувача і лише в одному напрямку: консоль кластеру -> вузли кластеру. І тільки для випадку, коли user1 підключається до вузлів кластеру під своїм ім'ям.