Dalgalı bir devrilme noktasına ulaştık mı?


Teknolojide, inşa edilenlerin sınırlarını ve nasıl kullanıldığını zorlayan erdemli bir döngü var. Yeni bir teknoloji gelişimi ortaya çıkıyor ve dünyanın dikkatini çekiyor. İnsanlar denemeye başlar ve yeniliğin potansiyelini en üst düzeye çıkarmak için yeni uygulamaları, kullanım durumlarını ve yaklaşımları keşfetmeye başlarlar. Bu kullanım durumları, inovasyonun bir sonraki yinelemesi için talebi artıran önemli bir değer yaratır ve buna karşılık, yeni bir yenilikçi dalgası yeni nesil kullanım durumlarını yaratır ve daha fazla gelişme sağlar.

Konteynerizasyon, esnek, ölçeklenebilir ve taşınabilir uygulamalar oluşturmaya yönelik yeni kullanım durumlarını ve yaklaşımları destekleyen modern, bulut doğal yazılım geliştirmenin temeli haline gelmiştir. Ayrıca, bir sonraki yazılım dağıtım inovasyonunun anahtarlarını da tutar, aynı zamanda tasarım, sürekli olarak güncellenmiş yazılımı güvence altına almak ve oraya ulaşmak için araç olarak hizmet etmek için evrimi gerektirir.

Aşağıda, konteyner devrimimize yol açan bazı yeniliklerden ve bu bükülme noktasına yol açan bulut yerli yazılım geliştirme özelliklerinden bazılarından bahsedeceğim-dünyayı geleneksel Linux dağıtımlarından uzaklaşmaya ve açık kaynak yazılım teslimatına yeni bir yaklaşıma doğru hazırlayan.

Yineleme bizi her yerde yaklaştı

Daha güvenli, performanslı açık kaynak teslimatının yolunu açan birçok yenilik var. Zamanınızın ve kelime sayısımın yararına üç belirli kilometre taşı çağıracağım. Linux konteynırlarından (LXC) Docker’a ve sonuçta Selefi üzerine inşa edilen, sınırlamaları ele alan ve yeni olasılıkların kilidini açan açık konteyner girişimine (OCI) her adım.

LXC, hafif, izole ortamlar oluşturmak için Linux çekirdeğinin yeteneklerini (yani cgroups ve ad alanları) kullanarak zemin hazırladı. Geliştiriciler ilk kez uygulamaları bağımlılıklarıyla paketleyebilir ve farklı sistemler arasında bir dereceye kadar tutarlılık sunabilir. Bununla birlikte, LXC’nin kullanıcılar için karmaşıklığı ve standart bir görüntü dağıtım kataloğu eksikliği yaygın olarak benimsenmeyi engelledi.

Docker, konteyner teknolojisini demokratikleştiren bir oyun değiştirici olarak ortaya çıktı. Konteynerler oluşturma, çalışma ve paylaşma sürecini basitleştirerek onları daha geniş bir kitleye erişebilir hale getirdi. Docker’ın kullanıcı dostu arayüzü ve konteyner görüntüleri için merkezi bir depo olan Docker Hub’ın oluşturulması, canlı bir ekosistem teşvik etti. Bu kullanım kolaylığı hızlı bir şekilde benimsenmeyi körükledi, ancak aynı zamanda satıcı kilitlenmesi ve birlikte çalışabilirlik ihtiyacı ile ilgili endişeleri artırdı.

Parçalanma potansiyelini tanıyan OCI (Açık Konteynerler Girişimi) konteyner formatlarını ve çalışma zamanlarını standartlaştırmak için devreye girdi. Açık özellikleri tanımlayarak OCI, konteynırların farklı platformlarda inşa edilmesini ve çalıştırılabilmesini sağlayarak sağlıklı, rekabetçi bir manzara teşvik etti. OCI’dan doğan Runc ve Containerd gibi projeler, konteyner çalışma zamanları için ortak bir temel sağladı ve daha fazla taşınabilirlik ve birlikte çalışabilirlik sağladı.

