Semaphore UI ve Rundeck: Ansible ve runbook otomasyonu

Denis GukovSemaphore UI Kurucusu ve Teknoloji Direktörü
17 dk okuma

Rundeck ve Semaphore UI tekrarlanabilir işlemleri ekibin başlatabildiği, zamanlayabildiği ve inceleyebildiği job'lara dönüştürür. Job'ların nasıl oluşturulduğu, host'ların nasıl temsil edildiği ve erişimin nasıl devredildiği açısından ayrılırlar. Bu karşılaştırma Rundeck 6.2.1 ve Semaphore UI 2.20.0 sürümlerini kapsar, ticari yetenekler ayrıca belirtilir.

Bu makaleyi yapay zekâyla tartış

Genel bakış

Bir yeniden başlatma, veritabanı yedeklemesi ve yeni test ortamı oluşturma işlemi tek mühendisin dizüstü bilgisayarında kaldığında paylaşılması zorlaşır. Ekip arkadaşları doğru hedefler, kimlik bilgileri ve girdilerle tekrarlanabilir işlem ve ardından inceleyebilecekleri sonuç ister. Rundeck ve Semaphore UI işi hazırlamak için farklı modeller kullanarak bu ortak alanı sağlar.

Rundeck operasyonel runbook'ları komutlardan, eklenti eylemlerinden ve diğer job referanslarından oluşturur. Makineler operatörlerin filtrelerle seçebildiği ve yöneticilerin erişim kontrolü politikalarıyla yönetebildiği node'lar olarak temsil edilir. Yerleşik Ansible entegrasyonu ekiplerin playbook ve envanterleri bu modele taşımasına da izin verir. PagerDuty Runbook Automation SaaS ve kendi altyapısında barındırılan seçeneklerle ticari yetenekler ekler.

Semaphore UI Ansible, Terraform/OpenTofu, Terragrunt, Bash, PowerShell ve Python için yeniden kullanılabilir şablonlarla başlar. Proje bunların depolarını, envanterlerini, kimlik bilgilerini ve değişkenlerini bir araya getirir. Mühendis dağıtım veya bakım işlemi hazırlayabilir, ekip arkadaşlarına başlatma formu verebilir ve aynı şablonu tekrarlanan işler için zamanlayabilir. Kaynak sağlama, yapılandırma ve kontrollerin sırayla çalışması gerektiğinde iş akışları bu işlemleri bağlar.

Tek projede farklı otomasyon araçları için Semaphore UI görev şablonları.
Semaphore UI. Hazırlanmış Ansible, kod olarak altyapı ve komut satırı işlemleri projenin görev listesini paylaşır.
Tek tek node'lardaki yürütme durumunu gösteren Rundeck job sonuçları.
Rundeck. Job, her node için sonuçları gösterir. Resmî dokümantasyon örneği. Kaynak

Kısa karşılaştırma

İki ürün de elle başlatmayı ve tekrarlanan job'ları yönetir. Temel farklar mevcut otomasyonu paylaşılan işleme dönüştürme, hedef host'ları temsil etme ve kod olarak altyapıyı yönetme biçimleridir.

Rundeck ve Semaphore UI: temel özellikler
Ölçütler Semaphore UI Rundeck
Otomasyon araçları Ansible, Terraform/OpenTofu, Terragrunt, Bash, PowerShell, Python Komutlar, script'ler, yerleşik Ansible entegrasyonu ve eklentiler
Kurulum İkili dosya, yerel paketler, Docker, Kubernetes Yerel paketler, çalıştırılabilir WAR, Docker, Java çalışma zamanı
Barındırma Kendi altyapısında barındırma Kendi altyapısında Community, ticari SaaS veya kendi altyapısında ticari sürüm
Yürütme Sunucu veya runner'lar, isteğe bağlı görev konteynerleri Sunucu ve uzak node'lar, ticari Enterprise Runners
Job yapılandırması Araca özel şablonlar, formlar ve değişken grupları Çok adımlı job'lar, seçenekler, node filtreleri ve eklentiler
Envanter yönetimi Statik ve Git envanterleri, Ansible keşif eklentileri Node kayıtları, kaynak modeli kaynakları ve node filtreleri
Kimlik bilgileri Yeniden kullanılabilir anahtar deposu girdileri, harici vault entegrasyonları Yeniden kullanılabilir Key Storage girdileri, harici depolama eklentileri
İş akışları Şablonlar arasında görsel bağlantılar Adımlar, job referansları, iş akışı stratejileri ve hata işleyicileri
Erişim denetimi Proje rolleri, Enterprise özel rolleri ve şablon izinleri Projeler, job'lar, node'lar ve anahtar deposu için ACL politikaları
Lisans MIT lisanslı Community, ticari Pro ve Enterprise Apache 2.0 lisanslı Community, ticari Runbook Automation

Mevcut Ansible playbook'ları olan ekipte Semaphore UI playbook'u, envanteri, kimlik bilgilerini ve başlatma girdilerini yeniden kullanılabilir proje kaynaklarıyla desteklenen araca özel şablonda tutar. Aynı proje isteğe bağlı Pro state backend ile Terraform/OpenTofu kaynak sağlama ve sonraki host bakımını barındırabilir. Rundeck de yerleşik entegrasyonuyla bütün playbook'ları ve Ansible envanterini yeniden kullanabilir. Node kayıtları, filtreleri ve ACL'leri özellikle makine seçimi ve node düzeyinde erişim kontrolü operatörün günlük işinin parçası olduğunda yararlıdır.

Özellik karşılaştırması

Operasyon hizmeti tüm süreci desteklemelidir: job'ı hazırlamak, hedef ortama ulaşmak, girdileri toplamak ve sonucu anlaşılır kılmak. Bu adımlar çalıştırılabilen araç listesinden daha fazlasını ortaya koyar.

Kurulum ve yapılandırma

Otomasyon hizmetiyle komutlarını çalıştıran makineler aynı sistem olmak zorunda değildir. Dağıtım seçimleri hem ilk kurulumu hem özel ortamlara erişimi etkiler.

DestekleniyorKısmen destekleniyorDesteklenmiyor
Kurulum ve yapılandırma: Rundeck ve Semaphore UI
Ölçütler Semaphore UI Rundeck
Kendi altyapısında dağıtım Evet Evet
Bağımsız yerel ikili dosya Evet HayırJava çalışma zamanı gerekir
Yerel Linux paketleri Evet Evet
Docker dağıtımı Evet Evet
Yerel Windows sunucusu Evet EvetJava çalışma zamanı gerekir
Yüksek erişilebilirlik EvetEnterprise EvetRunbook Automation

