Kubernetes, çoğu modern bulutta yerel yazılımın temelidir. Azure ve diğer hiper ölçekli bulutlar için önemli olan olgun bir teknoloji olmasına rağmen, Kubernetes kesinlikle yerinde durmuyor. Düzenli güncellemeler özellikler eklerken, büyüyen bir ekosistem, temel platformla bütünleşen araçlar ve teknolojiler oluşturur. Azure Kubernetes Service (AKS) gibi yönetilen Kubernetes platformlarının, bulutun sunduğu hızlı geliştirme hızında bile yeni teknolojileri diğer bulut hizmetlerinden daha hızlı benimsemesi şaşırtıcı değildir.

AKS’de yapılan son güncellemeler, HTTP ve HTTPS proxy’leri için önizleme desteği ekleyerek ve WebAssembly System Interface düğüm havuzlarıyla Krustlet projesini ana akıma daha fazla getirerek uygulama güvenliğini iyileştirdi. Her ikisi de şu anda, prototipler ve deneyler için en iyi şekilde düşünülen, isteğe bağlı önizlemeler olarak mevcuttur. Ancak bu, önümüzdeki birkaç ay içinde hizmet düzeyi anlaşma desteğiyle (muhtemelen WebAssembly için daha uzun olsa da) üretim için tasarlandıkları anlamına gelir ve gereksinimlerinizi karşılayıp karşılamadıklarını görmek için onlara bir göz atmaya değer.

Kubernetes’e proxy desteği ekleme

Kubernetes kümelerini proxy’lerin arkasında çalıştırmanıza izin vererek onları yalıtılmış ağlarda çalıştırmayı mümkün kıldığından, HTTP ve HTTPS proxy’leri desteği yakın vadede en kullanışlı özellik olacaktır. Bu, hassas verilerle çalışırken veya şirket içi Kubernetes uygulamalarını Azure’a genişletmek için bir hibrit bulut kullanırken hizmetlerinizi korumak için bir Azure VNet kullanmak istiyorsanız yararlıdır. Azure Stack hiper birleşik altyapı (HCI) aracılığıyla kendi altyapınızda Azure Arc’ta AKS kullanıyorsanız veya ağ ucunda yönetilen bir Azure Stack gereci kullanıyorsanız, bu da olası bir yaklaşımdır.

AKS’nin HTTP proxy desteği, gerekli ağ hizmetlerini ve trafiği özel ağınıza getirmenize, bağlantıları proxy’ler aracılığıyla zincirlemenize olanak tanır. Ağ oluşturma yeteneklerinin yanı sıra, yalıtılmış düğümlerinizin ve kümelerinizin hala tam bir güven zincirinin parçası olmasını sağlamak için sertifikaları yönetmeye yönelik araçlar içerir.

Başlamak yeterince basit. Modern uygulama geliştirme en iyi uygulamalarından bir ipucu alan AKS’nin proxy desteği, bir özellik bayrağının arkasında tutulur. Azure CLI’yi açın ve feature register Azure’ın Kapsayıcı Hizmetinde HTTPProxyConfigService’i kaydetme komutu. Bu, etkinleştirmek için biraz zaman alacaktır, bunu kullanarak kontrol edebilirsiniz. feature list emretmek. Etkinleştirildiğinde, yeni özelliği kullanmak için Container Service’i yeniden kaydedin.

Özellik etkinleştirildikten sonra, Kubernetes kümelerinizde kullanmaya başlayabilirsiniz. Ancak, şu anda mevcut kümelerde etkinleştiremezsiniz; küme oluşturma sırasında proxy desteği eklenmelidir. Burada kullanmanız gerekecek aks create komut, bir JSON veya YAML yapılandırma dosyası ile. Bu, proxy hizmetinden hariç tutulan etki alanlarının bir listesiyle birlikte hem HTTP hem de HTTPS proxy’lerinin URL’lerini içerir. Son olarak, bir sertifika yetkilisi kullanıyorsanız, PEM biçiminde base64 ile kodlanmış konu alternatif adları sertifikası eklemeniz gerekir. Aynı proxy ayrıntıları bir ARM şablonunda kullanılabilir.

Yapılandırıldıktan sonra, bir kümenin proxy ayarları, tamamen yeni bir küme oluşturulmadan değiştirilemez. Bir yapılandırmanın değiştirilebilecek tek parçası, rollover’ı desteklemek için sertifika yetkilisi sertifikasıdır (özellikle Let’s Encrypt gibi bir hizmetten kısa ömürlü sertifikalar kullanıyorsanız).

Proxy’lerin kurulumu ve kullanımı kolay olsa da, AKS desteğinin çok erken olduğu açıktır. Birincisi, bazı önemli senaryolar desteklenmiyor. Şu anda proxy desteği yalnızca, bir kümedeki tüm düğüm havuzlarının aynı proxy yapılandırmasına sahip olduğu ve Sanal Makine Kullanılabilirlik Kümeleri kullanmadığınız Linux tabanlı kümeler içindir. Ancak, bunlar nispeten küçük sorunlardır ve geçici çözümler mümkündür.

AKS’de Krustlet Kullanımı

Diğer büyük yeni sürüm, çalışan kapsayıcılara alternatif olarak WebAssembly tarafından desteklenen düğümler için önizleme desteğidir. Bu yaklaşım, özellikle nispeten basit hizmetler çalıştıran kaynak kısıtlı ortamlar söz konusu olduğunda ilgi çekicidir. Bir kapsayıcı küçük görünebilir, ancak bir uygulama kullanıcı alanını barındırmak için önemli destek kaynakları gerektirir. WebAssembly (WASM), özellikle tarayıcısız WebAssembly Standard Interface (WASI) ortamı, desteklenen bir JavaScript ortamının ötesinde minimum sistem kaynağı gerektirir ve tüm kodunuzu otomatik olarak korumalı alana alır.

