VIOS, AIX i wirtualizacja sieci czyli sea – shared ethernet adapter

Tworzenie SEA (Sherad Ethernet Adapter)

Do stworzenia SEA adaptera potrzebujemy:

  • fizycznego adaptera, do którego podłączymy się, oznaczmy go PHYS
  • wirtualnego adaptera, oznaczmy go VIRT
  • domyślny VLAN ID, oznaczmy go VLAN
mkvdev -sea PHYS -vadapter VIRT -default VIRT -defaultid VLAN

SEA z kanałem kontrolnym w środowisku dual VIOS

Jeżeli używamy dwóch VIOSów, możemy stworzyć konfigurację, w której jeden SEA na jednym VIOSie pracuje w standby i bierze ruch z drugiego, gdy pojawią się jakieś problemy.
Tworzymy wtedy prywatny kanał komunikacji (przy wykorzystaniu virtualnego interfejsu i dedykowanego VLAN-a). Komenda tworząca w tym wypadku adapter SEA to:

mkvdev -sea PHYS -vadapter VIRT -default VIRT -defaultid VLAN -attr ha_mode=auto ctl_chan=CONT

Gdzie PHYS, VIRT VLAN to znane wcześniej nam oznaczenia intefesjów ale pojawiają się nowe wartości: –attr ha_mode=auto (VIOSy między sobą decydują który interface jest zapasowy
a który podstawowy oraz ctl_chan=CONT, który określa wirtualny interfejs do komunikacji między VIOSami.

np:

mkvdev -sea ent4 -vadapter ent6 -default ent6 -defaultid=1 -attr ha_mode=auto ctl_chan=ent5

Manualny failover w tym wypadku można osiągnąć przez:

chdev -dev ent20 -attr ha_mode=standby 
chdev -dev ent20 -attr ha_mode=auto 

AIX, VIOS i NPIV

Przegląd możliwości NPIV

Do przeglądania ilości dostępnych wirtualnych adapterów „Fibre Channel” służy polecenie lsnports.

$ lsnports
name physloc fabric tports aports swwpns awwpns
fcs3 U789D.001.DQDYKYW-P1-C6-T2 1 64 63 2048 2046

Gdzie:

  • fabric – if 0 – no support of NPIV, if 1 – NPIV is supported,
  • tports – maximum number of virtual Fibre Channel (NPIV) adapters per physical Fibre Channel port
  • aports – Display number of available physical ports
  • swwpns – Maximum number of WWPNs supported by the physical Fibre Channel port
  • awwpns – Display total numbers of WWPNs that physical port support.

Przegląd mapowania

Wszystkie mapowania możemy przejrzeć korzystając z polecenia:

lsmap -npiv -all

Jeżeli interesuje nas konkretny interface:

lsmap -vadapter vfchost0 -npiv 

Wyjaśnienie wyniku polecenia

lsmap -vadapter vfchost0 -npiv 

Name          Physloc                            ClntID ClntName       ClntOS
------------- ---------------------------------- ------ -------------- -------
vfchost0      U8203.E4A.05A6DD1-V1-C41                3 mylpar6        AIX

Status:LOGGED_IN
FC name:fcs1                    FC loc code:U789C.001.DQDH231-C3-T2
Ports logged in:2
Flags:a
VFC client name:fcs0            VFC client DRC:U8203.E4A.05A6DD1-V3-C41-T1

Znaczenie statusu i flag:

  1. Status:LOGGED_IN, Flags: a – wirtualny adapter jest zmapowany do fizycznego adaptera, powiązany klient jest uruchomiony.
  2. Status:NOT_LOGGED_IN, Flags:1 – wirtualny adapter nie jest zmapowany do fizycznego adaptera,
  3. Status:NOT_LOGGED_IN, Flags:4 – powiązany klient nie jest uruchomiony (a wirtualny adapter jest powiązany do fizycznego adaptera),

Dodanie nowego vfchost-a do adaptera

Map adapter vfchost2 to adapter fcs1

vfcmap -vadapter vfchost2 -fcp fcs1

Sprawdzamy status:

lsmap -vadapter vfchost2 -npiv 

Usunięcie mapowania

vfcmap -vadapter vfchost0 -fcp

Wylistowanie wszystkich wirtualnych portów

hscroot@hmc: lsnportlogin -m pserver --filter "lpar_ids=12"
lpar_name=mylpar,lpar_id=12,profile_name=default,slot_num=51,wwpn=c050726670a0002c,wwpn_status=1,logged_in=vios,wwpn_status_reason=null
lpar_name=mylpar,lpar_id=12,profile_name=default,slot_num=51,wwpn=c050726670a0002d,wwpn_status=1,logged_in=vios,wwpn_status_reason=null
lpar_name=mylpar,lpar_id=12,profile_name=default,slot_num=52,wwpn=c050726670a0002e,wwpn_status=1,logged_in=vios,wwpn_status_reason=null
lpar_name=mylpar,lpar_id=12,profile_name=default,slot_num=52,wwpn=c050726670a0002f,wwpn_status=1,logged_in=vios,wwpn_status_reason=null

Lub jeżeli chcemy wylistować dane dotyczące kilku lparów:

hscroot@hmc: lsnportlogin -m pserver --filter "\"lpar_ids=12,13\""

Zalogowanie wirtualnego portu

Zalogowanie wszystkich wirtualnych adapterów LPAR-a o ID 12 do SAN-a

chnportlogin -o login -m pserver --id 12

Wylogowanie wirtualnego portu

Wylogowanie wszystkich wirtualnych portów z SAN-a należących do lpar-u numer 12

chnportlogin -o logout -m pserver --id 12

CentOS i Redhat: Jak znaleźć jaki niezainstalowany pakiet dostarcza jakiś plik, program lub katalog?

Na moim nowym serwerze zacząłem instalować usługi pocztowe i doszedłem do momentu, w którym chciałem wysłać testowe email-e. Standardowo robiłem to tak:

echo "Test" | mail -s "TestX" ktos@localhost

Pojawił się tylko jeden, mały problem:

[root@ziutusLinux1 pluginconf.d]# echo "test" | mail -s "test1" root@localhost
-bash: mail: command not found

Czytaj dalej CentOS i Redhat: Jak znaleźć jaki niezainstalowany pakiet dostarcza jakiś plik, program lub katalog?

Perl: komentarze w wyrażeniach regularnych, czyli jak pisać zrozumiałe regexp-y

W przypadku bardziej skomplikowanych zapytań regularnych przydaje się wiedzieć za co odpowiadają poszczególne jego fragmenty. Sztuczką pozwalają to osiągnąć jest skorzystanie z przełącznika x przy wyszukiwaniu oraz komentarzy oznaczonych zwykłym #, wieloliniowości oraz spacji (standardowo ignorowanych właśnie dzięki temu ‚/x’. Spójrzmy na poniższy przykład:

Czytaj dalej Perl: komentarze w wyrażeniach regularnych, czyli jak pisać zrozumiałe regexp-y

OpenWrt – różnice z typowym Linuksem

Zarządzanie pakietami

OpenWrt używa uproszczonego systemu pakietów – opkg (więcej http://en.wikipedia.org/wiki/Opkg oraz http://wiki.openwrt.org/doc/techref/opkg).

Logowanie zdarzeń

Nie istnieje port rsyslog-a.

Domyslne logowanie zdarzeń odbywa się do pamięci, nie do pliku, zobacz komendę logread.

Wspomagania zarządzania

Brak pakietu puppet.

Standardowy serwer i klient SSH

Dropbear to standardowy serwer ssh. Klucze ssh muszą być dodawane do pliku /etc/dropbear/authorized_keys.

Plik /etc/networks a route i netstat

Polecenie route nie korzysta z pliku /etc/networks. Nawet jeżeli nadasz nazwy swoim sieciom, route i netstat nie będzie ich używać.

Wiadomości o Linuksie, AIX-ie, oprogramowaniu open-source itp…