Rundeck Kubernetes olmadan geleneksel sunucuda, Java çalışma zamanıyla yerel paket, çalıştırılabilir WAR veya Docker olarak çalışır. İlk kurulum için H2 içerir. H2 üretimde desteklenmediğinden ekipler üretim kurulumu için desteklenen harici veritabanı yapılandırır. Ticari Runbook Automation yönetilen hizmet olarak da mevcuttur.

Semaphore UI bağımsız ikili dosya, yerel paketler ve Docker'ın yanında Kubernetes de sunar. Operasyon ekibi JVM eklemeden hizmeti mevcut host'a kurabilir ve otomasyon depolarını bağlayabilir. Bu, birkaç tekrarlanan işlem için ortak arayüz gerektiğinde de daha büyük ekip otomasyonunu kendi altyapısında barındırmak istediğinde de yararlıdır. İki ürünün sunucusu da Windows'ta çalışabilir, Rundeck Java gerektirir. Ansible yürütmesi Linux, WSL, Linux runner veya konteyner gibi desteklenen kontrol ortamına ihtiyaç duyar. Yerel Windows web sunucusu Windows'u yerel Ansible kontrol düğümü yapmaz.

Otomasyon araçları

Ekipler çoğu zaman yapılandırma yönetimini kaynak sağlama ve küçük bakım programlarıyla birleştirir. Her iki platform da bu araçları çalıştırabilir, ancak gereken job yapılandırması miktarı farklıdır.

DestekleniyorKısmen destekleniyorDesteklenmiyor
Otomasyon araçları: Rundeck ve Semaphore UI
Ölçütler Semaphore UI Rundeck
Ansible playbook dosyaları EvetGörev şablonu EvetYerleşik Ansible entegrasyonu
Terraform/OpenTofu EvetGörev şablonu EvetKomut veya script adımı
Terragrunt EvetGörev şablonu EvetKomut veya script adımı
Bash EvetGörev şablonu EvetKomut veya script adımı
PowerShell EvetGörev şablonu EvetKomut veya script adımı
Python EvetGörev şablonu EvetKomut veya script adımı
Yerleşik Terraform state backend EvetProHTTP backend ve state geçmişi HayırTerraform için yapılandırılan backend kullanılır

Rundeck'in yerleşik Ansible entegrasyonu playbook ve modül çalıştırır, Ansible envanterini içe aktarabilir. Dolayısıyla ekipler mevcut playbook'u tek tek komut adımlarına yeniden yazmadan koruyabilir. Komut ve script adımları da gerekli yorumlayıcı mevcutsa Bash, PowerShell ve Python çalıştırır.

Semaphore UI desteklenen her araca kendi şablon ayarlarını verir. Ansible işlemi playbook ve envanter seçer. Terraform/OpenTofu ve Terragrunt şablonları altyapı yapılandırmasını ve workspace'i sunar, Bash, PowerShell ve Python şablonları ise ilgili dosyaları doğrudan çalıştırır. Böylece Ansible odaklı ekibin kaynak sağlama ve yardımcı araçları host operasyonlarıyla aynı arayüzde kalır.

Test ortamı isteği faydayı gösterir. Terraform/OpenTofu altyapıyı oluşturur, Ansible host'ları yapılandırır ve Python uygulama endpoint'ini kontrol edebilir. Her Semaphore UI şablonu araca özel ayarlarını korur, ortak depo, envanter ve değişken grubu nesnelerine başvurur. Rundeck aynı işlemi iş akışı adımları, eklentiler ve job referanslarıyla temsil eder. Fark otomasyonun hangi dili kullanması gerektiği değil, ekibin yapılandırmayı nasıl hazırlayıp yeniden kullandığıdır.

Paylaşılan Terraform/OpenTofu state de gereken ekipler için Semaphore UI Pro workspace'ler, sürüm geçmişi ve arayüz yönetimi içeren HTTP backend sunar. Mevcut harici backend kullanılmaya devam edilebilir. Rundeck Terraform'u altyapı kodunda yapılandırılmış backend'e karşı çalıştırabilir. Terraform provider'ı Rundeck yapılandırmasını yönetir, bu altyapı job'larının state'ini saklamaktan farklı bir amaçtır.

Kaydedilmiş Terraform planının tam halini onaylayıp uygulaması gereken süreçte açık plan depolama ve yeniden kullanım yapılandırılmalıdır. Semaphore UI varsayılan olarak ayrı plan ve apply çalıştırır, varsayılan komutları üzerine yazılmadıkça -lock=false kullanır. State backend sağlamak bu görev komutu ayarlarını değiştirmez.

Hazırlık ve zamanlama

Yeniden kullanılabilir işlem kayıtlı tanım, ortak yapılandırma ve başlatma formu gerektirir. Zamanlanmış başlatma operatörden komutu yeniden oluşturmasını istemek yerine bu hazırlığı kullanmalıdır.

DestekleniyorKısmen destekleniyorDesteklenmiyor
Hazırlık ve zamanlama: Rundeck ve Semaphore UI
Ölçütler Semaphore UI Rundeck
Otomasyon deposu ayarları EvetŞablonların paylaştığı depo nesneleri KısmenJob tanımları için SCM, kod için Git adımları
Job'lar arasında paylaşılan yapılandırma EvetAdlandırılmış değişken grupları EvetProje genel değişkenleri ve job seçenekleri
Başlatma formları Evet Evet
Tekrarlanan zamanlamalar Evet Evet

Rundeck kayıtlı işleme job der. İş akışı adımlarını zorunlu değerler, doğrulama ve harici URL'den alınan seçenekler dahil başlatma girdilerini toplayan seçeneklerle birleştirir. Runbook'un kendisi bir node eylemleri ve eklenti adımları dizisi tanımladığında bu model iyi çalışır.

Semaphore UI'da görev şablonu tek otomasyon işlemi için yeniden kullanılabilir yapılandırmadır. Ansible ile hizmet yeniden başlatmak için mühendis depoyu, playbook'u, envanteri ve kimlik bilgilerini seçer, ardından ortak yapılandırma için değişken grubu bağlar. Form, ekip arkadaşından hizmet adı veya değişiklik referansı isteyebilir. Sonraki başlatma bu hazırlığı yeniden kullanır, böylece kişi komut satırını yeniden kurmak yerine işlemle çalışır.

Depo nesneleri de Git URL'sini, varsayılan dalı ve erişim kimlik bilgisini birden fazla şablon için tek yerde tutar. Ekip playbook deposunu bir kez bağlayıp yedekleme, dağıtım ve sertifika yenilemede yeniden kullanabilir. Rundeck'in Git SCM entegrasyonu job tanımlarını sürümler ve içe aktarır. Job'ın kullandığı otomasyon kodunu almak ayrı bir adım veya entegrasyondur.

