След като сте инсталирали две виртуални машини, използвайки инструкциите, дадени миналата учебна седмица, трябва да определите коя от тях ще играе ролята сървър за управление (наричан по-долу "сървър") и коя - изчислителен сървър (клиент на сървъра за управление, наричан по-долу "клиент"). Сървърът за управление има за цел да предостави информация за потребителите (потребителско име, UID, GID, домашна директория и др), хост информация (ако се използва като DHCP сървър), различни видове услуги като DNS, NTP и др. Отбележете, че в реалната HPC среда може да има повече от един сървър за управление и схемата, която се използва за демонстрация тук, е опростена.

Настройка на статична хост информация

По подразбиране, освен ако не сте указали друго по време на инсталацията, виртуалните машини ще получат хост информация (IP адрес, мрежова маска, мрежови шлюз, DNS сървъри) по протокол DHCP, като DHCP сървъра ще е този, който работи на виртуализатора. За примера долу, чрез инструментариума на NetworkManager, ще бъде конфигурирана ръчно следната хост информация:

  • сървър
    IPv4 адрес: 192.168.122.100/24
    IPv4 Gateway: 192.168.122.1
    IPv6 адрес: fccc:067c:20d0:ffff::100/64
    IPv6 gateway: fccc:067c:20d0:ffff::
    DNS Server: 192.168.122.1
  • клиент:
    IPv4 адрес: 192.168.122.101/24
    IPv4 Gateway: 192.168.122.1
    IPv6 адрес: fccc:067c:20d0:ffff::101/64
    IPv6 gateway: fccc:067c:20d0:ffff::
    DNS Server: 192.168.122.1

Първата и най-важна стъпка е да получите списъка с мрежови интерфейси, които (по подразбиране) трябва да са под управлението на NetworkManager. За да видите какви мрежови интерфейси (устройства) имате активни в системата, изпълнете командния ред:

# nmcli d

Това, което ще видите като резултат (ако сте следвали всички стъпки по инсталацията), ще изглежда по следния начин (възможно е във вашия случай да виждате интерфейси с малко по-различни имена):

DEVICE  TYPE      STATE      CONNECTION
ens3    ethernet  connected  ens3
lo      loopback  unmanaged  --

За да видите изградените свързаности през интерфейсите, изпълнете:

# nmcli c s

Изходът от изпълнението на тази команда ще изглежда подобно на:

NAME  UUID                                  TYPE      DEVICE
ens3  f88c0124-0b3a-422f-8123-1d42cb1a2687  ethernet  ens3

Забележете, че всяка настроена логическа или физическа връзка, която се управлява от NetworkManager, има асоцииран уникален идентификатор (ще го видите в колоната UUID). Добра практика е да използвате този UUID при всички операции за настройка/пренастройка.

Най-важното в момента е да разберете през кой от интерфейсите преминава свързаността ви към Интернет. За целта, изпълнете следното:

# ip route | grep default

Ако, в момента на изпълнението на този команден ред, в системата е настроен шлюз (gateway), ще получите записа, на база на който маршрутизацията по подразбиране се насочва към шлюза (по IP адрес):

default via 192.168.122.1 dev ens3 proto static metric 100

Ще видите името на интерфейса след декларацията "dev". За примера, интерфейса е с име "ens3".

Когато задавате IPv4 и IPv6 адресите за виртуалната машина, която ще играе ролята на сървър, трябва да изпълните следната последователност от команди (IP адресите в примера по-долу са за сървъра):

nmcli> set ipv4.method manual
nmcli> set ipv4.addresses 192.168.122.100/24
nmcli> set ipv4.gateway 192.168.122.1
nmcli> set ipv4.dns 192.168.122.1
nmcli> set ipv6.method manual
nmcli> set ipv6.addresses fccc:067c:20d0:ffff::100/64
nmcli> set ipv6.gateway fccc:067c:20d0:ffff::1
nmcli> save
Connection 'ens3' (f88c0124-0b3a-422f-8123-1d42cb1a2687) successfully updated.
nmcli> activate ens3

Проверете дали новите IP адреси, конфигурирани върху интерфейса ens3 (ако при вас името на интерфейса е друго - използвайте актуалното име), са конфигурирани:

# ip addr show dev ens3

Резултатът от изпълнението ще е подобен на:

2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 52:54:00:95:96:f0 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.100/24 brd 192.168.122.255 scope global noprefixroute ens3
       valid_lft forever preferred_lft forever
    inet6 fccc:67c:20d0:ffff::100/64 scope global noprefixroute
       valid_lft forever preferred_lft forever
    inet6 fe80::7ef9:aedf:6d9b:51c0/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

Проверете и дали шлюзовете за IPv4 и IPv6 са тези, който сте задали, като изпълните:

# ip route | grep default

# ip -6 route | grep default

В първия случай трябва да бъде изведено:

default via 192.168.122.1 dev ens3 proto static metric 100

а във втория:

default via fccc:67c:20d0:ffff::1 dev ens3 proto static metric 100 pref medium

Проверете съдържанието на файла /etc/resolv.conf и установете дали в него присъства DNS сървъра, който сте задали ръчно по-горе (192.168.122.1):

# cat /etc/resolv.conf

Повторете настройката и за клиента (който в това демо е изчислителния HPC сървър).

SSH, NTP и DNS

Преди да преминете към следващата част от обучението, трябва да настроите специфично SSH сървъра и на двете виртуални машини. Това трябва да направите съгласно инструкциите дадени в документа:

Настройки на OpenSSH сървър под CentOS и Scientific Linux

След като сте готови с конфигурацията на SSH сървъра, трябва да се научите (ако не знаете) как се влиза в отдалечена система чрез SSH клиент, който използва за удостоверяване през сървъра SSH ключове. Ако ще достъпвате виртуалните машини по SSH от работна станция, базирана на Windows 10, може би ще искате да използвате PuTTY и WinSCP за да достъпвате виртуалните машини и обменяте файлове с тях (така ще симулирате свързването до сървърите в реалната HPC инфраструктура). В този случай трябва да прочетете следните документи и да изпълните указанията в тях:

Ако използвате виртуализатор под Linux или Mac OS X (виртуалните машини се управляват от този виртуализатор), трябва да прочетете вниманително следната документация и да изпълните инструкциите в нея:

Използване на SSH ключове за достъп до отдалечени SSH сървъри под Linux и Mac OS X

Когато приключите с тази част от документацията, трябва да изградите NTP сървър и клиент и да установите комуникация между тях, която е цифрово подписана. Документацията, която трябва да следвате е следната:

Накрая, трябва да инсталирате кеш DNS сървър, базиран на BIND и да установите TSIG комуникация между него и DNS клиент, използвайки следната документация:

Last modified: Sunday, 7 April 2019, 8:29 AM