OCI standartları ayrıca Kubernetes’in (başka bir satıcı-nötr standart), çok çeşitli altyapı üzerinde çalışabilen ve kuruluşların uygulamalarını farklı bulut sağlayıcılar ve proje içi ortamlar arasında düzenli olarak düzenlemelerine izin verebilen gerçekten taşınabilir bir platform haline gelmesini sağladı. Bu standardizasyon ve ilişkili yenilikler, modern yazılım geliştirmedeki her yerde bulunmalarının yolunu açarak konteynerlerin tam potansiyelinin kilidini açtı.

[Containerized] Yazılım dünyayı yiyor

Linux’taki gelişmeler, konteynırların Docker aracılığıyla hızlı demokratikleştirilmesi ve OCI’nin standardizasyonu, düzenleme ve standartlaştırmayı ileriye doğru iten bulut-yerli uygulama kullanım durumlarının evrimi ile zorunlu olarak ilerledi. Bu bulut-doğal uygulama özellikleri, Linux dağıtımlarına genel amaçlı bir yaklaşımın neden artık geliştirilecek en güvenli, güncellenmiş temellere sahip yazılım geliştiricilerine hizmet etmediğini de vurgulamaktadır:

Mikro hizmet odaklı mimari: Bulut-doğal uygulamalar genellikle küçük, bağımsız hizmetlerin bir koleksiyonu olarak oluşturulur ve her mikro hizmet belirli bir işlevi yerine getirir. Bu mikro hizmetlerin her biri, muazzam miktarda esneklik ve esneklik sağlayan bağımsız olarak oluşturulabilir, dağıtılabilir ve korunabilir. Her mikro hizmet bağımsız olduğundan, yazılım üreticileri bir mikro hizmet çalıştırmak için kapsamlı yazılım paketleri gerektirmez ve yalnızca bir kap içindeki çıplak temellere dayanır.

Kaynak bilincine sahip ve verimli: Bulut-yerli uygulamalar, altyapı yüklerini en aza indirmek için verimli ve kaynak bilinçli olacak şekilde oluşturulmuştur. Bu soyulmuş yaklaşım, konteynerler ve geçici bir dağıtım stratejisi ile doğal olarak iyi hizalanır, yeni kaplar sürekli olarak dağıtılır ve diğer iş yükleri mevcut en son koda güncellenir. Bu, dağıtım yamaları ve geri portlarını beklemek yerine en yeni yazılım paketlerinden yararlanarak güvenlik risklerini azaltır.

Taşınabilirlik: Bulut-doğal uygulamalar, uygulamanın nerede çalıştığına bakılmaksızın tutarlı performans ve güvenilirlik ile taşınabilir olacak şekilde tasarlanmıştır. Çevreyi standartlaştıran kapların bir sonucu olarak, geliştiriciler eski eski “makinemde iyi çalıştı” baş ağrılarının ötesine geçebilirler.

Konteynerizasyon ve bulut anadili uygulamaların yaygın olarak benimsenmesi söz konusu olduğunda, yeni kullanım durumlarını ve nihayetinde yeni yenilikleri yönlendiren inovasyon döngüsü açıktır. Kritik olarak, bu inovasyon ve kullanım vaka taleplerinin bükülme noktası, açık kaynak yazılımında inanılmaz bir değişim oranını artırdı-geleneksel “dondurulmuş” Linux dağıtmalarının güvenliği, performans ve yenilik dezavantajlarının son nesil yazılım teslimatının aşinalık ve algılanan istikrarından daha ağır bastık.

Peki yeni nesil açık kaynaklı yazılım teslimatı neye benzemelidir?

Gir: Chainguard OS

Modern güvenlik, performans ve üretkenlik beklentilerini karşılamak için, yazılım üreticileri, iş için riske yol açan CV’lerin (ve güvenlik ekiplerinden “Fix-IT” listesi) olmadan, kullanım durumları için tasarlanmış en küçük formda en son yazılıma ihtiyaç duyarlar. Bu parametrelerde iyi yapmak, sadece geçmişte yapmaktan daha fazlasını gerektirir. Bunun yerine, yeni nesil açık kaynaklı yazılım teslimatının güvenli, güncellenmiş yazılım kaynağından başlaması gerekir: yukarı akış bakımcılar.

Bu nedenle Chainguard, bu yeni dispoless yaklaşımını oluşturdu, yazılım paketlerini aşağı akış dağıtımlarına değil, güvenlik açıklarını kaldıran ve performans iyileştirmeleri ekleyen yukarı akış kaynaklarına dayanarak sürekli olarak yeniden inşa etti. Biz buna diyoruz Kartaca OS.