Adlandırılmış değişken grupları Semaphore UI şablonlarına yeniden kullanılabilir ortam yapılandırması kümeleri verir. Bir bölgenin endpoint ve alan adı ayarları birlikte yönetilip bunları kullanan işlemlere bağlanabilir. Rundeck de değerleri proje genel değişkenleriyle paylaşır ve çalıştırmaya özel değerleri job seçenekleriyle toplar. Semaphore UI gruplamayı ve atamayı şablon yapılandırmasında görünür tutar.

Aynı model tekrarlanan işleri de kapsar. Veritabanı yedekleme playbook'u yapılandırılmış girdileriyle cron zamanlamasından çalışabilir, operatör de bakım penceresinden önce elle başlatabilir. Sertifika kontrolleri, yenilemeler ve yama uygulama aynı envantere karşı ayrı şablonlar kullanabilir. Her iki platform tekrarlanan zamanlamaları desteklediğinden fark, kayıtlı job'ın ve çevresindeki yapılandırmanın ekibin mevcut otomasyonuna nasıl uyduğudur.

Envanter

DestekleniyorKısmen destekleniyorDesteklenmiyor
Envanter: Rundeck ve Semaphore UI
Ölçütler Semaphore UI Rundeck
Ansible envanterini yeniden kullanma EvetEnvanter tanımlarını doğrudan kullanma EvetAnsible envanterini kullanma ve node'ları içe aktarma
Dinamik host keşfi EvetAnsible envanter eklentileri EvetKaynak modeli kaynakları
Hedef host seçimi EvetEnvanter grupları ve Ansible host limiti EvetNode filtreleri, etiketleri ve öznitelikleri

Rundeck makineleri kaynak modeli kaynakları ve eklentilerle doldurulan node'lar olarak temsil eder. Operatörler job başlatırken bu node'ları öznitelik ve etiketlerle filtreleyebilir. Node ACL'leriyle birlikte bu model, merkezi yönetilen altyapıdan yetkili makineleri seçen destek veya operasyon ekibi için yararlıdır.

Semaphore UI Ansible envanter tanımlarını doğrudan yeniden kullanır. Şablon INI/YAML tanımı, Git'ten envanter veya Ansible keşif eklentisi kullanabilir. Git veya harici sistem ortamı zaten tanımlıyorsa ekip bu kaynağı koruyabilir ve envanteri hazırlanmış işlemler arasında yeniden kullanabilir. Rundeck'in Ansible entegrasyonu da envanteri kendi node modeline aktarabilir.

Semaphore UI projesi içindeki Ansible envanter yapılandırması.
Semaphore UI. Ansible envanteri, hazırlanmış görev şablonlarının yeniden kullanabildiği paylaşılan proje kaynağıdır.
Ansible envanterinden içe aktarılmış host'ları, etiketlerini ve hedef adreslerini gösteren Rundeck Nodes ekranı.
Rundeck. Resmî entegrasyon örneğinde Ansible envanterinden içe aktarılan node'lar. Resmî dokümantasyon

Bu, envanteri günlük işin yeniden kullanılabilir parçası yapar. Aynı üretim envanteri, her biri kendi şablon ve girdilerine sahip sertifika kontrolü, dağıtım ve yedeklemeyi destekleyebilir. Altyapı değiştiğinde mühendisler envanter kaynağını değiştirir, ekip arkadaşları hazırlanmış işlemleri kullanmaya devam eder. Operatörlerin tek tek node'ları kendilerinin taraması ve filtrelemesi gerektiğinde Rundeck'in host seçim arayüzü anlamlı bir fark olmaya devam eder.

Gizli bilgiler

DestekleniyorKısmen destekleniyorDesteklenmiyor
Gizli bilgiler: Rundeck ve Semaphore UI
Ölçütler Semaphore UI Rundeck
Saklanan kimlik bilgileri Evet Evet
HashiCorp Vault EvetPro EvetKey Storage eklentisi
AWS Secrets Manager EvetEnterprise EvetCommercialKey Storage eklentisi
Azure Key Vault EvetEnterprise EvetCommercialKey Storage eklentisi
OpenBao EvetPro KısmenÖzel alma adımı
Devolutions Server EvetEnterprise KısmenÖzel API veya script adımı
CyberArk EvetEnterprisePVWA REST entegrasyonu EvetCommercialKey Storage eklentisi

Hazırlanmış işlem kimlik bilgilerini tekrarlanabilir biçimde elde etmelidir. Rundeck Key Storage ve Semaphore UI anahtar deposu, mühendisin kimlik bilgisi referanslarını bir kez yapılandırmasını sağlar. Böylece yedekleme veya dağıtım başlatan kişinin her çalıştırmada SSH anahtarı veya parola yapıştırması gerekmez. Semaphore UI'da saklanan anahtarlar projenin depoları ve Ansible işlemleri arasında da yeniden kullanılabilir.

Kuruluş merkezi secret deposu kullanıyorsa otomasyon hizmeti değerleri buradan alabilir. Rundeck Community, ticari Runbook Automation ile paketlenen Key Storage eklentisi üzerinden HashiCorp Vault'u destekler. Semaphore UI Pro HashiCorp Vault ve OpenBao ile entegre olur. Enterprise AWS Secrets Manager, Azure Key Vault, Devolutions Server ve CyberArk ekler. Fayda, hazırlanmış job'ları otomasyon arayüzünden paylaşırken mevcut secret yönetim sürecini korumaktır.

Ticari Rundeck Key Storage eklentileri AWS Secrets Manager, Azure Key Vault ve CyberArk'a da bağlanır. Semaphore UI Enterprise bunları Devolutions Server ile birlikte sunar. Dolayısıyla mevcut secret hizmeti iki üründe de yetkili kaynak olarak kalabilir. Semaphore UI anahtar deposu ve şablon referansları bu kimlik bilgilerini Ansible envanteri ve araç yapılandırmasının yanında tutar, Rundeck ise depolama yollarını job seçeneklerine, eklentilere ve node yürütmesine bağlar.

OpenBao veya Devolutions Server için Rundeck job'ı secret hizmetinin API'sini kullanan özel alma adımı içerebilir. Bu sorguyu ve kimlik doğrulamasını ekip sağlar ve sürdürür. Bu, adlandırılmış Key Storage eklentisinden veya Semaphore UI'ın yapılandırılmış depolama bağlantısından farklıdır. Mevcut secret hizmeti gereksinimse değerlendirmeye dahil edilmelidir.

Yürütme

Job özel host'larda, yakındaki runner'da veya kontrollü çalışma ortamında çalışmak zorunda olabilir. Web hizmetinin konumu tek başına bu yürütme seçimlerini belirlemez.

