Aracılığıyla paylaş


Varlıkları yönetmek ve yinelenenleri önlemek için envanterleri kullanma

Kuruluşunuz büyüdükçe izlemeniz gereken malzeme miktarı da artar. Ekiplerden biri diğerinin projesini bilmediğinden kuruluşlar genellikle iç çabalarını yineler. İnsanlar ekipler arasında hareket ettikçe, yeni kişiler şirkete katıldı ve diğerleri ayrıldıkçe projeler yalnız bırakılabilir. Envanterler bu sorunların çözülmesine yardımcı olur ve platform mühendisliğinin önemli bir parçasıdır.

Envanter, kuruluşun teknik varlıklarını izlemek, yönetmek ve düzenlemek için kullanılan bir araçtır. Bu varlıklar kod, API'ler, kapsayıcılar, sanal makineler (VM), ekip izinleri ve daha fazlasını içerir.

Varlıkların takip edilmemesi, mevcut olanları kolayca keşfedemediğiniz için teknik yayılmaya ve israfa yol açar. Mevcut olan şeyin izini kaybetmek yaygın bir sınamadır.

Çalışan bir ton kapsayıcımız veya [VM] örneğimiz var. Eski VM'lerimizi silebilir miyiz? Kimse bilmiyor. Ne yapabileceğimiz ve yaşam döngüsünün ne olduğu konusunda bize bilgi veren sahibi veya ekibin kim olduğunu bilmemiz için eski öğeleri temizlemenin ve uygun etiketleri kullanmanın bir yolunu bulmalıyız.... Ne olacağından emin olmadığımız için belirli bir VM'nin kapatılıp kapatılamadığından emin değiliz. - Martin, DevOps Mühendisi, Büyük Lojistik Şirketi

Varlıkları izleme

İç müşterilerin anlaşılır bir şekilde görselleştirebileceği ekosisteminizde oluşturduğunuz veya oluşturduğunuz tüm "öğeleri" izlemek için bir envantere ihtiyacınız vardır.

Envanter güvenliği artırabilir, yeniden kullanımı teşvik edebilir ve genellikle bulmayı kolaylaştırabilir. Farklı varlık türlerini izlemek için farklı araçlar mevcuttur. Bu araçların her biri, atıkları yönetmenize, izlemenize ve temizlemenize yardımcı olacak bir envanter sağlar.

Kullanılabilir izleme araçları şunlardır:

Envanterlerinizin görünürlüğüne karar verirken kuruluşunuz için en iyi yaklaşımı göz önünde bulundurun. Bazı kuruluşlar tüm geliştiricilerin yazılım varlıklarını görmesine izin verir, ancak açık mutfağa benzer şekilde yalnızca birkaçı bunları değiştirebilir. Diğerleri, özellikle de düzenlemeye tabi sektörlerde erişimi daha sıkı bir şekilde kısıtlar, hatta duyarlılık nedeniyle proje adlarıyla görünürlüğü bile sınırlar.

Bulunabilirliği, idareyi ve yeniden kullanımı geliştirme

Sahip olduğunuz şeyleri izlemenize yardımcı olacak bir veya daha fazla envanter sisteminin olması, platform mühendisliği uygulamaları ve teknik yayılmayı önleme açısından kritik öneme sahiptir. Başlangıçta düz envanter listesi kümesine sahip olmak yeterli olabilir. Ancak, birden çok envanterde farklı varlıklar arasında ilişkiler ekleyerek bulunabilirliği daha da geliştirebilirsiniz. Gereken görünürlük düzeyinden bağımsız olarak, merkezi bir toplama noktasına sahip olmak ekiplerin kendilerine sağlanan tüm varlıkları hızla aramasına ve keşfetmesine olanak tanır. Bu, yeniden kullanımı teşvik eder, yedekliliği azaltır ve idare için tutarlı bir yaklaşım oluşturur.

Bir API tanımı ile arabirimi uygulayan dağıtılan uygulama kodu arasındaki ilişkiyi göz önünde bulundurun. Bu kod bir depoda depolanır ve bir ekip tarafından yönetilir ve kullanımıyla ilgili belgeler sağlar. Geliştirme, test, üretim ve hatta geçici korumalı alan ortamları oluşturulur. Buluta özel senaryolarda ortamlar paylaşılan bir Kubernetes kümesine dağıtılabilir. API'yi oluşturan geliştirme ekibinin ve bu api'nin tüm iç tüketicilerinin bu öğelerin her biri hakkında bilgi alabilmesi gerekir, ancak kaynakların ilişkisi belirgin değildir.

Başlamak için, her bir şeyin birbiriyle ilişkisini izlemeye yardımcı olmak için wiki sayfası kadar basit bir şey kullanabilirsiniz. Ancak belgeler hızla eskir ve hem bulma hem de ayrıştırma zor olabilir. İdeal olarak, envanterinizde bu ilişkiler arasında geçiş yapmak için kullanıcı arabirimlerine güç veren bir ilişki grafiğine sahip bir sisteminiz olması gerekir. Bulunabilirliği gerçekten geliştirmek için birden çok envanter veya grafik türünde depolanan öğeleri birlikte ilişkilendirebilmeniz gerekir. Envanterleri doğrudan kullanmanız gerekmeyebilir, ancak bunu bir API katalog sistemindeki bilgilerle ilişkilendirmek isteyebilirsiniz.

Dijital mağaza benzetimini kullanmak için, kataloğunuzdaki öğeleri (şablonları) sonuçta elde edilen envanter içeriğiyle ilişkilendirmek de yararlı olabilir. Örneğin, şablonlarınızdan birinin güvenli olmayan bir yapılandırma oluşturduğunu fark ederseniz, bunları düzeltmek için şablonla oluşturulan tüm kaynakları hızla bulmanız gerekir. Doğru başlangıç uygulama şablonları, bu katalogdaki diğer katalog öğesi türlerine (IaC şablonları gibi) bağlı olan başlangıç seti paketleridir. Bu ilişkilendirmelerin izlenmesi, henüz altyapı sağlanmamış olsa bile hatalı bir IaC şablonuna başvuran herhangi bir uygulamayı proaktif olarak bulmanıza olanak sağlar.

Bu kavramsal, üst düzey geliştirici platformu grafiğinin basitleştirilmiş bir varyasyonu, günümüzde birkaç araç setinde ve üründe bulunabilir, ancak buna verilen ad değişiklik gösterir. Örneğin, açık kaynak portal araç seti Backstage.io buna yazılım kataloğu adını verirken diğer ürünler farklı terimler kullanır. Ancak bu ürün ve araç setlerinin çoğu, daha geniş özellik kümelerini kullandığınızı varsayar ve envanterlerinizin içeriğinin bunların içinde çoğaltılması gerekir. Bu yineleme, katalog veritabanının içeriğinin kullanıcıya özgü olmadığı, eski hale gelebileceği ve gerçek kaynak sistemin kullanıcı yetkilendirme mekanizmaları tarafından denetlenmediği anlamına gelir. Ancak açık mutfak yaklaşımını kullanıyorsanız bu, kuruluşunuz için uygun olabilir.