Veri merkezinizdeki Brocade switch’lere Fabric OS (FOS) 9.x yükseltmesi yapmaya karar verdiniz. firmwaredownload komutunu çalıştırdınız sistem reboot oldu her şey düzgün çalışıyor gibi görünüyor… ama aslında bir şey eksik. İşte birçok sistem yöneticisinin gözden kaçırdığı ama kritik etkileri olan o eksik adım FPGA firmware güncellemesi. Yani cihazın içindeki düşük seviye donanım mantığını yöneten Field Programmable Gate Array yazılımı yeni FOS sürümüyle birlikte gelse de aktif hale gelmez. Bunu sizin manuel olarak yapmanız gerekir.
FPGA Nedir ve Neden Güncellenmelidir?
FPGA’nın Rolü:
- Portların sinyal zamanlaması
- Fiziksel katmanda iletişim kontrolü
- Donanım düzeyinde I/O yönlendirme
Yani FOS yazılımı gibi kullanıcı arayüzüne değil, cihazın çekirdek elektronik altyapısına hükmeder.
Neden Güncelleme Gerekir?
- FOS sürümleri yeni FPGA versiyonlarını içerebilir.
- Yeni FPGA firmware’leri donanım hatalarını düzeltir, performans optimizasyonu sağlar.
- Uyumsuz FPGA-FOS kombinasyonu, port hataları, ani bağlantı kesilmeleri, CRC hataları gibi sorunlara yol açabilir.
FOS 9.x gibi büyük sürüm değişimlerinde FPGA güncellemesi neredeyse zorunlu hale gelir. Sürüm notlarında “FPGA update required” yazmasa bile kontrol etmek önemlidir.
FPGA Firmware Güncelleme Süreci: Aşamalarla Anlatım
1. Adım: Cihazda Güncel FPGA Versiyonu Yüklü mü?
İlk olarak sistemdeki FPGA firmware sürümünün güncel olup olmadığını kontrol ediniz
switch:admin> fpgaupgrade --latest
Current Latest
------------------------
0x05.05 0x06.06
Burada:
- Current: Cihazda yüklü olan FPGA firmware sürümüdür.
- Latest: FOS ile birlikte gelen en güncel FPGA versiyonudur. Fark varsa güncelleme gereklidir.
2. Adım: FPGA Güncellemesini Başlatma
switch:admin> fpgaupgrade
This is a disruptive operation and will require a power-cycle after the completion of the operation.
Do you want to continue (y/n) ?
y diyerek başlatırsınız.
Sistem şu adımları izler:
- Mevcut FPGA flash belleği silinir (full-chip erase)
- Yeni firmware blokları (CFM0, CFM1, UFM, DSM) sırayla programlanır
- Her bir blok ayrı ayrı doğrulanır
- İşlem sonunda “DONE” mesajı alınır
Programming new FPGA, this may take a few minutes ...
programming Max 10 FPGA CFM0 block at sector 5 ...
verifying Max 10 FPGA CFM0 block at sector 5 ...
...
Exit code = 0... Success
Programmed new FPGA successfully. Please power-cycle for it to take effect.
Not: FPGA güncellemesi her zaman birkaç dakika sürebilir. İşlem esnasında sistemi kapatmak, bağlantıyı kesmek kesinlikle önerilmez.
3. Adım: Power-Cycle (Fiziksel Yeniden Başlatma)
FPGA güncellemesi tamamlandıktan sonra sistemin bunu tanıması için cihaz tamamen kapatılıp açılmalıdır.
reboot, ha failover gibi yumuşak yeniden başlatmalar işe yaramaz.
Gerçek “power-cycle”:
- Şase tipi cihazlarda: Power kablosunu çıkarıp takın
- Blade sistemlerde: Blade’i yönetsel olarak kapatıp yeniden başlatın (poweroff-poweron)
FPGA güncellemesini planlarken bu “kesinti süresi”ni göz önünde bulundurun ve kritik trafik taşıyan switch’lerde servis etkisini analiz edin.
4. Adım: Hata Durumunda Ne Yapılmalı?
Hatalı işlem çıktısı örneği:
Programming new FPGA, this may take a few minutes ...
Exit code = 6… Device verify failure
FPGA update failed. Avoid doing power cycle
Bu durumda yapılması gereken:
- Kesinlikle power-cycle YAPMAYINIZ
- Hata durumunu netleştirmek için şu komutu girin:
errdump | grep FPGA
Hatalı bir FPGA güncellemesinden sonra power-cycle yapılırsa, cihaz açılmaz hale gelebilir. Özellikle non-modular switch’lerde bu durum tüm sistemin çökmesi demektir.