DestekleniyorKısmen destekleniyorDesteklenmiyor
Yürütme: Rundeck ve Semaphore UI
Ölçütler Semaphore UI Rundeck
Uzak yürütme EvetRunner'lar EvetSSH ve node yürütücüleri
Uzak yürütme merkezleri EvetRunner'lar EvetRunbook AutomationEnterprise Runners
Yürütme yönlendirmesi EvetProProje runner'ları ve etiketler EvetRunbook AutomationRunner etiketleri
Eşzamanlılık denetimleri EvetŞablon ve proje limitleri EvetÇoklu yürütmeler ve node thread'leri
Konteyner içinde job yürütme EvetProDocker görev yürütücüsü EvetDocker komutu veya yürütme eklentisi

Yürütme özel altyapıya yakın kalabilir. Örneğin müşteri ağı içindeki Semaphore UI runner'ı, o ağdan erişilen host'larda Ansible bakım playbook'u çalıştırabilir. Community global runner'lar içerir, Pro ise projeye atanmış runner'lar ve etiket tabanlı yönlendirme ekler. Docker görev yürütmesi Pro ile başlar, Kubernetes görev yürütmesi Enterprise gerektirir. Her iki yönlendirme modeli de ilgili ticari sürümle yürütme makinelerini etiketlerle seçebilir.

Rundeck Community uzak node'larda genellikle SSH veya başka node yürütücüsüyle zaten komut çalıştırır. Ticari Enterprise Runners uzak ortamlarda ayrı yürütme merkezleri sağlar. Tüm uzak yürütmeyi ücretli özellik saymak yerine her işlemin nerede çalışması ve hangi bağlantılara ihtiyaç duyması gerektiği karşılaştırılmalıdır. İki uygulamadan birini Docker'da kurmak, her job'ı kendi konteynerinde çalıştırmaktan ayrıdır.

İki hizmet de eşzamanlı işi kontrol eder. Semaphore UI şablon başına paralel yürütmeyi yapılandırır ve proje başına çalışan görevleri sınırlar. Rundeck bir job'ın birden fazla yürütmesine izin verebilir ve node dağıtım thread sayısını ayarlayabilir. Bu ayarlar ekibin temel playbook veya runbook'u değiştirmeden yürütme kapasitesini paylaşmasına yardım eder.

İş akışları

Hizmet güncellemesi yedekleme, yapılandırma değişikliği ve doğrulama, hata sonrası da kurtarma gerektirebilir. Bileşim ve yeniden kullanılabilir alt işlemler ekibin bu runbook'u nasıl yönettiğini belirler.

DestekleniyorKısmen destekleniyorDesteklenmiyor
İş akışları: Rundeck ve Semaphore UI
Ölçütler Semaphore UI Rundeck
İş akışı düzenleyicisi EvetHazırlanmış şablonları bağlayan grafik Evetİş akışı stratejileri olan adım düzenleyicisi
Birden fazla araç kullanan iş akışları Evet Evet
Yeniden kullanılabilir alt iş akışları Hayır EvetJob referansları
İş akışında değer aktarımı Evet Evet
Başarı ve hata yönetimi EvetGörev sonucuna göre dallar EvetAdım hata işleyicileri ve iş akışı stratejileri
Onay kontrol noktaları Evetİş akışı onay düğümleri KısmenHarici onay kapısı ve ayrı başlatılan job'lar

Birden fazla işlem birlikte yürütülecekse Semaphore UI iş akışları şablonları başarı ve hata yolları, onaylar ve gecikmelerle bağlar. Örneğin yedeklemeyi Ansible güncellemesi ve doğrulama görevi izleyebilir. Rundeck yeniden kullanılabilir job referansları, adım düzeyinde hata işleyicileri ve bir kez çalışan adımlarla seçilen her node'a gönderilen adımları ayıran stratejiler ekler. Semaphore UI tek tek şablonları iş akışları arasında yeniden kullanır, ancak tam bir iş akışını başka iş akışının içine koyamaz.

İki platform da yakalanan değerleri sonraki adımlara iletir. Semaphore UI 2.20 Ansible set_stats, Terraform/OpenTofu/Terragrunt çıktıları ve Bash, PowerShell veya Python'dan JSON toplar, ardından değerleri hedef girdilere eşler. Toplama sunucu veya runner'daki yerel yürütücüyle çalışır, Docker ve Kubernetes yürütücüleriyle çalışmaz. Rundeck veri yakalamak için log filtrelerini, değerleri sonraki adım veya üst job'lara açmak için yerleşik Global Variable adımını kullanır. Her iki modelde host adresi gibi bir değer doğrudan iletilebilir, dosya veya arşiv ise sonraki adımın erişebildiği depolama veya açık aktarım gerektirir. Alıcı şablon girdiyi tanımlar, playbook'u veya envanter yapılandırması bu girdiyi yeni host'u hedeflemek için kullanır.

Üretim güncellemesinde Semaphore UI iş akışı hassas işlemden önce onay düğümünde duraklayabilir. 2.20'de onay izni proje görevlerini çalıştırma iznine bağlıdır, ayrı onaylayıcı rolü 2.21 için duyurulmuştur. Rundeck job referansları ve API'si ekibin onaylı işlemi ayrı başlatılan job'lara bölüp harici onay sürecine bağlamasına izin verir. Bu, sıradan job başlatmayı zorunlu onay saymak yerine ekibin onay kapısını ve devam mekanizmasını uygulamasını gerektirir.

İç içe Rundeck job referansları birçok runbook aynı çok adımlı düzeltmeyi paylaştığında özellikle yararlıdır. Semaphore UI'da her yeniden kullanılabilir birim tek playbook veya araç çağrısıysa ortak işlemleri şablon olarak tutmak iyi çalışır. İş akışı içinde başka iş akışı gerektiren prosedür API orkestrasyonu veya farklı parçalama gerektirir, bu da kurulum ve sonuç yönetimi ekler.

Erişim kontrolü ve kimlik doğrulama

Ekip arkadaşına hizmet yeniden başlatma düğmesi vermek, izin verilen işlem, host'lar ve oturum açma yöntemi hakkında da karar gerektirir. Bu kontroller operatörlerin işlerini seçme biçimine uymalıdır.

DestekleniyorKısmen destekleniyorDesteklenmiyor
Erişim kontrolü ve kimlik doğrulama: Rundeck ve Semaphore UI
Ölçütler Semaphore UI Rundeck
Proje erişim kontrolü EvetProje rolleri EvetACL politikaları
Node başına erişim politikaları HayırBunun yerine hazırlanmış job'ları sınırlama Evet
Job düzeyinde başlatma izinleri EvetEnterprise Evet
LDAP ve Active Directory ile oturum açma EvetPro EvetJAAS LDAP yapılandırması

Rundeck ACL politikaları job'ları, node'ları ve diğer kaynakları ayırır. Ekip operatöre belirli işlemlere ve host altyapısının alt kümelerine erişim verebilir. Operatör birçok runbook arasında hedef seçtiğinde bu değerlidir.

