Brocade: Difference between revisions
No edit summary |
m (Text replacement - "</source" to "</syntaxhighlight") |
||
(One intermediate revision by the same user not shown) | |||
Line 3: | Line 3: | ||
=Ein paar Kommandos mit kurzer Erklärung dazu= | =Ein paar Kommandos mit kurzer Erklärung dazu= | ||
==Firmware== | ==Firmware== | ||
< | <syntaxhighlight lang=bash> | ||
brocade:admin> firmwareshow | brocade:admin> firmwareshow | ||
Appl Primary/Secondary Versions | Appl Primary/Secondary Versions | ||
Line 9: | Line 9: | ||
FOS v6.4.2a | FOS v6.4.2a | ||
v6.4.2a | v6.4.2a | ||
</ | </syntaxhighlight> | ||
== General Switch Information == | == General Switch Information == | ||
< | <syntaxhighlight lang=bash> | ||
brocade:admin> switchshow | brocade:admin> switchshow | ||
switchName: brocade | switchName: brocade | ||
Line 35: | Line 35: | ||
6 6 010600 id N8 No_Light FC | 6 6 010600 id N8 No_Light FC | ||
... | ... | ||
</ | </syntaxhighlight> | ||
Wichtige Zeilen: | Wichtige Zeilen: | ||
===switchshow:switchType=== | ===switchshow:switchType=== | ||
< | <syntaxhighlight lang=bash> | ||
switchType: 71.2 | switchType: 71.2 | ||
</ | </syntaxhighlight> | ||
switchType gibt Auskunft, welchen Switch wir vor uns haben. Hier einen Brocade 300. | switchType gibt Auskunft, welchen Switch wir vor uns haben. Hier einen Brocade 300. | ||
* [https://www.ibm.com/developerworks/community/blogs/anthonyv/entry/brocade_san_switch_models1?lang=en Tabelle von IBM] | * [https://www.ibm.com/developerworks/community/blogs/anthonyv/entry/brocade_san_switch_models1?lang=en Tabelle von IBM] | ||
Line 46: | Line 46: | ||
===switchshow:zoning=== | ===switchshow:zoning=== | ||
< | <syntaxhighlight lang=bash> | ||
zoning: ON (Fabric1) | zoning: ON (Fabric1) | ||
</ | </syntaxhighlight> | ||
Zeigt an, ob das [[#Zoning|Zoning]] aktiv ist und welche Konfiguration aktiv ist (hier Fabric1) siehe auch [[#Fabric|Fabric]]. | Zeigt an, ob das [[#Zoning|Zoning]] aktiv ist und welche Konfiguration aktiv ist (hier Fabric1) siehe auch [[#Fabric|Fabric]]. | ||
Line 57: | Line 57: | ||
* Subordinate (also den Untergeordneten) | * Subordinate (also den Untergeordneten) | ||
z.B.: | z.B.: | ||
< | <syntaxhighlight lang=bash> | ||
switchRole: Principal | switchRole: Principal | ||
</ | </syntaxhighlight> | ||
Die Rolle kann man ändern | Die Rolle kann man ändern | ||
Line 65: | Line 65: | ||
'''ACHTUNG: Nicht Unterbrechungsfrei!'''<br> | '''ACHTUNG: Nicht Unterbrechungsfrei!'''<br> | ||
'''WARNING: DISRUPTIVE ACTION !''' | '''WARNING: DISRUPTIVE ACTION !''' | ||
< | <syntaxhighlight lang=bash> | ||
brocade1:admin> fabricprincipal -f 1 | brocade1:admin> fabricprincipal -f 1 | ||
</ | </syntaxhighlight> | ||
==Fabric== | ==Fabric== | ||
Eine Fabric besteht aus einem oder mehreren Fibre-Channel-Switchen, die miteinander verbunden sind. Komponenten wie Hosts, Storage und Tapes werden über die Fibre-Channel-Switche mit der Fabric verbunden. | Eine Fabric besteht aus einem oder mehreren Fibre-Channel-Switchen, die miteinander verbunden sind. Komponenten wie Hosts, Storage und Tapes werden über die Fibre-Channel-Switche mit der Fabric verbunden. | ||
< | <syntaxhighlight lang=bash> | ||
brocade:admin> fabricshow | brocade:admin> fabricshow | ||
Switch ID Worldwide Name Enet IP Addr FC IP Addr Name | Switch ID Worldwide Name Enet IP Addr FC IP Addr Name | ||
Line 82: | Line 82: | ||
The Fabric has 4 switches | The Fabric has 4 switches | ||
</ | </syntaxhighlight> | ||
==InterSwitchLinks (ISL)== | ==InterSwitchLinks (ISL)== | ||
Mit islshow bekommt man heraus, welche weiteren Switches angeschlossen sind und über welche Ports sie mit dem aktuellen verbunden sind. | Mit islshow bekommt man heraus, welche weiteren Switches angeschlossen sind und über welche Ports sie mit dem aktuellen verbunden sind. | ||
< | <syntaxhighlight lang=bash> | ||
brocade:admin> islshow | brocade:admin> islshow | ||
rz1_fab1_01:admin> islshow | rz1_fab1_01:admin> islshow | ||
Line 96: | Line 96: | ||
5: 12-> 17 10:00:00:05:1e:0c:e3:98 42 brocade2 sp: 4.000G bw: 4.000G | 5: 12-> 17 10:00:00:05:1e:0c:e3:98 42 brocade2 sp: 4.000G bw: 4.000G | ||
6: 13-> 17 10:00:00:05:1e:b3:51:7d 4 brocade3 sp: 4.000G bw: 4.000G | 6: 13-> 17 10:00:00:05:1e:b3:51:7d 4 brocade3 sp: 4.000G bw: 4.000G | ||
</ | </syntaxhighlight> | ||
==Zoning== | ==Zoning== | ||
Line 251: | Line 251: | ||
=Enable root account for ssh= | =Enable root account for ssh= | ||
==Enable root for ssh== | ==Enable root for ssh== | ||
< | <syntaxhighlight lang=bash> | ||
sw-fc02fab-b:admin> rootaccess --show | sw-fc02fab-b:admin> rootaccess --show | ||
RootAccess: consoleonly | RootAccess: consoleonly | ||
Line 261: | Line 261: | ||
sw-fc02fab-b:admin> userconfig --change root -e yes | sw-fc02fab-b:admin> userconfig --change root -e yes | ||
</ | </syntaxhighlight> | ||
==Enable root account== | ==Enable root account== | ||
< | <syntaxhighlight lang=bash> | ||
sw-fc02fab-b:admin> userconfig --show root | sw-fc02fab-b:admin> userconfig --show root | ||
Line 292: | Line 292: | ||
Home AD: 0 | Home AD: 0 | ||
Day Time Access: N/A | Day Time Access: N/A | ||
</ | </syntaxhighlight> | ||
==Set root password directly after enabling the account== | ==Set root password directly after enabling the account== | ||
< | <syntaxhighlight lang=bash> | ||
$ ssh root@192.168.1.1 | $ ssh root@192.168.1.1 | ||
root@192.168.1.1's password: | root@192.168.1.1's password: | ||
Line 304: | Line 304: | ||
============================================================================================ | ============================================================================================ | ||
... | ... | ||
</ | </syntaxhighlight> | ||
Line 311: | Line 311: | ||
==Host -> Brocade== | ==Host -> Brocade== | ||
< | <syntaxhighlight lang=bash> | ||
BSAN01:root> cd ~/.ssh | BSAN01:root> cd ~/.ssh | ||
BSAN01:root> ls -al | BSAN01:root> ls -al | ||
Line 318: | Line 318: | ||
drwxr-x--- 4 root sys 4096 Jun 19 2013 ../ | drwxr-x--- 4 root sys 4096 Jun 19 2013 ../ | ||
BSAN01:root> echo "ssh-dss AAAA...TD8cc= root@sun" >> authorized_keys | BSAN01:root> echo "ssh-dss AAAA...TD8cc= root@sun" >> authorized_keys | ||
</ | </syntaxhighlight> | ||
==Brocade -> Host== | ==Brocade -> Host== | ||
===Key auf Switch generieren=== | ===Key auf Switch generieren=== | ||
Als '''admin''' ! | Als '''admin''' ! | ||
< | <syntaxhighlight lang=bash> | ||
Host# ssh admin@bsan01 | Host# ssh admin@bsan01 | ||
BSAN01:admin> sshutil genkey | BSAN01:admin> sshutil genkey | ||
Line 330: | Line 330: | ||
Key pair generated successfully. | Key pair generated successfully. | ||
BSAN01:admin> exit | BSAN01:admin> exit | ||
</ | </syntaxhighlight> | ||
===Key vom Switch -> Host ~/.ssh/authorized_keys=== | ===Key vom Switch -> Host ~/.ssh/authorized_keys=== | ||
Als '''root''' ! | Als '''root''' ! | ||
< | <syntaxhighlight lang=bash> | ||
Host# ssh root@bsan01 cat .ssh/id_rsa.pub >> ~/.ssh/authorized_keys | Host# ssh root@bsan01 cat .ssh/id_rsa.pub >> ~/.ssh/authorized_keys | ||
</ | </syntaxhighlight> | ||
=Backup der Config= | =Backup der Config= | ||
Line 344: | Line 344: | ||
Ein mögliches Script könnte so aussehen: | Ein mögliches Script könnte so aussehen: | ||
< | <syntaxhighlight lang=bash> | ||
#!/bin/bash | #!/bin/bash | ||
SWITCHES=" | SWITCHES=" | ||
Line 377: | Line 377: | ||
done | done | ||
</ | </syntaxhighlight> | ||
=Firmware update= | =Firmware update= | ||
Line 385: | Line 385: | ||
Then create the home on the sftp-server: | Then create the home on the sftp-server: | ||
< | <syntaxhighlight lang=bash> | ||
# mkdir --parents --mode=0755 /home/sftp/brocade | # mkdir --parents --mode=0755 /home/sftp/brocade | ||
# useradd --create-home --home-dir /home/sftp/brocade/fw brocade | # useradd --create-home --home-dir /home/sftp/brocade/fw brocade | ||
</ | </syntaxhighlight> | ||
If there is allready an brocade user with an authorized_keys file do: | If there is allready an brocade user with an authorized_keys file do: | ||
< | <syntaxhighlight lang=bash> | ||
# cp --preserve=mode ~brocade/.ssh/authorized_keys /home/sftp/.authorized_keys/brocade | # cp --preserve=mode ~brocade/.ssh/authorized_keys /home/sftp/.authorized_keys/brocade | ||
</ | </syntaxhighlight> | ||
else put them into /home/sftp/.authorized_keys/brocade if you want. | else put them into /home/sftp/.authorized_keys/brocade if you want. | ||
Line 399: | Line 399: | ||
Login to the switch as admin and do for example: | Login to the switch as admin and do for example: | ||
< | <syntaxhighlight lang=bash> | ||
san-sw:admin> firmwaredownload -s -b -p sftp <ip of the sftp-server>,brocade,fw/v7.2.1f | san-sw:admin> firmwaredownload -s -b -p sftp <ip of the sftp-server>,brocade,fw/v7.2.1f | ||
</ | </syntaxhighlight> |
Latest revision as of 17:02, 25 November 2021
Ein paar Kommandos mit kurzer Erklärung dazu
Firmware
brocade:admin> firmwareshow
Appl Primary/Secondary Versions
------------------------------------------
FOS v6.4.2a
v6.4.2a
General Switch Information
brocade:admin> switchshow
switchName: brocade
switchType: 71.2
switchState: Online
switchMode: Native
switchRole: Principal
switchDomain: 1
switchId: fffc01
switchWwn: 10:00:00:05:34:be:f3:f0
zoning: ON (Fabric1)
switchBeacon: OFF
Index Port Address Media Speed State Proto
==============================================
0 0 010000 id N4 Online FC F-Port 50:0a:09:81:96:c8:3e:f8
1 1 010100 id N4 Online FC F-Port 50:0a:09:81:86:c8:3e:f8
2 2 010200 id N8 Online FC F-Port 21:00:00:24:ff:36:45:02
3 3 010300 id N8 Online FC F-Port 21:00:00:24:ff:36:45:21
4 4 010400 id N8 Online FC F-Port 21:00:00:24:ff:36:44:90
5 5 010500 id N8 Online FC F-Port 21:00:00:24:ff:36:45:f6
6 6 010600 id N8 No_Light FC
...
Wichtige Zeilen:
switchshow:switchType
switchType: 71.2
switchType gibt Auskunft, welchen Switch wir vor uns haben. Hier einen Brocade 300.
- Tabelle von IBM
- PDF von Brocade: Switch Types, Blade IDs, and Product Names
switchshow:zoning
zoning: ON (Fabric1)
Zeigt an, ob das Zoning aktiv ist und welche Konfiguration aktiv ist (hier Fabric1) siehe auch Fabric.
switchshow:switchRole
Es gibt zwei Rollen
- Principal (also den Chef)
und
- Subordinate (also den Untergeordneten)
z.B.:
switchRole: Principal
Die Rolle kann man ändern
ACHTUNG: Nicht Unterbrechungsfrei!
WARNING: DISRUPTIVE ACTION !
brocade1:admin> fabricprincipal -f 1
Fabric
Eine Fabric besteht aus einem oder mehreren Fibre-Channel-Switchen, die miteinander verbunden sind. Komponenten wie Hosts, Storage und Tapes werden über die Fibre-Channel-Switche mit der Fabric verbunden.
brocade:admin> fabricshow
Switch ID Worldwide Name Enet IP Addr FC IP Addr Name
-------------------------------------------------------------------------
1: fffc01 10:00:00:05:34:be:f3:f0 10.60.1.110 0.0.0.0 >"brocade"
2: fffc02 10:00:00:05:1e:0d:da:27 10.60.1.111 0.0.0.0 "brocade1"
4: fffc04 10:00:00:05:1e:b3:61:7d 10.60.1.113 0.0.0.0 "brocade3"
42: fffc2a 10:00:00:05:1e:0c:f3:98 10.60.1.112 0.0.0.0 "brocade2"
The Fabric has 4 switches
InterSwitchLinks (ISL)
Mit islshow bekommt man heraus, welche weiteren Switches angeschlossen sind und über welche Ports sie mit dem aktuellen verbunden sind.
brocade:admin> islshow
rz1_fab1_01:admin> islshow
1: 0-> 0 10:00:00:05:1e:0d:ca:27 2 brocade1 sp: 4.000G bw: 4.000G
2: 4-> 0 10:00:00:05:1e:0c:e3:98 42 brocade2 sp: 4.000G bw: 4.000G
3: 8-> 17 10:00:00:05:1e:0d:ca:27 2 brocade1 sp: 4.000G bw: 4.000G
4: 9-> 0 10:00:00:05:1e:b3:51:7d 4 brocade3 sp: 4.000G bw: 4.000G
5: 12-> 17 10:00:00:05:1e:0c:e3:98 42 brocade2 sp: 4.000G bw: 4.000G
6: 13-> 17 10:00:00:05:1e:b3:51:7d 4 brocade3 sp: 4.000G bw: 4.000G
Zoning
Eine Zone legt fest, welche Ports oder WWNs sich sehen dürfen.
Heute mach man eigentlich nur noch WWN-Zoning, weil es das flexibelste und sicherste ist. Man kann dadurch einfach die Kabel innerhalb der Fabric hin und herstecken, ohne daß ein Gerät mit mal ein anderes sehen kann, als vorher.
Bei Portzoning ist die Gefahr des falsch steckens gegeben.
Switch Types and Product Names
Switch Type | Switch Name |
---|---|
1 | Brocade 1000 Switches |
2, 6 | Brocade 2800 Switch |
3 | Brocade 2100, 2400 Switches |
4 | Brocade 20x0, 2010, 2040, 2050 Switches |
5 | Brocade 22x0, 2210, 2240, 2250 Switches |
7 | Brocade 2000 Switch |
9 | Brocade 3800 Switch |
10 | Brocade 12000 Director |
12 | Brocade 3900 Switch |
16 | Brocade 3200 Switch |
17 | Brocade 3800VL |
18 | Brocade 3000 Switch |
21 | Brocade 24000 Director |
22 | Brocade 3016 Switch |
26 | Brocade 3850 Switch |
27 | Brocade 3250 Switch |
29 | Brocade 4012 Embedded Switch |
32 | Brocade 4100 Switch |
33 | Brocade 3014 Switch |
34 | Brocade 200E Switch |
37 | Brocade 4020 Embedded Switch |
38 | Brocade 7420 SAN Router |
40 | Fibre Channel Routing (FCR) Front Domain |
41 | Fibre Channel Routing, (FCR) Xlate Domain |
42 | Brocade 48000 Director |
43 | Brocade 4024 Embedded Switch |
44 | Brocade 4900 Switch |
45 | Brocade 4016 Embedded Switch |
46 | Brocade 7500 Switch |
51 | Brocade 4018 Embedded Switch |
55.2 | Brocade 7600 Switch |
58 | Brocade 5000 Switch |
61 | Brocade 4424 Embedded Switch |
62 | Brocade DCX Backbone |
64 | Brocade 5300 Switch |
66 | Brocade 5100 Switch |
67 | Brocade Encryption Switch |
69 | Brocade 5410 Blade |
70 | Brocade 5410 Embedded Switch |
71 | Brocade 300 Switch |
72 | Brocade 5480 Embedded Switch |
73 | Brocade 5470 Embedded Switch |
75 | Brocade M5424 Embedded Switch |
76 | Brocade 8000 Switch |
77 | Brocade DCX-4S Backbone |
83 | Brocade 7800 Extension Switch |
86 | Brocade 5450 Embedded Switch |
87 | Brocade 5460 Embedded Switch |
90 | Brocade 8470 Embedded Switch |
92 | Brocade VA-40FC Switch |
95 | Brocade VDX 6720-24 Data Center Switch |
96 | Brocade VDX 6730-32 Data Center Switch |
97 | Brocade VDX 6720-60 Data Center Switch |
98 | Brocade VDX 6730-76 Data Center Switch |
108 | Dell M8428-k FCoE Embedded Switch |
109 | Brocade 6510 Switch |
116 | Brocade VDX 6710 Data Center Switch |
117 | Brocade 6547 Embedded Switch |
118 | Brocade 6505 Switch |
120 | Brocade DCX 8510-8 Backbone |
121 | Brocade DCX 8510-4 Backbone |
124 | Brocade 5430 8 Gb 16-port Blade Server SAN I/O Module |
125 | Brocade 5431 8 Gbit 16-port stackable switch module |
129 | Brocade 6548 16 Gb 28-port Blade Server SAN I/O Module |
130 | Brocade M6505 16 Gbit 24-port Blade Server SAN I/O Module |
133 | Brocade 6520 16 Gb 96-port switch |
134 | Brocade 5432 8 Gb 24-port Blade Server SAN I/O Module |
148 | Brocade 7840 16 Gb 24-FC ports, 16 10GbE ports, 2 40GbE ports extension switch |
170 | Brocade G610 |
Enable root account for ssh
Enable root for ssh
sw-fc02fab-b:admin> rootaccess --show
RootAccess: consoleonly
sw-fc02fab-b:admin> rootaccess --set all
sw-fc02fab-b:admin> rootaccess --show
RootAccess: all
sw-fc02fab-b:admin> userconfig --change root -e yes
Enable root account
sw-fc02fab-b:admin> userconfig --show root
Account name: root
Description: root
Enabled: No
Password Last Change Date: Fri Aug 21 2020 (UTC)
Password Expiration Date: Not Applicable (UTC)
Locked: No
Role: root
AD membership: 0-255
Home AD: 0
Day Time Access: N/A
sw-fc02fab-b:admin> userconfig --change root -e yes
sw-fc02fab-b:admin> userconfig --show root
Account name: root
Description: root
Enabled: Yes
Password Last Change Date: Fri Aug 21 2020 (UTC)
Password Expiration Date: Not Applicable (UTC)
Locked: No
Role: root
AD membership: 0-255
Home AD: 0
Day Time Access: N/A
Set root password directly after enabling the account
$ ssh root@192.168.1.1
root@192.168.1.1's password:
============================================================================================
ATTENTION:
It is recommended that you change the default passwords for all the switch accounts.
Refer to the product release notes and administrators guide if you need further information.
============================================================================================
...
SSH mit public key
Host -> Brocade
BSAN01:root> cd ~/.ssh
BSAN01:root> ls -al
total 8
drwxr-xr-x 2 root sys 4096 Jul 18 2011 ./
drwxr-x--- 4 root sys 4096 Jun 19 2013 ../
BSAN01:root> echo "ssh-dss AAAA...TD8cc= root@sun" >> authorized_keys
Brocade -> Host
Key auf Switch generieren
Als admin !
Host# ssh admin@bsan01
BSAN01:admin> sshutil genkey
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Key pair generated successfully.
BSAN01:admin> exit
Key vom Switch -> Host ~/.ssh/authorized_keys
Als root !
Host# ssh root@bsan01 cat .ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Backup der Config
Wichtig, vorher die Keys austauschen!
- Der Brocade Pubkey muß nach ~bckpuser/.ssh/authorized_keys
- Der Pubkey des aufrufenden Users muß auf den Brocade ~root/.ssh/authorized_keys
Ein mögliches Script könnte so aussehen:
#!/bin/bash
SWITCHES="
bsan01
bsan02
"
BACKUP_HOST="10.0.0.42"
LOCALUSER="bckpuser"
BACKUPDIR="brocade_backup"
[ ! -d ~/brocade_backup ] && mkdir -p ~/brocade_backup
date="$(date '+%Y%m%d-%H%M%S')"
for switch in ${SWITCHES} ; do
printf "Backing up ${switch} to ~${LOCALUSER}/${BACKUPDIR}/${switch}_config_${date}.txt... "
ssh -i ~/.ssh/id_rsa_nopw root@${switch} /fabos/link_sbin/configupload -all -p scp ${BACKUP_HOST},${LOCALUSER},${BACKUPDIR}/${switch}_config_${date}.txt
tmp_file=/tmp/.$$_${switch}.txt
bakup_file=~/${BACKUPDIR}/${switch}_config_${date}.txt
last_backup_file="$(ls -1rt ~/${BACKUPDIR}/${switch}_config_*.txt.gz | tail -1)"
gzip -cd ${last_backup_file} | grep -v "date =" > ${tmp_file}
if ( grep -v "date =" ${bakup_file} | diff -ub - ${tmp_file} )
then
# The last backup is identical
rm -f ${bakup_file}
else
# Differences encountered keep new backup
gzip -9 ${bakup_file}
fi
[ -f "${tmp_file}" ] && rm -f ${tmp_file}
done
Firmware update
Record the running firmware
Example for a brocade sftp firmware download directory
First take a look here for setting up a chroot sftp environment.
Then create the home on the sftp-server:
# mkdir --parents --mode=0755 /home/sftp/brocade
# useradd --create-home --home-dir /home/sftp/brocade/fw brocade
If there is allready an brocade user with an authorized_keys file do:
# cp --preserve=mode ~brocade/.ssh/authorized_keys /home/sftp/.authorized_keys/brocade
else put them into /home/sftp/.authorized_keys/brocade if you want.
Untar your firmware as brocade in /home/sftp/brocade/fw.
Login to the switch as admin and do for example:
san-sw:admin> firmwaredownload -s -b -p sftp <ip of the sftp-server>,brocade,fw/v7.2.1f