Bir süre önce, Microsoft’un Deis Labs’inin, Kubernetes düğümlerinde WASI kullanmanın bir yolu olan Krustlets ile yaptığı deneyler hakkında yazmıştım. Kubernetes’i küçük uç cihazlarda çalıştırmanın bir yolunu sunan, ağır konteynırlara ilgi çekici bir alternatifti. Krustlet’leri WASM/WASI düğüm havuzları olarak AKS’ye getirmek, onu hem Azure bulutunda hem de uç donanımdaki Azure Arc AKS örneklerinde genişletmenin ilginç bir yoludur.

WASM düğüm havuzlarını çalıştırmak, diğer AKS önizlemeleri kadar olgun olmadığı için bazı ön koşullar gerektirir. Erken çıkarmak, Microsoft için ilginç bir adımdır. KubeCon Kuzey Amerika 2021’deki Bulut Yerel WASM Günü’nün popülaritesinin gösterdiği gibi, WASM ve Kubernetes’e önemli bir ilgi var, bu nedenle Azure’un burada eğrinin önüne geçtiğini görmek güzel, geliştiricilerin WebAssembly’ı oluşturması ve test etmesi için ihtiyaç duyacağı araçları kullanıma sunuyor ölçekte dağıtılmış uygulamalar. Deis Labs’ın WebAssembly Gateway Interface (WAGI) üzerindeki çalışması ve geliştiricilerin Krustlet tabanlı mikro hizmetler tasarlamasına ve oluşturmasına yardımcı olacak Hippo geliştirme ortamı gibi araçlarla da ilginç bir geçiş var.

HTTPS proxy araçlarıyla çalışmak gibi, Azure CLI aracılığıyla ContainerService’de WasmNodePoolPreview özellik bayrağını etkinleştirmeniz gerekir. Etkinleştirildiğinde, tamamen kayıtlı olduğundan emin olmak için kapsayıcı hizmetini yenileyin. Daha sonra AKS Azure CLI uzantısının bir önizleme sürümünü yüklemeniz gerekecek. Zaten kullanıyorsanız, güncel olduğundan emin olun.

Artık bir AKS kümesine bir WebAssembly düğüm havuzu ekleyebilirsiniz. Bunun Linux üzerinde çalışıyor olması ve kapsayıcı tabanlı düğümlerden ayrı olması gerekir. Kurulduktan ve çalıştırıldıktan sonra, WebAssembly iş yüklerini düğüm havuzunuza dağıtabilirsiniz. AKS’nin kapsayıcıları WebAssembly düğümlerinizde programlamaması ve aynı zamanda WebAssembly bölmelerinizin standart kapsayıcı bölmelerine yüklenmesini engellememesi için, yalnızca wasm32-wagi bölmelerini çalıştıracak şekilde ayarlandığından emin olmanız gerekir. Bu, gelecekteki sürümlerde otomasyona ihtiyaç duyacak bir alandır, bu nedenle prototiplerinizde iki teknolojiyi ayrı tutmaya dikkat edin.

Microsoft, test uygulamanızı yapılandırmak için önceden yapılandırılmış bir YAML dosyasıyla birlikte kubectl kullanarak yükleyebileceğiniz bir dizi örnek WebAssembly modülü sağlar. Bu, gelecekteki uygulamalarda size yardımcı olabilir ve size kendi kodunuzla çalışacak şekilde özelleştirilebilen bir yapı sunar. Son olarak, harici bir IP adresi vermek üzere Nginx yük dengeleyiciyi yüklemek için bir Helm grafiği kullanarak WebAssembly uygulamanızı test etmek için bir ters proxy ayarlayabilirsiniz.

Microsoft, WebAssembly desteğini AKS’ye eklemeye başladığından, bu, gelecekteki sürümlerde otomatik hale getirilecek başka bir adımdır. Yine de deneysel desteğin önizleme aşamasında geldiğini görmek güzel. WASI ve WAGI hala çok yeni teknolojiler, prime-time kullanıma hazır değil ve Microsoft, Kubernetes’te onlar için uzun vadeli bir gelecek görse de, bunları en az bir yıl daha üretimde kullanmanız pek olası değil.

Bu önizlemeler, sizin için neler yapabileceklerini görmenin zamanının geldiğini gösteriyor. WebAssembly düğüm havuzları keşfedilmeye değerdir ve WAGI tabanlı mikro hizmetleri VNet’ler ve özel bulutlar dışında ağ geçidi olarak kullanmanın bir yolu olarak HTTPS proxy’leri desteğiyle bir sinerji vardır. Azure Arc’ın AKS bölümüyle, yönetim katmanı olarak Azure ve Azure CLI’yi kullanmaya devam ederken bu hizmetleri Azure bulutu dışındaki cihazlara sunmak için çok fazla kapsam vardır.

Microsoft, hem kendi hizmetleri hem de kodunuzu desteklemek için Kubernetes’e büyük bir taahhütte bulunmuştur. Konteynerlere olan bağımlılığını Krustlets aracılığıyla kaldırmak, gerektiğinde daha az kaynak kullanırken kodunuzun yeni örneklerini başlatmayı kolaylaştıracaktır. Sonuç, daha hızlı, daha hafif hizmetler ve daha düşük işlem maliyetleri olmalıdır. Bir gecede olmayacak, ancak şimdilik hazırlanmanız gereken bir gelişme.

Telif Hakkı © 2021 IDG Communications, Inc.



#Azure #AKSyi #yeni #Kubernetes #teknolojileriyle #güncelliyor