Semaphore UI işi projeler ve hazırlanmış şablonlar etrafında devreder. Community proje rolleri her operatöre otomasyon kaynaklarını düzenleme sorumluluğu vermeden görev çalıştırmayı zaten sağlar. Ekip hizmet yeniden başlatmalarını, yedeklemelerini ve kontrollerini bir projede toplayabilir. Mühendisler tanımları yönetir, ekip arkadaşları ihtiyaç duydukları işlemleri başlatır.

Proje çapında başlatma erişimi fazla geniş olduğunda Enterprise özel roller ve şablon düzeyinde yürütme izinleri ekler. Örneğin destek personeli hizmet yeniden başlatma şablonuna ihtiyaç duyabilir, dağıtım ise başka rolle sınırlı kalabilir. Envanter, kimlik bilgileri ve etkinleştirilmiş başlatma geçersiz kılmaları yine şablon yapılandırmasına aittir. Bu model, keyfî job'lar arasında uygulanan bağımsız node izinlerinden farklıdır.

Semaphore UI Pro LDAP/Active Directory ve OIDC ile oturum açma, ayrıca yerel TOTP ekler. Rundeck yerel hesapları ve LDAP ile Active Directory dahil JAAS üzerinden dizin kimlik doğrulamasını destekler. Kimlik doğrulama kişiyi tanımlar, proje rolleri veya ACL politikaları ise ayrı olarak neyi başlatabileceğini belirler. Hazırlanmış işlem yalnızca bu yetki devrine uyan host ve parametre geçersiz kılmalarını sunmalıdır.

Günlükler ve denetim

Yürütme kayıtları başarısız işlemi açıklar. Denetim izi hizmeti kimin kullandığını veya değiştirdiğini yanıtlar ve güvenlik ekibi tarafından ayrı toplanabilir.

DestekleniyorKısmen destekleniyorDesteklenmiyor
Günlükler ve denetim: Rundeck ve Semaphore UI
Ölçütler Semaphore UI Rundeck
Çalıştırma geçmişi ve loglar Evet Evet
Host sonuç özetleri EvetProAnsible host özeti EvetNode ve iş akışı adımı sonuçları
Yönetimsel denetim kayıtları EvetYönetici denetim logu görünümü, kayıt etkinleştirilir EvetYerel denetim izi dosyası
Denetim olaylarını dışa aktarma EvetProTLS Syslog ve Splunk HEC EvetCommercialAudit Stream eklentisi

İşlem çalıştıktan sonra ekip arkadaşının yazardan yeniden üretmesini istemeden ne olduğunu bilmesi gerekir. İki ürün de yürütme sonuçlarını ve logları saklar. Rundeck job'ın adımlarını ve node sonuçlarını gösterir. Semaphore UI her görevin durumunu, çıktısını, depo revizyonunu ve başlatma ayrıntılarını tutar, böylece ekip olay incelerken aynı çalıştırmaya dönebilir.

Ansible yama veya sertifika job'ında Semaphore UI Pro başarılı host'ları ve sunucu başına başarısız görevleri gösteren host özeti ekler. Operatör etkilenen host'tan başlayıp ilgili çıktıyı inceleyebilir. Community görev geçmişi ve logları bu özet olmadan da yararlıdır. Bu yürütme kayıtları otomasyon çalıştırmasını açıklar, yönetimsel denetim olayları ise farklı amaç taşır.

Rundeck denetim olaylarını audit listener ile kaydeder, ACL kararları için ayrı yetkilendirme logu tutar. Ticari Runbook Automation harici hizmetler için Audit Stream eklentisi ekler, logging agent'ı da yerel dosyaları toplayabilir. Semaphore UI kayıt açıkken yönetici denetim logu görünümü sunar, Pro olayları TLS Syslog veya Splunk HEC üzerinden iletir. Güvenlik ekibi bu kayıtları erişim ve yapılandırma incelemesinde kullanabilir, mühendisler ise işlemin kendisini araştırmak için görev logları ve host özetlerine başvurabilir.

Entegrasyonlar

DestekleniyorKısmen destekleniyorDesteklenmiyor
Entegrasyonlar: Rundeck ve Semaphore UI
Ölçütler Semaphore UI Rundeck
REST API Evet Evet
Gelen webhook'lar Evetİstek eşleştirme ve girdi çıkarma EvetRun Job işleyicisi
Görev bildirimleri EvetE-posta, Slack, Teams ve diğer kanallar EvetE-posta, webhook ve bildirim eklentileri

Rundeck eklenti sistemi yürütme, keşif, bildirim ve secret depolamayı kapsar, bazı entegrasyonlar ticari Runbook Automation'a ayrılmıştır. Gelen webhook'lar Run Job gibi işleyicileri kullanır. Runbook birkaç operasyon ürününe özel eylem gerektirdiğinde bu genişlik değerlidir.

Semaphore UI REST API ve istek eşleştirme ile girdi çıkarma içeren webhook entegrasyonları sunar. CI pipeline'ı sürümü derleyip yayımlayabilir, ardından sürüm kimliğiyle hazırlanmış dağıtım isteyebilir. Semaphore UI dağıtım envanterini, kimlik bilgilerini ve yürütme geçmişini tutar, CI sistemi ise derlemeden sorumlu kalır. Çağıran entegrasyon kimlik doğrulamayı yönetmeli ve tamamlanmayı beklemesi gerekiyorsa görev sonucunu kontrol etmelidir.

Semaphore UI'ın yerleşik bildirim kanalları e-posta, Slack, Microsoft Teams, Telegram, Rocket.Chat, DingTalk ve Gotify içerir. Rundeck job olayı bildirimlerini e-posta, webhook ve bildirim eklentileriyle gönderir. Böylece başarısız yedekleme veya sertifika kontrolü mevcut operasyon kanalına ulaşabilir, yürütme kaydı otomasyon hizmetinde kalır. Sohbette etkileşimli onay, bildirim bağlantısı göndermekten fazlasını gerektirir.

Yapay zekâ destekli otomasyon

DestekleniyorKısmen destekleniyorDesteklenmiyor
Yapay zekâ destekli otomasyon: Rundeck ve Semaphore UI
Ölçütler Semaphore UI Rundeck
MCP bağlayıcıları EvetTopluluk bağlayıcısı EvetResmî MCP sunucusu

Rundeck asistanları instance API'sine bağlayan resmî MCP sunucusu sağlar. Semaphore UI topluluk MCP bağlayıcılarına sahiptir ve Pro için 2.21.0'da resmî MCP desteği duyurmuştur. Dokümantasyon ve API'ler kodlama asistanlarının MCP bağlantısı olmadan da yapılandırma hazırlamasına ve job çıktısını incelemesine yardımcı olur.

Lisanslama ve destek

