Słowem wstępu.
Minął rok, czas na odnowienie licencji. Skoro tak, to pomyślałem o wprowadzeniu pewnych zmian. Czyli licencja na 30 nodów i wykombinowałem również, że skoro VIRL stoi na dedykowanej dla niego maszynie (HP ML310 Gen8) to czemu by nie sięgnąć po wersję "bare metal" co też uczyniłem. Pobrałem najnowszy obraz 1.0.26 z 15 lutego 2016 i ruszyłem do instalacji.
Niespodzianka
Uprzedzam tych, co do VIRLa zasiądą pierwszy raz, że próba instalacji bez dokładnego postępowania według instrukcji jest z góry skazana na porażkę, bo liczy się każdy detal, nawet to jak nazwiecie swoją "maszynkę". Ale poza tą uwagą i drobnym zaskoczeniem, które mogło sygnalizować przyszłe problemy a jednak nie zwróciło wówczas mojej uwagi, a była to niemożność zaptaszkowania opcji pobierania aktualizacji na etapie instalacji, to sam proces instalacji jest banalny, nudny i dość długotrwały (przy instalacji z DVD).
Za to po restarcie i przystępując do kroku 4 instrukcji po prostu mnie wryło, gdy ujrzałem taki oto wynik:
Kod: Zaznacz cały
root@virl:/home/virl# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:2771 errors:0 dropped:0 overruns:0 frame:0
TX packets:2771 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:202855 (202.8 KB) TX bytes:202855 (202.8 KB)
virbr0 Link encap:Ethernet HWaddr 52:54:00:2b:09:a9
inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
root@virl:/home/virl#
Kod: Zaznacz cały
Iroot@virl:/home/virl# lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v2/Ivy Bridge DRAM Controller (rev 09)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09)
00:01.1 PCI bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09)
(...)
03:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5717 Gigabit Ethernet PCIe (rev 10)
03:00.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5717 Gigabit Ethernet PCIe (rev 10)
0e:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5719 Gigabit Ethernet PCIe (rev 01)
0e:00.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5719 Gigabit Ethernet PCIe (rev 01)
0e:00.2 Ethernet controller: Broadcom Corporation NetXtreme BCM5719 Gigabit Ethernet PCIe (rev 01)
0e:00.3 Ethernet controller: Broadcom Corporation NetXtreme BCM5719 Gigabit Ethernet PCIe (rev 01)
root@virl:/home/virl#
Kod: Zaznacz cały
root@virl:/home/virl# dmesg | grep eth
[ 0.832606] tg3 0000:03:00.0 eth0: Tigon3 [partno(BCM95717) rev 5717100] (PCI Express) MAC address 74:46:a0:fe:6a:60
[ 0.832608] tg3 0000:03:00.0 eth0: attached PHY is 5718C (10/100/1000Base-T Ethernet) (WireSpeed[1], EEE[1])
[ 0.832610] tg3 0000:03:00.0 eth0: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[1] TSOcap[1]
[ 0.832611] tg3 0000:03:00.0 eth0: dma_rwctrl[00000001] dma_mask[64-bit]
[ 0.852805] tg3 0000:03:00.1 eth1: Tigon3 [partno(BCM95717) rev 5717100] (PCI Express) MAC address 74:46:a0:fe:6a:61
[ 0.852806] tg3 0000:03:00.1 eth1: attached PHY is 5718C (10/100/1000Base-T Ethernet) (WireSpeed[1], EEE[1])
[ 0.852807] tg3 0000:03:00.1 eth1: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[1] TSOcap[1]
[ 0.852808] tg3 0000:03:00.1 eth1: dma_rwctrl[00000001] dma_mask[64-bit]
[ 0.869231] tg3 0000:0e:00.0 eth2: Tigon3 [partno(647592-001) rev 5719001] (PCI Express) MAC address 28:80:23:b2:ce:8c
[ 0.869233] tg3 0000:0e:00.0 eth2: attached PHY is 5719C (10/100/1000Base-T Ethernet) (WireSpeed[1], EEE[1])
[ 0.869234] tg3 0000:0e:00.0 eth2: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[1] TSOcap[1]
[ 0.869235] tg3 0000:0e:00.0 eth2: dma_rwctrl[00000001] dma_mask[64-bit]
[ 0.883941] tg3 0000:0e:00.1 eth3: Tigon3 [partno(647592-001) rev 5719001] (PCI Express) MAC address 28:80:23:b2:ce:8d
[ 0.883943] tg3 0000:0e:00.1 eth3: attached PHY is 5719C (10/100/1000Base-T Ethernet) (WireSpeed[1], EEE[1])
[ 0.883944] tg3 0000:0e:00.1 eth3: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[1] TSOcap[1]
[ 0.883945] tg3 0000:0e:00.1 eth3: dma_rwctrl[00000001] dma_mask[64-bit]
[ 0.899867] tg3 0000:0e:00.2 eth4: Tigon3 [partno(647592-001) rev 5719001] (PCI Express) MAC address 28:80:23:b2:ce:8e
[ 0.899869] tg3 0000:0e:00.2 eth4: attached PHY is 5719C (10/100/1000Base-T Ethernet) (WireSpeed[1], EEE[1])
[ 0.899870] tg3 0000:0e:00.2 eth4: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[1] TSOcap[1]
[ 0.899871] tg3 0000:0e:00.2 eth4: dma_rwctrl[00000001] dma_mask[64-bit]
[ 0.915853] tg3 0000:0e:00.3 eth5: Tigon3 [partno(647592-001) rev 5719001] (PCI Express) MAC address 28:80:23:b2:ce:8f
[ 0.915854] tg3 0000:0e:00.3 eth5: attached PHY is 5719C (10/100/1000Base-T Ethernet) (WireSpeed[1], EEE[1])
[ 0.915856] tg3 0000:0e:00.3 eth5: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[1] TSOcap[1]
[ 0.915857] tg3 0000:0e:00.3 eth5: dma_rwctrl[00000001] dma_mask[64-bit]
[ 0.920607] tg3 0000:0e:00.0 p1p1: renamed from eth2
[ 0.926651] systemd-udevd[152]: renamed network interface eth2 to p1p1
[ 0.927039] tg3 0000:03:00.0 em1: renamed from eth0
[ 0.938638] systemd-udevd[150]: renamed network interface eth0 to em1
[ 0.938658] tg3 0000:03:00.1 em2: renamed from eth1
[ 0.946664] tg3 0000:0e:00.1 p1p2: renamed from eth3
[ 0.946666] systemd-udevd[151]: renamed network interface eth1 to em2
[ 0.954618] systemd-udevd[153]: renamed network interface eth3 to p1p2
[ 0.960462] tg3 0000:0e:00.2 p1p3: renamed from eth4
[ 0.970609] systemd-udevd[154]: renamed network interface eth4 to p1p3
[ 0.976852] tg3 0000:0e:00.3 p1p4: renamed from eth5
[ 0.982597] systemd-udevd[155]: renamed network interface eth5 to p1p4
Rozwiązanie
Rozwiązanie jest proste. Edytujemy plik grub.conf (tak, tak, wiem, tak się tego nie robi, wódki z piwem też się nie miesza) i dodajemy jako parametr jądra biosdevname=0 Po restarcie wszystkie interfejsy (czyli u mnie 6: eth0-eth5) są na miejscu.
Wnioski
Czyż nie byłoby pożądane okresowo publicznie dokonać egzekucji kilku programistów? Tak profilaktycznie. By wiedzieli jakie zdanie mają o nich użytkownicy efektów ich pracy. Nie, nie oczekuję odpowiedzi. Tak po prostu głośno myślę.