Difference between revisions of "Memblaze FlashRAID"
| (9 intermediate revisions by the same user not shown) | |||
| Line 17: | Line 17: | ||
* Virtual disk management | * Virtual disk management | ||
* Error monitoring and reporting | * Error monitoring and reporting | ||
| + | |||
| + | == Supported OS == | ||
| + | |||
| + | Supported Operation System The standard operation systems FlashRAID supported are listed as below table. | ||
| + | |||
| + | {| class="wikitable" | ||
| + | ! Distribution | ||
| + | ! Version | ||
| + | ! style="font-style: italic;" | Note | ||
| + | |- | ||
| + | | CentOS | ||
| + | | 6.5,6.6,7.0,7.1 | ||
| + | | 7.1 inbox driver has better support for hot plug. | ||
| + | |- | ||
| + | | Red Hat Enterprise Linux | ||
| + | | 6.5,6.6,7.0,7.1 | ||
| + | | Memblaze NVMe driver is recommend for PblazeIV | ||
| + | |} | ||
| + | |||
| + | == Supported Drives == | ||
| + | |||
| + | Supported Disk Drives FlashRAID is specially designed for high speed NVMe SSD, but it can also support other disk drives. The disk drives that FlashRAID supports are: | ||
| + | * NVMe SSD | ||
| + | * PCIe SSD | ||
| + | * SATA SSD | ||
| + | * SAS SSD | ||
| + | * SATA HDD | ||
| + | * SAS HDD | ||
| + | |||
| + | == Supported RAID levels == | ||
| + | |||
| + | Supported RAID Level Currently the RAID level that FlashRAID supported are: | ||
| + | * RAID 0 | ||
| + | * RAID 1 | ||
| + | * RAID 5 | ||
| + | * RAID 6 | ||
| + | |||
| + | |||
| + | |||
| + | == Customer installations == | ||
| + | |||
| + | === Fixnetic / HSBC === | ||
| + | |||
| + | Kickstart for the 1U`s | ||
| + | |||
| + | <syntaxhighlight> | ||
| + | # kickstart template for Fedora 8 and later. | ||
| + | # (includes %end blocks) | ||
| + | # do not use with earlier distros | ||
| + | |||
| + | #platform=x86, AMD64, or Intel EM64T | ||
| + | # System authorization information | ||
| + | auth --enableshadow --passalgo=sha512 | ||
| + | # System bootloader configuration | ||
| + | bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda | ||
| + | # Partition clearing information | ||
| + | clearpart --all --initlabel | ||
| + | # Use network installation | ||
| + | url --url=$tree | ||
| + | # Use CDROM installation media | ||
| + | #cdrom | ||
| + | # Use text mode install | ||
| + | text | ||
| + | # Firewall configuration | ||
| + | firewall --enabled | ||
| + | # Run the Setup Agent on first boot | ||
| + | firstboot --disable | ||
| + | # System keyboard | ||
| + | keyboard --vckeymap=us --xlayouts='us' | ||
| + | # System language | ||
| + | lang en_US.UTF-8 | ||
| + | # If any cobbler repo definitions were referenced in the kickstart profile, include them here. | ||
| + | $yum_repo_stanza | ||
| + | # Network information | ||
| + | #$SNIPPET('network_config') | ||
| + | |||
| + | #Root password | ||
| + | rootpw --iscrypted $6$xxH4NuTu7jXIy1Yx$RWUAfjNp5syVYc1BfqAH8f1wQf.eMmrtAx9XDXa.RH8EaN666Ao9RK8akr3pczg7ByKgTFatIL4JPFBk09sLK/ | ||
| + | # SELinux configuration | ||
| + | selinux --disabled | ||
| + | # Do not configure the X Window System | ||
| + | skipx | ||
| + | # System services | ||
| + | services --enabled="chronyd" | ||
| + | # System timezone | ||
| + | timezone America/New_York | ||
| + | # Install OS instead of upgrade | ||
| + | install | ||
| + | # Clear the Master Boot Record | ||
| + | zerombr | ||
| + | # Allow anaconda to partition the system as needed | ||
| + | #autopart | ||
| + | |||
| + | part /boot --fstype=ext2 --size=477 --ondisk=sda | ||
| + | part /boot/efi --fstype=vfat --size=477 --ondisk=sda | ||
| + | part pv.01 --size=1 --grow --ondisk=sda | ||
| + | volgroup myvg pv.01 | ||
| + | |||
| + | logvol / --vgname=myvg --fstype=xfs --size=122070 --name=rootvol | ||
| + | #logvol /boot --vgname=myvg --fstype=ext2 --size=477 --name=bootvol | ||
| + | #logvol /boot/efi --vgname=myvg --fstype=vfat --size=477 --name=bootefivol | ||
| + | logvol /opt --vgname=myvg --fstype=xfs --size=28610 --name=optvol | ||
| + | logvol /var --vgname=myvg --fstype=xfs --size=95367 --name=varvol | ||
| + | logvol /var/crash --vgname=myvg --fstype=xfs --size=122070 --name=varcrashvol | ||
| + | logvol /tmp --vgname=myvg --fstype=xfs --size=9537 --name=tmpvol | ||
| + | logvol /appvol --vgname=myvg --fstype=xfs --size=715256 --name=appvol | ||
| + | logvol /appvol/29west --vgname=myvg --fstype=xfs --size=47684 --name=appvol29west | ||
| + | logvol /opt/eFX --vgname=myvg --fstype=xfs --size=138283 --name=opteFXvol | ||
| + | logvol /images --vgname=myvg --fstype=xfs --size=19074 --name=imagesvol | ||
| + | logvol swap --vgname=myvg --fstype=swap --size=4768 --name=swapvol | ||
| + | |||
| + | %pre | ||
| + | $SNIPPET('log_ks_pre') | ||
| + | $SNIPPET('kickstart_start') | ||
| + | #$SNIPPET('pre_install_network_config') | ||
| + | # Enable installation monitoring | ||
| + | $SNIPPET('pre_anamon') | ||
| + | %end | ||
| + | |||
| + | %packages | ||
| + | @^minimal | ||
| + | @core | ||
| + | chrony | ||
| + | kexec-tools | ||
| + | $SNIPPET('func_install_if_enabled') | ||
| + | %end | ||
| + | |||
| + | %post --nochroot | ||
| + | $SNIPPET('log_ks_post_nochroot') | ||
| + | %end | ||
| + | |||
| + | %post | ||
| + | |||
| + | #copy ssh keys | ||
| + | mkdir /root/.ssh | ||
| + | |||
| + | echo "ssh-dss AAAAB3NzaC1kc3MAAAEBAJChvRMyICXxc02DHb1HUI5eMr6PVg0s3ymg6brBldnvNk868uqr6lq+0sFwhB6hTfVd6r6macrQAYJLHQK4eVF0S4bw8h8afpaeT0wQ7rF2Hyk3tNXorp0vhB0hNsfBru6X6xMsmaElhPQsBV/khsGjf/cuogGx38IsV4j04G2UQWQqW5lb7L3unmxCJdyL7zLU7dEwLYI36xQkw19KP/AlbAnFv/60H9pjOqKE744XhghPa1My4TZTU6C46CuXPRetcqNzG2qp07kxO8wsG8G9/+34mQGpDAWC78Z+k7foT+kzyWKJ1ofTDu0sgqIxjWxVKR2IzUUeTO3ohHTXa+0AAAAVALsYzJiHKKe6v8RnO1KBH33abZc5AAABAAtzPPA1iJsCTCQQ6NJKNelSRpHXhNFClNouxXaZAy8T/Xew/evd53UOA9HyYXu633zAx27Ee/ZQCGs2CWHSLrp4i0Ma6h+rI02wYESO63e1rZLbDu5axu1BXz3csLuWX95+ZsgXLsj1UmmktOlz1lY+PxaxA5D1yZTaiJN0ttPYsimQPyNPQJ5V1ld15suswAJX10vIm9I5dYTaO0mCpMwD3xjKfUkn+0nQQZu3cHVWvXGaobEA66VZ8aj4Ic/c24L8sfR7L7Ythwgn5sSulfRePHGdkRhSVjgmdBHvsqzvPbc2naEefXddEoGysiu6jigfPLWf2QhqmMX+INGtnSgAAAEBAIuzEqCv02fLgPC5XJMqsW9Yau0kX2AdZn4bpNkOX9ybedqPo6AmeyFR1Kpj9kylhcjx4LXXrCQODNyqWiqOnJAjw6CEg9xqqJPKn7qUR8qEZ/RH/dhEv0WG7zMrWJ06jASFHq8yji2smdhxa0SYIdF4J4cfD7ml49SzFBTo+uo78fvCSF7k3z0jyZnqSvlppnQd5pOnaa6aBrCC+o3EFSyPXuwJJvDF/ESkvqsDAVtw4DVqFXfhKEY75yx9u27rpk83DqZ7QdwnUP9DjTcccYlv9JoBy3i+kAlPiGAgH60P2Zs7meBtdYgT3d2c5MwwkwqcjcRujnEXqb8ngTIAp4E= root@fixdev1" >> /root/.ssh/authorized_keys | ||
| + | |||
| + | echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDdPfZVhag36/ykga36ahXuMO5uBEwHsco3PvVBQggIEjhElI/3t8ZWPje0Z8hfgwSAHcwdph0xp6qqiIPyzmgEZishdHpQOhyiBLcuAWk7Lt3u449ema1IGgfychLjqhBXhyYxSkXtXOFN0nw8AjVrdd0y16TGb8/UjE77dA1z5mQVi4SQLT5DVu/qHMwlvroev6H2UNNYqjHSNI6JPtD9WESD0pdj1+0HY/guTchClL7lwl7mauq5Yncy6bGELIJ/F9RH6/Hfg4WE9x12w6vYbjg0Oojp4m6/NrT/JT7+a7sxgkN9RMjmBvbn8RvnKfcyfEZs8cwY8F8wRArg4t/j root@fixadmin5" >> /root/.ssh/authorized_keys | ||
| + | |||
| + | %end | ||
| + | |||
| + | %post | ||
| + | $SNIPPET('log_ks_post') | ||
| + | # Start yum configuration | ||
| + | $yum_config_stanza | ||
| + | # End yum configuration | ||
| + | $SNIPPET('post_install_kernel_options') | ||
| + | #$SNIPPET('post_install_network_config') | ||
| + | #$SNIPPET('func_register_if_enabled') | ||
| + | #$SNIPPET('download_config_files') | ||
| + | #$SNIPPET('koan_environment') | ||
| + | #$SNIPPET('redhat_register') | ||
| + | #$SNIPPET('cobbler_register') | ||
| + | # Enable post-install boot notification | ||
| + | $SNIPPET('post_anamon') | ||
| + | # Start final steps | ||
| + | $SNIPPET('kickstart_done') | ||
| + | # End final steps | ||
| + | %end | ||
| + | |||
| + | </syntaxhighlight> | ||
| + | |||
| + | OS Configuration list for the 1U | ||
| + | BIOS settings: | ||
| + | * We need the BIOS low-latency settings please: | ||
| + | * Disable Hyperthreading | ||
| + | * Disable C-states | ||
| + | * Disable C1e | ||
| + | * Disable Monitor/MWait | ||
| + | * Nic optrom to efi | ||
| + | * Uefi boot options set. | ||
| + | |||
| + | * Also, from https://www.supermicro.com/products/nfo/files/Hyper-Speed/low_lat_jitter_opt_guide.pdf, please can the following be set from section 1.2: | ||
| + | BIOS/IPMI Optimizations | ||
| + | 1. Set “SuperMicro Hyper-Speed” at the highest, appropriate level | ||
| + | 3. Set “SuperMicro Hyper-Turbo” as “Enabled” | ||
| + | 4. Set IPMI fan speed to FULL. | ||
| + | 5. Disabling unused devices such as USB controllers and SCU controller (PCH chipset’s storage controller) can help reduce system interrupts. | ||
| + | |||
| + | |||
| + | * HSBC require BOTH SolarFlare cards on Socket 1 | ||
| + | * HSBC request ILO access | ||
| + | * Everything else as per the Standard and KDB configuration | ||
| + | * Spare SuperMicro LL3s should be Standard configuration | ||
| + | |||
| + | * Mouza kickstart file will roll out all filesystems, passwords and SSH keys. | ||
| + | * Check that the file system is as expected with df -h | ||
| + | * Set hostname and IP address based on for bios server requirements list. You will need to match MAC address to hostname and IP`s. | ||
| + | * If HTC 240 then setup FlashRAID | ||
| + | - create | ||
| + | |||
| + | - For the LL3s: | ||
| + | - 4 x 480 GB SSD | ||
| + | - | ||
| + | - Build the filesystems under 1 VG as follows (RAID 5): | ||
| + | - | ||
| + | Capacity of 4x480 (RAID 5) = 1440Gb | ||
| + | / 128Gb | ||
| + | /boot 0.5Gb | ||
| + | /boot/efi 0.5Gb | ||
| + | /opt 30Gb | ||
| + | /var 100Gb | ||
| + | /var/crash 128Gb | ||
| + | /tmp 10Gb | ||
| + | |||
| + | /appvol 750GB | ||
| + | /appvol/29west 50Gb | ||
| + | /opt/eFX 145Gb | ||
| + | /images 20Gb | ||
| + | Swap 5GB | ||
| + | |||
| + | Total required 1362Gb | ||
| + | Remaining 78Gb | ||
| + | - | ||
| + | - B1052o17 | ||
| + | - | ||
| + | - For the HTC 240 | ||
| + | - 2 x 480 GB SSD | ||
| + | - 4 x 1.6 TB NVMe (Raid 5) | ||
| + | - | ||
| + | - The RAID 1 below is used for the OS and the disk should be in a volgroup called VGRAID1H (/dev/mapper/VGRAID1H). Filesystems are xfs and its a minimal install. | ||
| + | Internal disks (RAID 1) | ||
| + | / 128Gb | ||
| + | /boot 0.5Gb | ||
| + | /boot/efi 0.5Gb | ||
| + | /opt 30Gb | ||
| + | /var 100Gb | ||
| + | /var/crash 128Gb | ||
| + | /tmp 10Gb | ||
| + | Swap 5GB | ||
| + | Total 397Gb | ||
| + | |||
| + | NVMe (RAID 5) | ||
| + | /appvol 1Tb | ||
| + | /appvol/29west 50Gb | ||
| + | /opt/eFX 145Gb | ||
| + | /images 20Gb | ||
| + | |||
| + | Total 1.215TB | ||
| + | - | ||
| + | • Lsblk | ||
| + | • Date | ||
| + | • Timedatectl | ||
| + | • Ssh? | ||
| + | • Clear anaconda.cfg and original.cfg | ||
| + | • Set ip, netmask and gateway | ||
| + | • Ipmi set ips? | ||
| + | echo "" > /etc/resolv.conf | ||
| + | • chmod 700 ~/.ssh | ||
| + | • chmod 600 ~/.ssh/authorized_keys | ||
| + | • fdisk /dev/sp0md | ||
| + | • mkfs.xfs /dev/sp0md/appvol | ||
| + | • mkfs.xfs /dev/sp0md/appvol/29west | ||
| + | • mkfs.xfs /opt/eFX | ||
| + | • mkfs.xfs /images | ||
| + | • History -c | ||
| + | |||
| + | NVMe (RAID 5) | ||
| + | /appvol 1Tb | ||
| + | /appvol/29west 50Gb | ||
| + | /opt/eFX 145Gb | ||
| + | /images 20Gb | ||
| + | |||
| + | Total 1.215TB | ||
| + | |||
| + | |||
| + | |||
| + | Kickstart For the 2U (HTC 240`s) | ||
| + | |||
| + | <syntaxhighlight> | ||
| + | # kickstart template for Fedora 8 and later. | ||
| + | # (includes %end blocks) | ||
| + | # do not use with earlier distros | ||
| + | |||
| + | #platform=x86, AMD64, or Intel EM64T | ||
| + | # System authorization information | ||
| + | auth --enableshadow --passalgo=sha512 | ||
| + | # System bootloader configuration | ||
| + | bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda | ||
| + | # Partition clearing information | ||
| + | clearpart --all --initlabel | ||
| + | # Use network installation | ||
| + | url --url=$tree | ||
| + | # Use CDROM installation media | ||
| + | #cdrom | ||
| + | # Use text mode install | ||
| + | text | ||
| + | # Firewall configuration | ||
| + | firewall --enabled | ||
| + | # Run the Setup Agent on first boot | ||
| + | firstboot --disable | ||
| + | # System keyboard | ||
| + | keyboard --vckeymap=us --xlayouts='us' | ||
| + | # System language | ||
| + | lang en_US.UTF-8 | ||
| + | # If any cobbler repo definitions were referenced in the kickstart profile, include them here. | ||
| + | $yum_repo_stanza | ||
| + | # Network information | ||
| + | #$SNIPPET('network_config') | ||
| + | |||
| + | #Root password | ||
| + | rootpw --iscrypted $6$xxH4NuTu7jXIy1Yx$RWUAfjNp5syVYc1BfqAH8f1wQf.eMmrtAx9XDXa.RH8EaN666Ao9RK8akr3pczg7ByKgTFatIL4JPFBk09sLK/ | ||
| + | # SELinux configuration | ||
| + | selinux --disabled | ||
| + | # Do not configure the X Window System | ||
| + | skipx | ||
| + | # System services | ||
| + | services --enabled="chronyd" | ||
| + | # System timezone | ||
| + | timezone Europe/London | ||
| + | # Install OS instead of upgrade | ||
| + | install | ||
| + | # Clear the Master Boot Record | ||
| + | zerombr | ||
| + | # Allow anaconda to partition the system as needed | ||
| + | #autopart | ||
| + | |||
| + | part /boot --fstype=ext2 --size=477 --ondisk=sda | ||
| + | part /boot/efi --fstype=vfat --size=477 --ondisk=sda | ||
| + | part pv.01 --size=1 --grow --ondisk=sda | ||
| + | volgroup VGRAID1H pv.01 | ||
| + | |||
| + | logvol / --vgname=VGRAID1H --fstype=xfs --size=122070 --name=rootvol | ||
| + | #logvol /boot --vgname=VGRAID1H --fstype=ext2 --size=477 --name=bootvol | ||
| + | #logvol /boot/efi --vgname=VGRAID1H --fstype=vfat --size=477 --name=bootefivol | ||
| + | logvol /opt --vgname=VGRAID1H --fstype=xfs --size=28610 --name=optvol | ||
| + | logvol /var --vgname=VGRAID1H --fstype=xfs --size=95367 --name=varvol | ||
| + | logvol /var/crash --vgname=VGRAID1H --fstype=xfs --size=122070 --name=varcrashvol | ||
| + | logvol /tmp --vgname=VGRAID1H --fstype=xfs --size=9537 --name=tmpvol | ||
| + | #logvol /appvol --vgname=VGRAID1H --fstype=xfs --size=715256 --name=appvol | ||
| + | #logvol /appvol/29west --vgname=VGRAID1H --fstype=xfs --size=47684 --name=appvol29west | ||
| + | #logvol /opt/eFX --vgname=VGRAID1H --fstype=xfs --size=138283 --name=opteFXvol | ||
| + | #logvol /images --vgname=VGRAID1H --fstype=xfs --size=19074 --name=imagesvol | ||
| + | logvol swap --vgname=VGRAID1H --fstype=swap --size=4768 --name=swapvol | ||
| + | |||
| + | %pre | ||
| + | $SNIPPET('log_ks_pre') | ||
| + | $SNIPPET('kickstart_start') | ||
| + | #$SNIPPET('pre_install_network_config') | ||
| + | # Enable installation monitoring | ||
| + | $SNIPPET('pre_anamon') | ||
| + | %end | ||
| + | |||
| + | %packages | ||
| + | @^minimal | ||
| + | @core | ||
| + | chrony | ||
| + | kexec-tools | ||
| + | $SNIPPET('func_install_if_enabled') | ||
| + | %end | ||
| + | |||
| + | %post --nochroot | ||
| + | $SNIPPET('log_ks_post_nochroot') | ||
| + | %end | ||
| + | |||
| + | %post | ||
| + | |||
| + | #copy ssh keys | ||
| + | mkdir /root/.ssh | ||
| + | |||
| + | echo "ssh-dss AAAAB3NzaC1kc3MAAAEBAJChvRMyICXxc02DHb1HUI5eMr6PVg0s3ymg6brBldnvNk868uqr6lq+0sFwhB6hTfVd6r6macrQAYJLHQK4eVF0S4bw8h8afpaeT0wQ7rF2Hyk3tNXorp0vhB0hNsfBru6X6xMsmaElhPQsBV/khsGjf/cuogGx38IsV4j04G2UQWQqW5lb7L3unmxCJdyL7zLU7dEwLYI36xQkw19KP/AlbAnFv/60H9pjOqKE744XhghPa1My4TZTU6C46CuXPRetcqNzG2qp07kxO8wsG8G9/+34mQGpDAWC78Z+k7foT+kzyWKJ1ofTDu0sgqIxjWxVKR2IzUUeTO3ohHTXa+0AAAAVALsYzJiHKKe6v8RnO1KBH33abZc5AAABAAtzPPA1iJsCTCQQ6NJKNelSRpHXhNFClNouxXaZAy8T/Xew/evd53UOA9HyYXu633zAx27Ee/ZQCGs2CWHSLrp4i0Ma6h+rI02wYESO63e1rZLbDu5axu1BXz3csLuWX95+ZsgXLsj1UmmktOlz1lY+PxaxA5D1yZTaiJN0ttPYsimQPyNPQJ5V1ld15suswAJX10vIm9I5dYTaO0mCpMwD3xjKfUkn+0nQQZu3cHVWvXGaobEA66VZ8aj4Ic/c24L8sfR7L7Ythwgn5sSulfRePHGdkRhSVjgmdBHvsqzvPbc2naEefXddEoGysiu6jigfPLWf2QhqmMX+INGtnSgAAAEBAIuzEqCv02fLgPC5XJMqsW9Yau0kX2AdZn4bpNkOX9ybedqPo6AmeyFR1Kpj9kylhcjx4LXXrCQODNyqWiqOnJAjw6CEg9xqqJPKn7qUR8qEZ/RH/dhEv0WG7zMrWJ06jASFHq8yji2smdhxa0SYIdF4J4cfD7ml49SzFBTo+uo78fvCSF7k3z0jyZnqSvlppnQd5pOnaa6aBrCC+o3EFSyPXuwJJvDF/ESkvqsDAVtw4DVqFXfhKEY75yx9u27rpk83DqZ7QdwnUP9DjTcccYlv9JoBy3i+kAlPiGAgH60P2Zs7meBtdYgT3d2c5MwwkwqcjcRujnEXqb8ngTIAp4E= root@fixdev1" >> /root/.ssh/authorized_keys | ||
| + | |||
| + | echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDdPfZVhag36/ykga36ahXuMO5uBEwHsco3PvVBQggIEjhElI/3t8ZWPje0Z8hfgwSAHcwdph0xp6qqiIPyzmgEZishdHpQOhyiBLcuAWk7Lt3u449ema1IGgfychLjqhBXhyYxSkXtXOFN0nw8AjVrdd0y16TGb8/UjE77dA1z5mQVi4SQLT5DVu/qHMwlvroev6H2UNNYqjHSNI6JPtD9WESD0pdj1+0HY/guTchClL7lwl7mauq5Yncy6bGELIJ/F9RH6/Hfg4WE9x12w6vYbjg0Oojp4m6/NrT/JT7+a7sxgkN9RMjmBvbn8RvnKfcyfEZs8cwY8F8wRArg4t/j root@fixadmin5" >> /root/.ssh/authorized_keys | ||
| + | |||
| + | %end | ||
| + | |||
| + | %post | ||
| + | $SNIPPET('log_ks_post') | ||
| + | # Start yum configuration | ||
| + | $yum_config_stanza | ||
| + | # End yum configuration | ||
| + | $SNIPPET('post_install_kernel_options') | ||
| + | #$SNIPPET('post_install_network_config') | ||
| + | #$SNIPPET('func_register_if_enabled') | ||
| + | #$SNIPPET('download_config_files') | ||
| + | #$SNIPPET('koan_environment') | ||
| + | #$SNIPPET('redhat_register') | ||
| + | #$SNIPPET('cobbler_register') | ||
| + | # Enable post-install boot notification | ||
| + | $SNIPPET('post_anamon') | ||
| + | # Start final steps | ||
| + | $SNIPPET('kickstart_done') | ||
| + | # End final steps | ||
| + | %end | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | === Configuration script === | ||
| + | |||
| + | |||
| + | |||
| + | <syntaxhighlight> | ||
| + | #!/bin/bash | ||
| + | |||
| + | gw="10.215.40.33" | ||
| + | ipmigw="10.215.40.1" | ||
| + | |||
| + | ips=("10.215.40.34" "10.215.40.35" "10.215.40.36" "10.215.40.37" "10.215.40.38" "10.215.40.39" "10.215.40.40" "10.215.40.41") | ||
| + | |||
| + | ipmiips=("10.215.40.2" "10.215.40.4" "10.215.40.6" "10.215.40.8" "10.215.40.10" "10.215.40.12" "10.215.40.14" "10.215.40.16") | ||
| + | |||
| + | temp=`hostname | awk -F "-" '{print $4}'` | ||
| + | temp=`echo $temp | awk -Fa '{print $1}'` | ||
| + | index=$(( temp - 1 )) | ||
| + | |||
| + | myip=${ips[$index]} | ||
| + | myipmiip=${ipmiips[$index]} | ||
| + | |||
| + | # Delete extra files added by cobbler | ||
| + | cd /root | ||
| + | rm -rf anaconda-ks.cfg cobbler.ks ks-post.log ks-post-nochroot.log ks-pre.log original-ks.cfg | ||
| + | |||
| + | # Make networking changes | ||
| + | sed -i 's/BOOTPROTO=dhcp/BOOTPROTO=static/' /etc/sysconfig/network-scripts/ifcfg-enp1s0f0 | ||
| + | echo "NETMASK=255.255.255.224" >> /etc/sysconfig/network-scripts/ifcfg-enp1s0f0 | ||
| + | echo "GATEWAY=$gw" >> /etc/sysconfig/network-scripts/ifcfg-enp1s0f0 | ||
| + | echo "IPADDR=$myip" >> /etc/sysconfig/network-scripts/ifcfg-enp1s0f0 | ||
| + | |||
| + | # clear resolv.conf | ||
| + | echo "" > /etc/resolv.conf | ||
| + | |||
| + | # Change ipmi | ||
| + | chmod +x ipmicfg-bin/IPMICFG-Linux.x86_64 | ||
| + | |||
| + | ./ipmicfg-bin/IPMICFG-Linux.x86_64 -dhcp off | ||
| + | ./ipmicfg-bin/IPMICFG-Linux.x86_64 -m $myipmiip | ||
| + | ./ipmicfg-bin/IPMICFG-Linux.x86_64 -k 255.255.255.224 | ||
| + | ./ipmicfg-bin/IPMICFG-Linux.x86_64 -g $ipmigw | ||
| + | |||
| + | # delete known_hosts | ||
| + | rm -f /root/.ssh/known_hosts | ||
| + | |||
| + | chmod 700 ~/.ssh | ||
| + | chmod 600 ~/.ssh/authorized_keys | ||
| + | |||
| + | rm -rf ./ipmicfg-bin/ | ||
| + | |||
| + | #remove the script itself | ||
| + | me=`basename "$0"` | ||
| + | rm -rf /root/$me | ||
| + | |||
| + | # clear history | ||
| + | history -c | ||
| + | </syntaxhighlight> | ||
Latest revision as of 10:22, 5 September 2017
FlashRAID Intro
FlashRAID is an enterprise data protection and management system which is special designed for high speed NVMe SSD. It is an integrated NVMe solution which provided following features:
- Improve data protection in term of resiliency and high-availability by multiple RAID protection level
- Linearly scalable performance with addition/reduction of disk drive
- Capacity scalable with no downtime and less data-migration
- Fast reconstruction to reduce failure risk underling degraded state
- Consistent performance to reduce the influence on running application
- Unified Storage Resource Management
- Easy system management with CLI and Graphic tool
- Thin provisioning reduces one-off investment and feeds foreseeable business growth
The user guide describes the supported operation system and how to install/ uninstall FlashRAID. This document also provides detail operation steps with FlashRAID command line tool FlashCLI, include following functions:
- User privilege management
- Disk drive management
- Storage pool management
- Virtual disk management
- Error monitoring and reporting
Supported OS
Supported Operation System The standard operation systems FlashRAID supported are listed as below table.
| Distribution | Version | Note |
|---|---|---|
| CentOS | 6.5,6.6,7.0,7.1 | 7.1 inbox driver has better support for hot plug. |
| Red Hat Enterprise Linux | 6.5,6.6,7.0,7.1 | Memblaze NVMe driver is recommend for PblazeIV |
Supported Drives
Supported Disk Drives FlashRAID is specially designed for high speed NVMe SSD, but it can also support other disk drives. The disk drives that FlashRAID supports are:
- NVMe SSD
- PCIe SSD
- SATA SSD
- SAS SSD
- SATA HDD
- SAS HDD
Supported RAID levels
Supported RAID Level Currently the RAID level that FlashRAID supported are:
- RAID 0
- RAID 1
- RAID 5
- RAID 6
Customer installations
Fixnetic / HSBC
Kickstart for the 1U`s
# kickstart template for Fedora 8 and later.
# (includes %end blocks)
# do not use with earlier distros
#platform=x86, AMD64, or Intel EM64T
# System authorization information
auth --enableshadow --passalgo=sha512
# System bootloader configuration
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
# Partition clearing information
clearpart --all --initlabel
# Use network installation
url --url=$tree
# Use CDROM installation media
#cdrom
# Use text mode install
text
# Firewall configuration
firewall --enabled
# Run the Setup Agent on first boot
firstboot --disable
# System keyboard
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US.UTF-8
# If any cobbler repo definitions were referenced in the kickstart profile, include them here.
$yum_repo_stanza
# Network information
#$SNIPPET('network_config')
#Root password
rootpw --iscrypted $6$xxH4NuTu7jXIy1Yx$RWUAfjNp5syVYc1BfqAH8f1wQf.eMmrtAx9XDXa.RH8EaN666Ao9RK8akr3pczg7ByKgTFatIL4JPFBk09sLK/
# SELinux configuration
selinux --disabled
# Do not configure the X Window System
skipx
# System services
services --enabled="chronyd"
# System timezone
timezone America/New_York
# Install OS instead of upgrade
install
# Clear the Master Boot Record
zerombr
# Allow anaconda to partition the system as needed
#autopart
part /boot --fstype=ext2 --size=477 --ondisk=sda
part /boot/efi --fstype=vfat --size=477 --ondisk=sda
part pv.01 --size=1 --grow --ondisk=sda
volgroup myvg pv.01
logvol / --vgname=myvg --fstype=xfs --size=122070 --name=rootvol
#logvol /boot --vgname=myvg --fstype=ext2 --size=477 --name=bootvol
#logvol /boot/efi --vgname=myvg --fstype=vfat --size=477 --name=bootefivol
logvol /opt --vgname=myvg --fstype=xfs --size=28610 --name=optvol
logvol /var --vgname=myvg --fstype=xfs --size=95367 --name=varvol
logvol /var/crash --vgname=myvg --fstype=xfs --size=122070 --name=varcrashvol
logvol /tmp --vgname=myvg --fstype=xfs --size=9537 --name=tmpvol
logvol /appvol --vgname=myvg --fstype=xfs --size=715256 --name=appvol
logvol /appvol/29west --vgname=myvg --fstype=xfs --size=47684 --name=appvol29west
logvol /opt/eFX --vgname=myvg --fstype=xfs --size=138283 --name=opteFXvol
logvol /images --vgname=myvg --fstype=xfs --size=19074 --name=imagesvol
logvol swap --vgname=myvg --fstype=swap --size=4768 --name=swapvol
%pre
$SNIPPET('log_ks_pre')
$SNIPPET('kickstart_start')
#$SNIPPET('pre_install_network_config')
# Enable installation monitoring
$SNIPPET('pre_anamon')
%end
%packages
@^minimal
@core
chrony
kexec-tools
$SNIPPET('func_install_if_enabled')
%end
%post --nochroot
$SNIPPET('log_ks_post_nochroot')
%end
%post
#copy ssh keys
mkdir /root/.ssh
echo "ssh-dss AAAAB3NzaC1kc3MAAAEBAJChvRMyICXxc02DHb1HUI5eMr6PVg0s3ymg6brBldnvNk868uqr6lq+0sFwhB6hTfVd6r6macrQAYJLHQK4eVF0S4bw8h8afpaeT0wQ7rF2Hyk3tNXorp0vhB0hNsfBru6X6xMsmaElhPQsBV/khsGjf/cuogGx38IsV4j04G2UQWQqW5lb7L3unmxCJdyL7zLU7dEwLYI36xQkw19KP/AlbAnFv/60H9pjOqKE744XhghPa1My4TZTU6C46CuXPRetcqNzG2qp07kxO8wsG8G9/+34mQGpDAWC78Z+k7foT+kzyWKJ1ofTDu0sgqIxjWxVKR2IzUUeTO3ohHTXa+0AAAAVALsYzJiHKKe6v8RnO1KBH33abZc5AAABAAtzPPA1iJsCTCQQ6NJKNelSRpHXhNFClNouxXaZAy8T/Xew/evd53UOA9HyYXu633zAx27Ee/ZQCGs2CWHSLrp4i0Ma6h+rI02wYESO63e1rZLbDu5axu1BXz3csLuWX95+ZsgXLsj1UmmktOlz1lY+PxaxA5D1yZTaiJN0ttPYsimQPyNPQJ5V1ld15suswAJX10vIm9I5dYTaO0mCpMwD3xjKfUkn+0nQQZu3cHVWvXGaobEA66VZ8aj4Ic/c24L8sfR7L7Ythwgn5sSulfRePHGdkRhSVjgmdBHvsqzvPbc2naEefXddEoGysiu6jigfPLWf2QhqmMX+INGtnSgAAAEBAIuzEqCv02fLgPC5XJMqsW9Yau0kX2AdZn4bpNkOX9ybedqPo6AmeyFR1Kpj9kylhcjx4LXXrCQODNyqWiqOnJAjw6CEg9xqqJPKn7qUR8qEZ/RH/dhEv0WG7zMrWJ06jASFHq8yji2smdhxa0SYIdF4J4cfD7ml49SzFBTo+uo78fvCSF7k3z0jyZnqSvlppnQd5pOnaa6aBrCC+o3EFSyPXuwJJvDF/ESkvqsDAVtw4DVqFXfhKEY75yx9u27rpk83DqZ7QdwnUP9DjTcccYlv9JoBy3i+kAlPiGAgH60P2Zs7meBtdYgT3d2c5MwwkwqcjcRujnEXqb8ngTIAp4E= root@fixdev1" >> /root/.ssh/authorized_keys
echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDdPfZVhag36/ykga36ahXuMO5uBEwHsco3PvVBQggIEjhElI/3t8ZWPje0Z8hfgwSAHcwdph0xp6qqiIPyzmgEZishdHpQOhyiBLcuAWk7Lt3u449ema1IGgfychLjqhBXhyYxSkXtXOFN0nw8AjVrdd0y16TGb8/UjE77dA1z5mQVi4SQLT5DVu/qHMwlvroev6H2UNNYqjHSNI6JPtD9WESD0pdj1+0HY/guTchClL7lwl7mauq5Yncy6bGELIJ/F9RH6/Hfg4WE9x12w6vYbjg0Oojp4m6/NrT/JT7+a7sxgkN9RMjmBvbn8RvnKfcyfEZs8cwY8F8wRArg4t/j root@fixadmin5" >> /root/.ssh/authorized_keys
%end
%post
$SNIPPET('log_ks_post')
# Start yum configuration
$yum_config_stanza
# End yum configuration
$SNIPPET('post_install_kernel_options')
#$SNIPPET('post_install_network_config')
#$SNIPPET('func_register_if_enabled')
#$SNIPPET('download_config_files')
#$SNIPPET('koan_environment')
#$SNIPPET('redhat_register')
#$SNIPPET('cobbler_register')
# Enable post-install boot notification
$SNIPPET('post_anamon')
# Start final steps
$SNIPPET('kickstart_done')
# End final steps
%endOS Configuration list for the 1U BIOS settings:
- We need the BIOS low-latency settings please:
- Disable Hyperthreading
- Disable C-states
- Disable C1e
- Disable Monitor/MWait
- Nic optrom to efi
- Uefi boot options set.
- Also, from https://www.supermicro.com/products/nfo/files/Hyper-Speed/low_lat_jitter_opt_guide.pdf, please can the following be set from section 1.2:
BIOS/IPMI Optimizations 1. Set “SuperMicro Hyper-Speed” at the highest, appropriate level 3. Set “SuperMicro Hyper-Turbo” as “Enabled” 4. Set IPMI fan speed to FULL. 5. Disabling unused devices such as USB controllers and SCU controller (PCH chipset’s storage controller) can help reduce system interrupts.
- HSBC require BOTH SolarFlare cards on Socket 1
- HSBC request ILO access
- Everything else as per the Standard and KDB configuration
- Spare SuperMicro LL3s should be Standard configuration
- Mouza kickstart file will roll out all filesystems, passwords and SSH keys.
- Check that the file system is as expected with df -h
- Set hostname and IP address based on for bios server requirements list. You will need to match MAC address to hostname and IP`s.
- If HTC 240 then setup FlashRAID
- create
- For the LL3s: - 4 x 480 GB SSD - - Build the filesystems under 1 VG as follows (RAID 5): - Capacity of 4x480 (RAID 5) = 1440Gb / 128Gb /boot 0.5Gb /boot/efi 0.5Gb /opt 30Gb /var 100Gb /var/crash 128Gb /tmp 10Gb
/appvol 750GB /appvol/29west 50Gb /opt/eFX 145Gb /images 20Gb
Swap 5GB
Total required 1362Gb Remaining 78Gb - - B1052o17 - - For the HTC 240 - 2 x 480 GB SSD - 4 x 1.6 TB NVMe (Raid 5) - - The RAID 1 below is used for the OS and the disk should be in a volgroup called VGRAID1H (/dev/mapper/VGRAID1H). Filesystems are xfs and its a minimal install.
Internal disks (RAID 1)
/ 128Gb /boot 0.5Gb /boot/efi 0.5Gb /opt 30Gb /var 100Gb /var/crash 128Gb /tmp 10Gb
Swap 5GB
Total 397Gb
NVMe (RAID 5) /appvol 1Tb /appvol/29west 50Gb /opt/eFX 145Gb /images 20Gb
Total 1.215TB - • Lsblk • Date • Timedatectl • Ssh? • Clear anaconda.cfg and original.cfg • Set ip, netmask and gateway • Ipmi set ips? echo "" > /etc/resolv.conf • chmod 700 ~/.ssh • chmod 600 ~/.ssh/authorized_keys • fdisk /dev/sp0md • mkfs.xfs /dev/sp0md/appvol • mkfs.xfs /dev/sp0md/appvol/29west • mkfs.xfs /opt/eFX • mkfs.xfs /images • History -c
NVMe (RAID 5) /appvol 1Tb /appvol/29west 50Gb /opt/eFX 145Gb /images 20Gb
Total 1.215TB
Kickstart For the 2U (HTC 240`s)
# kickstart template for Fedora 8 and later.
# (includes %end blocks)
# do not use with earlier distros
#platform=x86, AMD64, or Intel EM64T
# System authorization information
auth --enableshadow --passalgo=sha512
# System bootloader configuration
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
# Partition clearing information
clearpart --all --initlabel
# Use network installation
url --url=$tree
# Use CDROM installation media
#cdrom
# Use text mode install
text
# Firewall configuration
firewall --enabled
# Run the Setup Agent on first boot
firstboot --disable
# System keyboard
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US.UTF-8
# If any cobbler repo definitions were referenced in the kickstart profile, include them here.
$yum_repo_stanza
# Network information
#$SNIPPET('network_config')
#Root password
rootpw --iscrypted $6$xxH4NuTu7jXIy1Yx$RWUAfjNp5syVYc1BfqAH8f1wQf.eMmrtAx9XDXa.RH8EaN666Ao9RK8akr3pczg7ByKgTFatIL4JPFBk09sLK/
# SELinux configuration
selinux --disabled
# Do not configure the X Window System
skipx
# System services
services --enabled="chronyd"
# System timezone
timezone Europe/London
# Install OS instead of upgrade
install
# Clear the Master Boot Record
zerombr
# Allow anaconda to partition the system as needed
#autopart
part /boot --fstype=ext2 --size=477 --ondisk=sda
part /boot/efi --fstype=vfat --size=477 --ondisk=sda
part pv.01 --size=1 --grow --ondisk=sda
volgroup VGRAID1H pv.01
logvol / --vgname=VGRAID1H --fstype=xfs --size=122070 --name=rootvol
#logvol /boot --vgname=VGRAID1H --fstype=ext2 --size=477 --name=bootvol
#logvol /boot/efi --vgname=VGRAID1H --fstype=vfat --size=477 --name=bootefivol
logvol /opt --vgname=VGRAID1H --fstype=xfs --size=28610 --name=optvol
logvol /var --vgname=VGRAID1H --fstype=xfs --size=95367 --name=varvol
logvol /var/crash --vgname=VGRAID1H --fstype=xfs --size=122070 --name=varcrashvol
logvol /tmp --vgname=VGRAID1H --fstype=xfs --size=9537 --name=tmpvol
#logvol /appvol --vgname=VGRAID1H --fstype=xfs --size=715256 --name=appvol
#logvol /appvol/29west --vgname=VGRAID1H --fstype=xfs --size=47684 --name=appvol29west
#logvol /opt/eFX --vgname=VGRAID1H --fstype=xfs --size=138283 --name=opteFXvol
#logvol /images --vgname=VGRAID1H --fstype=xfs --size=19074 --name=imagesvol
logvol swap --vgname=VGRAID1H --fstype=swap --size=4768 --name=swapvol
%pre
$SNIPPET('log_ks_pre')
$SNIPPET('kickstart_start')
#$SNIPPET('pre_install_network_config')
# Enable installation monitoring
$SNIPPET('pre_anamon')
%end
%packages
@^minimal
@core
chrony
kexec-tools
$SNIPPET('func_install_if_enabled')
%end
%post --nochroot
$SNIPPET('log_ks_post_nochroot')
%end
%post
#copy ssh keys
mkdir /root/.ssh
echo "ssh-dss AAAAB3NzaC1kc3MAAAEBAJChvRMyICXxc02DHb1HUI5eMr6PVg0s3ymg6brBldnvNk868uqr6lq+0sFwhB6hTfVd6r6macrQAYJLHQK4eVF0S4bw8h8afpaeT0wQ7rF2Hyk3tNXorp0vhB0hNsfBru6X6xMsmaElhPQsBV/khsGjf/cuogGx38IsV4j04G2UQWQqW5lb7L3unmxCJdyL7zLU7dEwLYI36xQkw19KP/AlbAnFv/60H9pjOqKE744XhghPa1My4TZTU6C46CuXPRetcqNzG2qp07kxO8wsG8G9/+34mQGpDAWC78Z+k7foT+kzyWKJ1ofTDu0sgqIxjWxVKR2IzUUeTO3ohHTXa+0AAAAVALsYzJiHKKe6v8RnO1KBH33abZc5AAABAAtzPPA1iJsCTCQQ6NJKNelSRpHXhNFClNouxXaZAy8T/Xew/evd53UOA9HyYXu633zAx27Ee/ZQCGs2CWHSLrp4i0Ma6h+rI02wYESO63e1rZLbDu5axu1BXz3csLuWX95+ZsgXLsj1UmmktOlz1lY+PxaxA5D1yZTaiJN0ttPYsimQPyNPQJ5V1ld15suswAJX10vIm9I5dYTaO0mCpMwD3xjKfUkn+0nQQZu3cHVWvXGaobEA66VZ8aj4Ic/c24L8sfR7L7Ythwgn5sSulfRePHGdkRhSVjgmdBHvsqzvPbc2naEefXddEoGysiu6jigfPLWf2QhqmMX+INGtnSgAAAEBAIuzEqCv02fLgPC5XJMqsW9Yau0kX2AdZn4bpNkOX9ybedqPo6AmeyFR1Kpj9kylhcjx4LXXrCQODNyqWiqOnJAjw6CEg9xqqJPKn7qUR8qEZ/RH/dhEv0WG7zMrWJ06jASFHq8yji2smdhxa0SYIdF4J4cfD7ml49SzFBTo+uo78fvCSF7k3z0jyZnqSvlppnQd5pOnaa6aBrCC+o3EFSyPXuwJJvDF/ESkvqsDAVtw4DVqFXfhKEY75yx9u27rpk83DqZ7QdwnUP9DjTcccYlv9JoBy3i+kAlPiGAgH60P2Zs7meBtdYgT3d2c5MwwkwqcjcRujnEXqb8ngTIAp4E= root@fixdev1" >> /root/.ssh/authorized_keys
echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDdPfZVhag36/ykga36ahXuMO5uBEwHsco3PvVBQggIEjhElI/3t8ZWPje0Z8hfgwSAHcwdph0xp6qqiIPyzmgEZishdHpQOhyiBLcuAWk7Lt3u449ema1IGgfychLjqhBXhyYxSkXtXOFN0nw8AjVrdd0y16TGb8/UjE77dA1z5mQVi4SQLT5DVu/qHMwlvroev6H2UNNYqjHSNI6JPtD9WESD0pdj1+0HY/guTchClL7lwl7mauq5Yncy6bGELIJ/F9RH6/Hfg4WE9x12w6vYbjg0Oojp4m6/NrT/JT7+a7sxgkN9RMjmBvbn8RvnKfcyfEZs8cwY8F8wRArg4t/j root@fixadmin5" >> /root/.ssh/authorized_keys
%end
%post
$SNIPPET('log_ks_post')
# Start yum configuration
$yum_config_stanza
# End yum configuration
$SNIPPET('post_install_kernel_options')
#$SNIPPET('post_install_network_config')
#$SNIPPET('func_register_if_enabled')
#$SNIPPET('download_config_files')
#$SNIPPET('koan_environment')
#$SNIPPET('redhat_register')
#$SNIPPET('cobbler_register')
# Enable post-install boot notification
$SNIPPET('post_anamon')
# Start final steps
$SNIPPET('kickstart_done')
# End final steps
%endConfiguration script
#!/bin/bash
gw="10.215.40.33"
ipmigw="10.215.40.1"
ips=("10.215.40.34" "10.215.40.35" "10.215.40.36" "10.215.40.37" "10.215.40.38" "10.215.40.39" "10.215.40.40" "10.215.40.41")
ipmiips=("10.215.40.2" "10.215.40.4" "10.215.40.6" "10.215.40.8" "10.215.40.10" "10.215.40.12" "10.215.40.14" "10.215.40.16")
temp=`hostname | awk -F "-" '{print $4}'`
temp=`echo $temp | awk -Fa '{print $1}'`
index=$(( temp - 1 ))
myip=${ips[$index]}
myipmiip=${ipmiips[$index]}
# Delete extra files added by cobbler
cd /root
rm -rf anaconda-ks.cfg cobbler.ks ks-post.log ks-post-nochroot.log ks-pre.log original-ks.cfg
# Make networking changes
sed -i 's/BOOTPROTO=dhcp/BOOTPROTO=static/' /etc/sysconfig/network-scripts/ifcfg-enp1s0f0
echo "NETMASK=255.255.255.224" >> /etc/sysconfig/network-scripts/ifcfg-enp1s0f0
echo "GATEWAY=$gw" >> /etc/sysconfig/network-scripts/ifcfg-enp1s0f0
echo "IPADDR=$myip" >> /etc/sysconfig/network-scripts/ifcfg-enp1s0f0
# clear resolv.conf
echo "" > /etc/resolv.conf
# Change ipmi
chmod +x ipmicfg-bin/IPMICFG-Linux.x86_64
./ipmicfg-bin/IPMICFG-Linux.x86_64 -dhcp off
./ipmicfg-bin/IPMICFG-Linux.x86_64 -m $myipmiip
./ipmicfg-bin/IPMICFG-Linux.x86_64 -k 255.255.255.224
./ipmicfg-bin/IPMICFG-Linux.x86_64 -g $ipmigw
# delete known_hosts
rm -f /root/.ssh/known_hosts
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
rm -rf ./ipmicfg-bin/
#remove the script itself
me=`basename "$0"`
rm -rf /root/$me
# clear history
history -c