İki ürünün de ücretsiz açık kaynaklı sürümü vardır. Ticari özellikler, seçilen barındırma modeli ve destek anlaşması ekibin neye ödeme yaptığını ve neyi işlettiğini değiştirir.

Rundeck seçenekleri

Rundeck Community Apache 2.0 lisanslıdır. Ticari ürün PagerDuty Runbook Automation, profesyonel destekle Enterprise Runners, kümeleme ve ek eklentiler gibi özellikler ekler. SaaS seçeneği uygulama hizmetinin sorumluluğunu da üreticiye aktarır.

Semaphore UI sürümleri

Semaphore UI Community ücretsiz ve MIT lisanslıdır. Şablonlar, formlar, değişken grupları, zamanlamalar, proje rolleri, görev geçmişi ve global runner'lar paylaşılan operasyon hizmetini zaten destekler. Pro Terraform state backend, proje runner'ları, Docker görev yürütmesi ve harici vault entegrasyonları gibi yetenekler ekler. Enterprise özel roller, şablon izinleri, Kubernetes görev yürütmesi ve yüksek erişilebilirlik sunar. Ticari destek Pro ve Enterprise üzerinden alınabilir, taahhütler geçerli plan ve anlaşmayla belirlenir.

İşletme maliyetleri

Ansible odaklı ekip için Semaphore UI mevcut playbook ve IaC yapılandırmalarını paylaşmak için gereken hazırlığı azaltabilir. Araca özel şablonlar ve yeniden kullanılabilir proje kaynakları, aksi halde komut sarmalayıcısı veya ek job yapılandırması gerektirecek işi karşılar. Yerel ikili dosya JVM olmadan dağıtım yolu da sunar. Bu, odaklı kurulumu işletmeyi kolaylaştırabilir. Öte yandan yerleşik Rundeck hizmeti ekibin ihtiyaç duyduğu entegrasyonları ve job modelini zaten sağlıyor olabilir.

Nasıl seçmeli?

Ekip arkadaşlarının gerçekleştirmesi gereken işlemle başlayın: hizmet yeniden başlatma, yedekleme, dağıtım veya ortam oluşturma. Önemli sorular bunu kimin hazırladığı, hedefleri kimin seçtiği ve işlemin hangi parçalarını platformun yönetmesi gerektiğidir.

Rundeck ne zaman seçilmeli?

Runbook ve node modeli günlük operasyonların merkezindeyse Rundeck güçlü bir seçenektir.

  • Operatörler node'ları platform üzerinden seçer ve yönetir. Node öznitelikleri, filtreleri ve bağımsız node politikaları operatörün farklı job'larda hangi makinelerde işlem yapabileceğini belirler.
  • İşlemler yeniden kullanılabilir job adımlarına ve eklentilere dayanır. Job referansları, node'a özel adımlar ve hata işleyicileri gereken kurtarma veya bakım sürecini modeller.
  • Yönetilen hizmet veya mevcut entegrasyonlar değerlidir. Ticari Runbook Automation, aksi halde ekibin yöneteceği SaaS barındırma, yürütme merkezleri ve ürüne özel entegrasyonlar sağlayabilir.

Semaphore UI ne zaman seçilmeli?

Ekip mevcut playbook'ları, Terraform/OpenTofu yapılandırmalarını veya script'leri özel görev şablonlarıyla paylaşmak istiyorsa Semaphore UI uygundur. Yalnızca Ansible ya da IaC odaklı iş akışına hizmet verebilir veya birkaç aracı tek operasyon hizmetinde birleştirebilir.

  • Ansible playbook'ları işi zaten tanımlar. Depo, envanter ve kimlik bilgileri yama uygulama, yeniden başlatma, yedekleme ve sertifika yenilemede kullanılır, ekip arkadaşının vereceği girdiler formlarla toplanır.
  • Kaynak sağlama ve bakım aynı hizmette olmalıdır. Terraform/OpenTofu veya Terragrunt doğrudan kullanılır, yapılandırma ve kontroller iş akışlarıyla bağlanır, ortak backend gerektiğinde Pro state depolama eklenir.
  • Hedefler zaten Ansible envanterlerinden gelir. Bu tanımlar otomasyon platformunda ayrı node kataloğu veya node düzeyinde izinler gerekmeden hazırlanmış işlemler arasında yeniden kullanılır. Community'de proje şablonları paylaşılır, erişim seçilen işlemlerle sınırlanacaksa Enterprise izinleri eklenir.
  • Odaklı, kendi altyapınızda barındırılan kurulum istenir. Mevcut altyapıda ikili dosya, paket veya konteyner çalıştırılır, runner'lar özel sistemlerin yakınına yerleştirilir. Yürütme ve destek ihtiyacı büyüdükçe ticari sürümler kullanılabilir.

Semaphore UI ile Rundeck'i birlikte kullanma

Ekip node filtrelerine veya özel eklentilere dayanan Rundeck runbook'larını koruyup Ansible ve IaC işlemlerini yeniden kullanılabilir Semaphore UI şablonlarına taşıyabilir. Örneğin Rundeck kurtarma job'ı, şablonun hazırlanmış envanterini ve kimlik bilgilerini kullanarak seçilen host'larda Ansible onarımı çalıştırmak için Semaphore UI görev API'sini çağırabilir. Böylece ekip runbook'larını yeniden kullanırken yapılandırma, kaynak sağlama ve zamanlanmış bakım için Semaphore UI'ı devreye alabilir.

Ekip hazır entegrasyon kurmak yerine bu bağlantıyı kendisi oluşturur. Çağıran job API token'ı, ağ erişimi, node seçimini şablonun host-limit girdisine eşleme ve döndürülen görevin son durumunu kontrol etme mantığı gerektirir. Runbook hedefleri verecekse şablonda host limitinin geçersiz kılınmasına izin verilmelidir. Rundeck node adları şablonun beklediği Ansible envanteri host adlarına eşlenmelidir. Çalıştırmayı Semaphore UI API kimliğinin kendi izinleri yönetir, Rundeck node düzeyi izinleri istekle aktarılmaz. Mevcut Rundeck runbook'ları değerli kalıyorsa iki hizmet yararlıdır, aksi halde işlemleri tek yerde toplamak ek entegrasyonu yönetmekten kaçınmayı sağlar.

Sık sorulan sorular

Mevcut Ansible playbook ve envanterleri yeniden kullanılabilir mi?

Evet. Rundeck'in yerleşik Ansible entegrasyonu playbook çalıştırır ve envanteri node modeline aktarır. Semaphore UI görev şablonuyla playbook'u yeniden kullanılabilir envantere, kimlik bilgisi referanslarına ve değişken gruplarına bağlar. Aynı envanter dağıtım, sertifika kontrolü ve diğer hazırlanmış işlemlere hizmet edebilir.

