Network Altyapıları, tüm bilişim uygulamalarımızdan en etkin şekilde faydalanabilmek için iyi tasarlanması ve iyi yönetilmesi gereken sistemlerdir. Özellikle IOT ve yüksek çözünürlüklü video uygulamalarının yaygınlaşması, şebekelerin eskiye oranla çok daha fazla aktif cihazdan oluşmaları Network altyapısının önemini daha da arttırmıştır.
Bu uygulamaların ve kullanıcıların networkten yüksek talep ve beklentileri altyapı kurulurken yapılacak teknoloji ve ürün seçiminde dikkate alınacak kriterlerin modern mimarileri ve teknolojileri öne çıkarması bir gerekli kılmaktadır.
Bu yazıda bu kriterlerin neler olduğunu, ve neden önemli olduklarını anlatmaya çalışacağız.
Reliability (Güvenilirlik)
Birinci sıraya koyduğumuz kriter Reliability. İş süreçleri, artık çok sıkı ve bir şekilde bilişim sistemleri üzerinden yürümekte ve Network’te oluşacak hatalar bu süreçleri ya kesintiye uğratacak veya yavaşlatacaktır. Reliability, sadece kullanılan donanımın MTBF (Mean Time Between Failures) değeri ile ilgili bir kavram değildir. Şebekenin mimarisinin nasıl belirlendiğinden başlayarak, cihazlar üzerindeki NOS (Network Operating System)’in ne kadar güçlü (robust) olduğu, bug’lardan ne kadara arındırılmış olduğu, yönetim yazılımının yetenekleri, ve sistemin kullanım ve troubleshooting kolaylığı gibi bir çok konu ile ilgilidir.
Kurulacak olan altyapının birkaç saatlik kesintisi, veya üzerinde çalışan sistemlerin Network’ten aldığı performanstaki azalma sisteme yapılan yatırımın çok daha üzerinde ticari ve prestij kayıplarına yol açabilir. Dolayısı ile kurulacak sisteme karar verirken, özellikle NOS seviyesindeki güvenilirlik mekanizmaları, sunulan mimari çözümün özellikleri, ve etkin çalışan bir yönetim mekanizması aranmalıdır. Unutmayın ki bir çok network kesintisi aslında zayıf yazılım geliştirme pratiklerinin sonucu olarak ortaya çıkmaktadır.
Telemetry
İyi göremediğiniz şeyi iyi yönetemezsiniz. Şebekeler daha büyük, daha kompleks ve de daha önemli hale gelirken, bu şebekeleri yönetmekle sorumlu olan Ağ yöneticilerinin geleneksel yöntemler ile Network’ten veri toplaması, ve olası sorunları çözmesi mümkün değildir. Geleneksel olarak SNMP, Syslog, veya Konsol erişimi üzerinden cihazların durumu, işleyişi ve olası problemleri hakkında bilgi toplanmaya çalışılır. Fakat bu yöntemlerin hiç bir ne real-time bir görünüm sağlar, ne de sistemimizde olup bitenler hakkında tam bir tablo verir.
Modern network altyapılarında şebekeden veri toplamanın en etkin yolu Telemetry’dir. Telemetry cihazların işleyişi sırasındaki tüm değişiklikleri (konfigürasyon, routing, mac-adres, arp tabloları, fan hızları, interface dom seviyeleri,…) gerçek zamanlı olarak yönetim sistemine aktarır. Bu yöntem sampling ile, belli zaman aralıklarında, sadece belli parametrelerin polling ile toplanmasını sağlayan SNMP’ye göre çok daha üstün ve gerçek bir görünürlük sağlar. Şebekenizde oluşabilecek her türlü problemin root-cause’unu en hızlı şekilde bulmanızı sağlayacağı gibi, bir çok olası problemi de herhangi bir kesinti yaşamadan fark ederek önlem almanızı sağlayacaktır.
L3 & Network Sanallaştırma Desteği
Geleneksel olarak lokal Network altyapıları Layer-2 olarak kurulur. L2 altyapı kolay kurulum ve flat bir yapı sağladığı için tercih edilir. Zira L3 işlemler geçmişte daha kapasiteli ve pahalı cihazlar gerektirdiği için motto olarak “Bridge (L2) where you can, Route (L3) where you must” kullanılmıştır. (Yapabildiğiniz her yerde L2 kullanının, Routing’i (L3) mecbur kaldığınızda kullanın).
Fakat L2 yapıların önemli problemleri de vardır. Öncelikle ölçeklenebilirlik anlamında oldukça kısıtlıdır. Belli sayıda aktif cihaz, ve hop sayısından öte gidemezsiniz. Şebeke büyüdükçe broadcast storm’lar artar. Loop’lar ve Spanning Tree problemleri neredeyse günlük bazda karşımıza çıkar, özellikle büyük ve dinamik yapılarda.
L3 Networkler‘de ise bu tip sorunlar ile karşılaşılmaz. Hem çok daha fazla ölçeklenebilir, hem de loop oluşmasını engelleyen daha çok mekanizma mevcuttur. Aynı zamanda VXLAN gibi network sanallaştırması teknolojileri ile L2 domainleri istenildiği zaman ve uzak lokasyonları da içine alabilecek şekilde esnek bir biçimde oluşturulabilir. Yeni nesil network cihazları L3’te de non-blocking şekilde çalışır, VXLAN ve EVPN gibi network sanallaştırma ve Control-Plane teknolojilerini destekler.
Otomasyon & API & SDN Bazlı Yönetim
Otomasyon az kaynakla büyük ve dinamik şebekelerin kolay yönetimini sağlamakla beraber, Network Altyapısının diğer Bilişim Stack’inin de bir parçası olmasını sağlayarak uçtan uca ürün ve servis provisioning süreçleri kısaltır. İnsan hatalarını minimize eder ve şebekenizin değişen durumlarda daha esnek ve değişken davranmasına olanak sağlar.
Otomasyon için farklı yaklaşımlar mevcuttur. Güçlü API’lere sahip network cihazlarının bu API’ler üzerinden otomasyonu yapılması özellikle bulut firmaları ve servis sağlayıcılar tarafından tercih edilir. Büyük kurumlarda DEVOPS araçlarının network cihazlarına da uygulandığını sıklıkla görebiliriz.
Aynı zamanda üreticiler de bu otomasyonları off-the-shelf olarak yapabileceğiniz yazılım ürünleri ile satın aldığınız sistemin otomasyonu yapmasını sağlayabilir. Otomasyon için hangi yöntemi kullanırsanız kullanın satın aldığınız ürünlerin kolay ve güvenilir bir şekilde otomasyonun yapılabilip, yapılamadığını mutlaka bir değerlendirme kriteri olarak önünüzde bulundurun.
Güvenlik – Security
Bir zincir sadece en zayıf halkası kadar kuvvetlidir. Şebekelerimizi kurarken bir çok güvenlik çözümünü de satın alarak kötü niyetli kişilerin sistemimize zarar vermesini, verilerimizi değiştirmesini veya çalmasını da engellemeye çalışıyoruz. Peki Network Altyapısında kullandığımız ürünlerimizin üzerlerindeki yazılımların açıkları ve zafiyetlerini de takip ediyor muyuz? Ürün seçimi yaparken bu sistemlerin ne kadar fazla açık verdiği konusu da önemli bir kriter olmalıdır. Fazla sayıda açık ve zafiyeti olan ürünler, hem sizi kötü niyetli saldırılara karşı riskli konuma sokar, hem de bu açıkları devamlı olarak kapamak isterseniz de network altyapınızda sürekli bir yazılım güncellemesi yapar durumda olursunuz.
Network altyapınız için değerlendirdiğiniz üreticilerin NOS’larının zafiyet ve açıklarını CVE (Common Vulnerability & Exposures) database’inden kontrol etmeniz mümkün. Aşağıdaki linkten NOS ismini search kısmında yazarak son 3-4 yılda ne kadar çok zafiyetleri olmuş ve hangi seviyede gerçekleşmiş kontrol edebilirsiniz.
https://cve.mitre.org/cve/search_cve_list.html
Diğer Kriterler
Temel olarak yukarıdaki maddeler ile seçim kriterleri hakkında bir fikir verebildiğimizi umuyorum fakat elbette bunlar yeterli değil. Detayına girmeyeceğimiz ama önemli olduğunu düşündüğümüz diğer kriterleri de aşağıda madde madde sıraladık;
- 3rd parti sistemlerle Entegrasyon kolaylığı (Firewall, Load Balancer, IPAM, NAC, VMWARE, Openstack…)
- Linux Shell’e kullanıcı erişim verebilmesi
- Python, Shell Scripting, Ansible desteklerinin olması
- Güçlü bir Event Manager’ı olması
- Basit bir fiyatlandırma ve lisanslandırma yöntemi olması
- Lock-In bir çözüm sunmaması
- Yüksek interoperability’e sahip olması
- Farklı ürün tiplerinde aynı NOS’un kullanılabilirliği
- Yine aynı Yönetim arayüzü ile tüm ürün gamının yönetilebilir olması