Chainguard OS, Chainguard ürünlerinin bugün sunduğu geniş güvenlik, verimlilik ve verimlilik sonuçlarının temeli olarak hizmet vermektedir ve 1.000’den fazla konteyner görüntüsünün hızla büyüyen bir kataloğunu “Chainguard”.

Chainguard OS, bunu mümkün kılmak için dört temel ilkeye bağlıdır:

  • Sürekli Entegrasyon ve Teslimat: Otomasyon yoluyla aerodinamik ve verimli bir geliştirme boru hattı sağlayarak, yukarı akış yazılım paketlerinin sürekli entegrasyonu, test edilmesi ve serbest bırakılmasını vurgular.
  • Nano Güncellemeleri ve Yeniden Oluşturmalar: Kesintisiz artımlı güncellemeleri destekler ve büyük serbest bırakma yükseltmeleri üzerinde yeniden inşa ederek, daha yumuşak geçişler sağlar ve yıkıcı değişiklikleri en aza indirir.
  • Minimal, sertleştirilmiş, değişmez eserler: Sertleştirme önlemleri yoluyla güvenliği artırırken, sepet paketlerini ve ekstraları kullanıcıya isteğe bağlı hale getirerek, yazılım artefaktlarından gereksiz satıcı şişirme eder.
  • Delta Minimasyonu: Sadece gerekli olduğunda ekstra yamaları ve yalnızca gerektiği kadar uzun süre yukarı akıştan yeni bir sürüm kesilinceye kadar sapmaları en aza kadar tutar.

Belki de Chainguard OS ilkelerinin değerini vurgulamanın en iyi yolu, Chainguard görüntülerindeki etkiyi görmektir.

Aşağıdaki ekran görüntüsünde (ve burada görüntülenebilir), bir harici arasında yan yana bir karşılaştırma görebilirsiniz. Ve Chainguard görüntüsü.

Güvenlik açığı sayısındaki çok açık tutarsızlığın yanı sıra, iki konteyner görüntüsü arasındaki boyut farkını incelemeye değer. Chainguard görüntüsü, açık kaynak alternatif görüntünün sadece% 6’sını içerir.

Minimize edilmiş görüntü boyutuyla birlikte, Chainguard görüntüsü en son ScreenGrab’dan sadece bir saat önce güncellendi, günlük olarak gerçekleşen bir şey:

Provenance ve SBOM verilerinin hızlı bir şekilde taranması, artefaktların uçtan uca bütünlüğünü ve değişmezliğini göstermektedir-açık kaynaklı yazılım teslimatına modern bir yaklaşımın sağlayabileceği güvenliği ve şeffaflığı vurgulayan bir tür eksiksiz beslenme etiketi.

Her Chainguard görüntüsü, Chainguard OS’nin sağladığı değerin pratik bir örneği olarak duruyor ve ondan önce gelenlere keskin bir alternatif sunuyor. Belki de en büyük gösterge, Chainguard’ın konteyner görüntülerinin CVES’i ortadan kaldırmaya, tedarik zincirlerini güvence altına almaya, uyumluluğu elde etmeyi ve sürdürmeye ve geliştirici tuvaletini nasıl azaltmaya yardımcı olduğunu ve değerli geliştirici kaynaklarını yeniden tahsis etmelerini sağlayan müşterilerden aldığımız geri bildirimdir.

İnancımız, Chainguard OS’nin ilkeleri ve yaklaşımının çeşitli kullanım durumlarına uygulanabileceği ve kaynaktan yazılım paketlerinin faydalarını açık kaynak ekosistemine daha da fazla genişletebileceğidir.

Bunu yararlı bulduysanız, bu konudaki teknik incelememizi kontrol ettiğinizden emin olun veya Chainguard’ın Distoless yaklaşımı konusunda bir uzmanla konuşmak için ekibimizle iletişime geçin.

Not: Bu makale, Chainguard’da Mühendislik Başkan Yardımcısı Dustin Kirkland tarafından ustaca yazılmış ve katkıda bulunuyor.

Bu makaleyi ilginç mi buldunuz? Bu makale, değerli ortaklarımızdan birinin katkıda bulunan bir parçasıdır. Bizi takip et Twitter ve daha fazla özel içeriği okumak için LinkedIn.





Source link