Ekip arkadaşları otomasyonu düzenlemeden hizmet yeniden başlatabilir mi?

Evet. Semaphore UI Community proje rolleri, mühendisler yapılandırmayı yönetirken Task Runner'ların hazırlanmış şablonları çalıştırmasını sağlar. Proje çapında başlatma erişimi fazla genişse Enterprise seçilen şablonlara izin ekler. Rundeck job ve node ACL'leri kullanır. Operatörün runbook'lar arasında yetkili host'ları da seçmesi gerektiğinde bunlar yararlıdır.

Job'lar özel ağlardaki sistemlere ulaşabilir mi?

Evet. Semaphore UI hedef sistemlere yakın runner üzerinden çalışabilir, Pro proje ataması ve etiket tabanlı yönlendirme ekler. Rundeck Community zaten uzak node'lara komut gönderir, ticari Enterprise Runners ise ayrı yürütme merkezleri sağlar. Uygun model otomasyon çalışma zamanının ve ağ bağlantılarının nerede bulunması gerektiğine bağlıdır.

Rundeck runbook'unu Semaphore UI'a taşırken neler eşlenmelidir?

Mevcut playbook'lar ve desteklenen komut dosyaları yeniden kullanılabilir. Job seçenekleri, node filtreleri, kimlik bilgileri, izinler ve adım ilişkileri ise karşılık gelen şablon ve iş akışı yapılandırması gerektirir. Özellikle job referansları ve hata işleyicileri kontrol edilmelidir. Semaphore UI tek tek şablonları iş akışları arasında yeniden kullanır, ancak tam iş akışını başka iş akışının içine yerleştirmez.

Rundeck ve Semaphore UI birlikte kullanılabilir mi?

Evet. Rundeck job'ı hazırlanmış Ansible veya IaC görevini başlatmak ve son durumunu kontrol etmek için Semaphore UI API'sini çağırabilir. Böylece node odaklı veya eklenti ağırlıklı runbook'lar Rundeck'te kalırken Semaphore UI araca özel işlemleri ve sonraki bakımı yönetir. API bağlantısını ve sonuç yönetimini ekip uygular.

Bu makale yararlı oldu mu?

