Yazılım Tabanlı Uygulamalar
(Software Defined Applications – SDA)

Geleneksel olarak uygulamalar tek ve kendi içerisinde birimler olarak tasarlanmıştır. Diğer yandan, yazılım tabanlı uygulamalar, birbiriyle API’ler aracılığıyla haberleşen ve adına mikroservis denilen birden fazla bağımsız bileşenden oluşmaktadır. Bu sayede bulut üzerinde hem uygulamaların içerisinde hem de uygulamalar arasındaki otomasyon için müthiş bir potansiyel oluşturmaktadır.

Daha basit anlatmak gerekirse, geleneksel uygulama iletim kontrolörleri (ADC’ler), veri merkezi veya merkezlerindeki farklı sunuculara ve farklı lokasyonlara yayılan sanallaştırılmış veya koyteynerleştirilmiş uygulamalar için değil de, tek bir donanım platformunda ve tek bir lokasyonda durmak üzere tasarlanmış ve yapılmıştır. Sanal ADC (vADC) buluşu bile bu duruma çözüm olamamıştır. Format donanımdan yazılıma kaymış olsa da, sanal cihaz da bir cihaz gibi davranmakta ve fiziksel donanımın mimari problemlerini miras olarak taşımaktadır.

Bu konuya ve özellikle ADC konusuna yeni bir yaklaşım – sürekli geliştirmenin, DevOp çalışmalarının ve mikroservislerin gerekliliklerine daha iyi cevap verebilecek bir yaklaşım gerekli olmuştur. ADC’ler sadece mikroservisler ve DevOp’larla değil, temel SDN prensipleriyle de aynı noktada olmalıdır. Bu da gelişmiş otomasyon, programlanabilme ve orkestrasyon için kontrol ve veri katmanlarının birbirinden ayrılmış olmasını gerektirir.


ADC’ler sahip olması gereken diğer özellikler şunlardır:

•   Yazılım tabanlı; bu sayede birden fazla yerde kullanılabilir, genel veya özel bulut ortamlarında koşan uygulamalarla birlikte hareket edebilir

•   Dağıtık mimari; böylece artarak gelişmekte olan mikroservisleri içeren uygulamaların doğasını aynalayarak kullanır

•   Açık arayüzler üzerinden tamamen otomatikleştirilmiş ve programlanabilir; bu sayede bulut yönetim platformlarına kolaylıkla entegre edilebilir

•   Kendi kendine servis verebilme; programlanabilir arayüzler üzerinden ve veri merkezi otomasyon araçları ile yerel entegrasyonu sayesinde ağ yöneticilerinin yardımına ihtiyaç duymadan geliştirme ekiplerinin konfigürasyon imkanı

Uygulama servisinin bulutta doğmuş uygulama iş yüklerine, mimarilerine, yönetim platformlarına ve operasyonel en iyi pratiğe adapte olması asıl hedeftir. Pek hoşa gitmeyen diğer alternatif ise ADC teknolojisinin yeni dalga 3. platform iş yüklerinin artan gerekliliklerine yabancılaşması ve bulut benzeri altyapılardaki yeni trend mikroservis tabanlı uygulama olduğu halde uygulama geliştirme konusuna çok cihaz odaklı bir yaklaşım sergilemesi olabilir.


Yazılım Tabanlı Uygulama çözümünün faydaları:

Uygulama hizmetlerine yukarda bahsettiğimiz yaklaşımlar, bu bölümde anlatacağımız birkaç önemli fayda sağlamaktadır.

Birincisi, ADC’lerin uygulama bileşenleriyle birlikte hareket etmesi sayesinde, mikroservisler daha iyi uygulama yanıt süreleri alır. Bunun sebebi ADC’ler mikroservisleri etkin bir şekilde takip eder ve dağıtık uygulama ile birlikte büyüyüp dinamik olarak birlikte hareket eder. ADC’lerin uygulama bileşenlerin bu kadar yakın olmasının sonuçlarından işiniz daha hızlı hizmet sunabilme ve dolayısıyla daha çabuk ciro sağlama gibi faydalar sağlar.

İkincisi, uygulama bileşenleriyle olan bu yakın birliktelik, ağ yöneticilerinin manuel müdahalesine ihtiyaç duymadan ADC kaynaklarının mikroservislerin otomatik yaşam döngüsü yönetimine erişmesini sağlar, bu sayede yönetim yükü belirgin ölçüde azalır. Bir diğer olumlu sonucu ise daha çok geliştirme ve BT etkinliği olur ki bu da daha düşük operasyonel masraflar ve yeni uygulama hayata geçirmek için daha az zaman harcamak anlamına gelir.

Dağıtık mikroservisler doğaları gereği hem performans ve gecikme ölçümünde hem de hangi servislerin birbiriyle haberleştiğini canlandırmakta zorluklar yaşatır. Dolayısıyla, dağıtık ADC’ler dağıtık uygulama performans analitiğini toplamak ve yaymak konusunda daha uygun görev alır. Bahsi geçen uygulama performans analitiğinin güvenlik anlamında da faydaları bulunmaktadır.

Ek olarak, ADC’lerinaçık ve REST API tabanlı arayüzleri bir ADC’yi, bir uygulamanın bir kuruluşun veri merkezinde veya Amazon Web Servisleri gibi bir bulut hizmetinde geliştirilmiş ve test edilmiş oluşundan bağımsız olarak geliştirme/test fazı da dahil olmak üzere bütün geliştirme döngüsünde hazır bulundurma meselesine çözüm getirir. Bu noktada, üretkenlik ve etkinlikte bir artış görürüz çünkü ADC teknolojisine erken geçerek, geçilmediğinde ortaya çıkabilecek birçok uygulama sunma sorununun üstesinden gelinir.

Bunların ötesinde, ADC’nin veri ve kontrol katmanlarını birbirinden ayırması, SDN teknolojisinin temel prensipleriyle uyuşarak bu çözümün veri merkezinde ve özel ve genel buluta yayılmış olan mikroservislerle uyum içerisinde olmasını sağlar. Bu senaryoda, ADC teknolojisi tek bir lokasyona sıkışıp kalmaz, aksine, dağıtık bir mimari ve bir merkezi kontrol birimiyle, dağıtık “mikro ADC”lerin veri katmanları, uygulamaya lokasyondan bağımsız olarak hizmet eder. Merkezi kontrol birimi aynı zamanda bilgi işlem yöneticilerinin operasyon, hayata geçirme ve hata giderme konularında mikroservislerin nerede olduğuna bakmadan uygulama yaşam döngüsü boyunca tutarlı davranış sergilemesine imkan verir.

Ek bir fayda olarak şu söylenebilir; özellikleri arasında çok kullanıcı için “sandboxing” (içeriği bilinmeyen veya tehdit içerebilecek dosya, program vb. veriyi ağa dahil etmeden kontrol etme teknolojisi), rol tabanlı erişim kontrolü, güvenli SSL/TLS sertifikası anahtar yönetimi, merkezi denetim, kayıt tutma ve uyumluluk kontrolü gibi özellikler bulunan bir güvenli uygulama sunma kontrol birimi, uygulamalar dağıtık hale geldikçe ve potansiyel saldırı yüzeyi yayıldıkça güvenlik bakış açısından çok önem kazanır. Ayrıca şu anda x86 sunucuların artmış olan işlem performansı sayesinde mikroservis katları arasında uygulanabilir olan dağıtık ADC mimarisi, operasyonel yük ve karmaşanın getireceği büyük bozulmalara uğramadan

Telif Hakkı © 2016 PMTech BT Danışmanlık Hizmetleri. Her hakkı saklıdır