Kaynaklar

  1. Semaphore UI, “Semaphore automation applications”. URL: https://semaphoreui.com/docs/user-guide/apps (erişim tarihi: ).
  2. Semaphore UI, “Semaphore installation methods and dependencies”. URL: https://semaphoreui.com/docs/admin-guide/installation (erişim tarihi: ).
  3. Semaphore UI, “Semaphore global runners”. URL: https://semaphoreui.com/docs/admin-guide/runners/ (erişim tarihi: ).
  4. Semaphore UI, “Semaphore workflow nodes and approvals”. URL: https://semaphoreui.com/docs/user-guide/workflows (erişim tarihi: ).
  5. Semaphore UI, “Semaphore Community, Pro and Enterprise”. URL: https://semaphoreui.com/pricing (erişim tarihi: ).
  6. Semaphore UI, “Semaphore Terraform HTTP backend”. URL: https://semaphoreui.com/docs/user-guide/apps/terraform/states (erişim tarihi: ).
  7. Semaphore UI, “Semaphore project access”. URL: https://semaphoreui.com/docs/user-guide/projects (erişim tarihi: ).
  8. Semaphore UI, “Semaphore inventories”. URL: https://semaphoreui.com/docs/user-guide/inventory (erişim tarihi: ).
  9. Semaphore UI, “Semaphore variable groups”. URL: https://semaphoreui.com/docs/user-guide/environment (erişim tarihi: ).
  10. Semaphore UI, “Semaphore scheduled tasks”. URL: https://semaphoreui.com/docs/user-guide/schedules (erişim tarihi: ).
  11. Semaphore UI, “Semaphore Key Store”. URL: https://semaphoreui.com/docs/user-guide/key-store (erişim tarihi: ).
  12. Semaphore UI, “Semaphore high availability prerequisites”. URL: https://semaphoreui.com/docs/admin-guide/ha#prerequisites (erişim tarihi: ).
  13. Semaphore UI, “Semaphore local execution, workflow outputs, inventory paths, host limits and branch overrides”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/services/tasks/local_executor.go (erişim tarihi: ).
  14. Semaphore UI, “Semaphore task dispatch, runner routing, concurrency and remote workflow outputs”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/services/tasks/TaskPool.go (erişim tarihi: ).
  15. PagerDuty, “Installing Rundeck”. URL: https://docs.rundeck.com/docs/administration/install/ (erişim tarihi: ).
  16. PagerDuty, “Instance System Requirements”. URL: https://docs.rundeck.com/docs/administration/install/system-requirements.html (erişim tarihi: ).
  17. Rundeck contributors, “Rundeck 6.2.1 Apache 2.0 license”. URL: https://github.com/rundeck/rundeck/blob/v6.2.1/LICENSE (erişim tarihi: ).
  18. Rundeck contributors, “Rundeck 6.2.1 release”. URL: https://github.com/rundeck/rundeck/releases/tag/v6.2.1 (erişim tarihi: ).
  19. PagerDuty, “Integrate with Ansible”. URL: https://docs.rundeck.com/docs/learning/howto/using-ansible.html (erişim tarihi: ).
  20. PagerDuty, “Builtin Node Steps”. URL: https://docs.rundeck.com/docs/manual/jobs/job-plugins/node-steps/builtin.html (erişim tarihi: ).
  21. PagerDuty, “Creating jobs”. URL: https://docs.rundeck.com/docs/manual/jobs/creating-jobs.html (erişim tarihi: ).
  22. PagerDuty, “Job Options”. URL: https://docs.rundeck.com/docs/manual/jobs/job-options.html (erişim tarihi: ).
  23. PagerDuty, “Job Workflows”. URL: https://docs.rundeck.com/docs/manual/jobs/job-workflows.html (erişim tarihi: ).
  24. PagerDuty, “Builtin Workflow Steps and global variables”. URL: https://docs.rundeck.com/docs/manual/jobs/job-plugins/workflow-steps/builtin.html (erişim tarihi: ).
  25. PagerDuty, “Overview of Access Control”. URL: https://docs.rundeck.com/docs/learning/getting-started/acl-overview.html (erişim tarihi: ).
  26. PagerDuty, “Enterprise Runner”. URL: https://docs.rundeck.com/docs/administration/runner/runner-overview.html (erişim tarihi: ).
  27. PagerDuty, “Runbook Automation”. URL: https://docs.rundeck.com/docs/enterprise/ (erişim tarihi: ).
  28. PagerDuty, “Runbook Automation SaaS”. URL: https://docs.rundeck.com/docs/about/cloud/ (erişim tarihi: ).
  29. PagerDuty, “Plugin Developer Guide”. URL: https://docs.rundeck.com/docs/developer/ (erişim tarihi: ).
  30. PagerDuty, “Rundeck / Runbook Automation MCP Server”. URL: https://docs.rundeck.com/docs/mcp/ (erişim tarihi: ).
  31. Semaphore UI, “Semaphore REST API”. URL: https://semaphoreui.com/api-docs (erişim tarihi: ).
  32. Semaphore UI, “Semaphore team roles and template-level permissions”. URL: https://semaphoreui.com/docs/user-guide/team#extended-rbac (erişim tarihi: ).
  33. Semaphore UI, “Semaphore source and MIT license”. URL: https://github.com/semaphoreui/semaphore (erişim tarihi: ).
  34. Semaphore UI, “Semaphore workflow input mapping model”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/db/Workflow.go#L27-L44 (erişim tarihi: ).
  35. Semaphore MCP contributors, “Semaphore MCP connector”. URL: https://github.com/cloin/semaphore-mcp (erişim tarihi: ).
  36. Semaphore UI, “Semaphore task template options and survey field types”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/db/Template.go (erişim tarihi: ).
  37. PagerDuty, “API Reference”. URL: https://docs.rundeck.com/docs/api/ (erişim tarihi: ).
  38. PagerDuty, “Integrate with HashiCorp Vault”. URL: https://docs.rundeck.com/docs/learning/howto/vault-integration.html (erişim tarihi: ).
  39. PagerDuty, “Webhooks”. URL: https://docs.rundeck.com/docs/manual/webhooks.html (erişim tarihi: ).
  40. Semaphore UI, “Tasks, execution history and Ansible summaries”. URL: https://semaphoreui.com/docs/user-guide/tasks (erişim tarihi: ).
  41. Semaphore UI, “Terraform plan and apply command construction in the Semaphore UI 2.20 candidate”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/db_lib/TerraformApp.go (erişim tarihi: ).
  42. PagerDuty, “Node Sources Overview”. URL: https://docs.rundeck.com/docs/manual/projects/resource-model-sources/ (erişim tarihi: ).
  43. PagerDuty, “Nodes”. URL: https://docs.rundeck.com/docs/manual/05-nodes.html (erişim tarihi: ).
  44. PagerDuty, “Activity”. URL: https://docs.rundeck.com/docs/manual/08-activity.html (erişim tarihi: ).
  45. PagerDuty, “Rundeck Key Storage”. URL: https://docs.rundeck.com/docs/manual/key-storage/ (erişim tarihi: ).
  46. Semaphore UI, “Netbox Dynamic Inventory Integration with Semaphore”. URL: https://semaphoreui.com/docs/user-guide/inventory/netbox-dynamic-inventory (erişim tarihi: ).
  47. Semaphore UI, “Semaphore UI integrations”. URL: https://semaphoreui.com/docs/user-guide/integrations (erişim tarihi: ).
  48. Semaphore UI, “Repositories and shared automation checkout”. URL: https://semaphoreui.com/docs/user-guide/repositories (erişim tarihi: ).
  49. PagerDuty, “Git SCM for job definitions”. URL: https://docs.rundeck.com/docs/manual/projects/scm/git.html (erişim tarihi: ).
  50. PagerDuty, “Job variables and project global variables”. URL: https://docs.rundeck.com/docs/manual/jobs/job-variables.html (erişim tarihi: ).
  51. Rundeck, “AWS Secrets Manager Key Storage plugin”. URL: https://docs.rundeck.com/docs/manual/key-storage/storage-plugins/aws-secrets-manager.html (erişim tarihi: ).
  52. Rundeck, “Azure Key Vault Key Storage plugin (Commercial)”. URL: https://docs.rundeck.com/docs/manual/key-storage/storage-plugins/azure-vault.html (erişim tarihi: ).
  53. Semaphore UI, “Semaphore UI authentication”. URL: https://semaphoreui.com/docs/admin-guide/authentication (erişim tarihi: ).
  54. Rundeck, “Authenticating Rundeck users”. URL: https://docs.rundeck.com/docs/administration/security/authentication.html (erişim tarihi: ).
  55. Semaphore UI, “Semaphore UI audit log and forwarding”. URL: https://semaphoreui.com/docs/admin-guide/audit-log (erişim tarihi: ).
  56. Rundeck, “Rundeck audit trail log”. URL: https://docs.rundeck.com/docs/administration/security/audit-trail.html (erişim tarihi: ).
  57. Semaphore UI, “View the Semaphore UI audit log”. URL: https://semaphoreui.com/docs/admin-guide/audit-log/view (erişim tarihi: ).
  58. Rundeck, “Rundeck application and audit logs”. URL: https://docs.rundeck.com/docs/administration/maintenance/logs.html (erişim tarihi: ).
  59. Semaphore UI, “Semaphore UI notification channels”. URL: https://semaphoreui.com/docs/admin-guide/notifications (erişim tarihi: ).
  60. Rundeck, “Rundeck job notifications”. URL: https://docs.rundeck.com/docs/manual/jobs/job-notifications.html (erişim tarihi: ).
  61. Semaphore UI, “OpenBao secret storage”. URL: https://semaphoreui.com/docs/user-guide/key-store/openbao (erişim tarihi: ).
  62. Semaphore UI, “Devolutions Server secret storage”. URL: https://semaphoreui.com/docs/user-guide/key-store/devolutions-server (erişim tarihi: ).
  63. Semaphore UI, “CyberArk secret storage”. URL: https://semaphoreui.com/docs/user-guide/key-store/cyberark (erişim tarihi: ).
  64. Rundeck, “CyberArk Key Storage plugin (Commercial)”. URL: https://docs.rundeck.com/docs/manual/key-storage/storage-plugins/cyberark-storage.html (erişim tarihi: ).
  65. Rundeck, “Rundeck 6.2.1 audit log listener”. URL: https://github.com/rundeck/rundeck/blob/v6.2.1/plugins/audit-logging-plugin/src/main/groovy/org/rundeck/plugin/audit/AuditLoggerPlugin.groovy (erişim tarihi: ).
  66. Rundeck, “Rundeck 6.2.1 audit event dispatch”. URL: https://github.com/rundeck/rundeck/blob/v6.2.1/rundeckapp/src/main/groovy/rundeck/services/audit/AuditEventsService.groovy (erişim tarihi: ).
  67. Rundeck, “Rundeck Audit Stream plugin”. URL: https://docs.rundeck.com/docs/administration/security/audit-stream-plugin.html (erişim tarihi: ).

Bu karşılaştırma yukarıda listelenen dokümantasyon, depolar ve ürün bilgileri kullanılarak Semaphore UI ekibi tarafından hazırlanmıştır. Her kaynak için erişim tarihi kaydedilmiştir.