Ansible UI: AWX i Semaphore UI

Denis GukovOsnivač i tehnički direktor Semaphore UI-ja
Vreme čitanja: 18 min

AWX i Semaphore UI pružaju veb-interfejse i API-je za timsko pokretanje automatizacije. Poređenje obuhvata AWX 24.6.1 i Semaphore UI 2.20.0, od podržanih alata i primene do radnih tokova, kontrole pristupa i održavanja.

Razgovaraj o članku sa AI

Pregled

Ansible playbook može početi kao komanda koju jedan inženjer pokreće sa laptopa. Kada primene, zakrpe i obnavljanje sertifikata postanu zajednička odgovornost, timu treba jedno mesto za pokretanje tih zadataka, unos parametara, upravljanje akreditivima i pregled rezultata. AWX i Semaphore UI pružaju taj zajednički sloj sa sačuvanim podešavanjima zadataka, rasporedima, dozvolama i istorijom izvršavanja.

AWX gradi automatizaciju oko Ansible-a. Timovi povezuju playbook datoteke iz Git-a sa inventarima i akreditivima, čuvaju ih kao šablone zadataka i povezuju zadatke u radne tokove. Organizacije, timovi i dozvole određuju ko može da koristi svaki resurs. AWX je projekat otvorenog koda, dok je Red Hat Ansible Automation Platform (AAP) zasebna komercijalna ponuda sa sopstvenom podrškom i životnim ciklusom.

Semaphore UI je takođe zasnovan na višekratnim zadacima, sa Ansible playbook datotekama i namenskim šablonima za Terraform/OpenTofu, Terragrunt, Bash, PowerShell i Python. Projekti objedinjuju te šablone, repozitorijume, inventare, akreditive i promenljive. Radni tok može povezati pripremu infrastrukture kao koda (IaC), podešavanje hostova i dalje održavanje, tako da operacije različitih alata ostanu u jednom interfejsu.

Semaphore UI šabloni zadataka za Ansible, OpenTofu, Terragrunt, Bash i PowerShell u jednom projektu.
Semaphore UI. Različiti alati za automatizaciju dele listu šablona projekta sa podesivim kolonama.
Lista AWX šablona sa Ansible zadacima i višekratnim radnim tokovima u organizaciji.
AWX. Šabloni Ansible zadataka i radnih tokova dele listu sa kontrolama organizacije i pokretanja.

Kratko poređenje

Sačuvani zadaci, akreditivi i rasporedi pokrivaju rutinske Ansible operacije u oba proizvoda. Šire razlike odnose se na podržane alate, primenu i upravljanje resursima. Slede njihove glavne karakteristike.

Alati za automatizaciju, instalacija, izvršavanje, radni tokovi, inventari, kontrola pristupa, akreditivi, promenljive, licenca
Kriterijumi Semaphore UI AWX
Alati za automatizaciju Ansible, Terraform/OpenTofu, Terragrunt, Bash, PowerShell, Python AnsibleDrugi alati kroz playbook datoteke
Instalacija Binarna datoteka, paketi, Docker, Kubernetes Kubernetes (Operator), Docker (razvoj/testiranje)
Serverske platforme Linux, macOS, Windows, FreeBSD Linux kontejneri (Kubernetes / Docker)
Izvršavanje zadataka Na serveru ili udaljenim mašinama za izvršavanje Na izvršnim serverima ili Kubernetes podovima
Radni tokovi Da, vizuelni tokovi za različite alate Da, vizuelni Ansible tokovi sa višekratnim podtokovima
Rasporedi Cron izrazi, jednokratna pokretanja Jednokratni i ponavljajući rasporedi
Upravljanje inventarom Statički i Git inventari, dinamički dodaci, NetBox i drugi spoljni izvori Statički i dinamički inventari, upravljana osvežavanja, sastavljeni inventari
Kontrola pristupa RBAC, projektne i prilagođene uloge, dozvole za šabloneLDAP, OIDC, lokalni TOTP RBAC, uloge organizacija i timova, dozvole po resursuLDAP, OIDC, SAML, MFA preko dobavljača identiteta
Akreditivi Key Store, SSH ključevi, lozinke, integracije sa spoljnim trezorima Objekti akreditiva, SSH ključevi, lozinke, spoljni trezori
Promenljive Višekratne grupe promenljivih, dodatne promenljive, promenljive okruženja, upitnici Promenljive inventara, hostova i grupa, dodatne promenljive, upitnici
Licenca MIT (Community)Posebni komercijalni uslovi za plaćena izdanja Apache 2.0

Za rutinske Ansible zadatke oba proizvoda nude pokretanje, rasporede i istoriju izvršavanja. Glavne razlike su upravljanje inventarima i dozvolama, alati koje direktno pokreću i način primene.

Prikazane Semaphore UI funkcije obuhvataju Community, Pro i Enterprise. Oznake dostupnosti navode najniže potrebno izdanje. Odeljak „Licenciranje i podrška” objašnjava komercijalne opcije.

Poređenje funkcija

Primena može uključivati pripremu infrastrukture, podešavanje hostova i čekanje odobrenja pre izmene produkcije. Najkorisnije razlike između proizvoda vide se u tome gde se ti koraci izvršavaju, kako razmenjuju rezultate i ko njima upravlja.

Instalacija i podešavanje

Preporučena AWX instalacija koristi Kubernetes. Semaphore UI podržava i samostalne instalacije, pa je infrastruktura potrebna za smeštanje servisa jedna od prvih razlika.

PodržanoDelimično podržanoNije podržano
Instalacija i podešavanje: AWX i Semaphore UI
Kriterijumi Semaphore UI AWX
Samostalna binarna datoteka Da Ne
Nativni Linux paketi DaDEB / RPM Ne
Primena u Docker-u Da DelimičnoSamo za razvoj i testiranje
Primena u Kubernetes-u DaHelm chart DaAWX Operator
Nativni Windows server DaZa Ansible je potreban WSL, kontejner ili Linux runner NeLinux kontejneri
Visoka dostupnost DaEnterpriseZajednička baza, Redis, balanser opterećenja DaReplike, zasebno podešavanje prebacivanja baze pri otkazu

Preporučena primena AWX-a kombinuje Kubernetes Operator, PostgreSQL i izvršavanje zadataka u kontejnerima. Docker okruženje namenjeno je razvoju i testiranju. Za tim koji već koristi Kubernetes, Operator pruža poznat operativni model. Uvođenje klastera samo za AWX dodaje infrastrukturu za održavanje.

Semaphore UI podržava Kubernetes kroz Helm, kao i binarne datoteke, nativne pakete i Docker sa SQLite, MySQL ili PostgreSQL bazom. Samostalna instalacija može koristiti postojeći server bez klastera, što timu omogućava manju početnu instalaciju i izbor operativnog modela.

Operativni sistem servera odvojen je od izvršavanja zadataka. Semaphore UI ima nativnu serversku binarnu datoteku za Windows, dok Ansible i dalje zahteva Linux, macOS, odgovarajući kontejner ili WSL. Linux runner može izvršavati zadatke za veb-servis smešten drugde. Obe platforme mogu upravljati Windows ciljevima kroz Ansible.

Za visoku dostupnost, mogućnosti skaliranja AWX-a i HA primena Semaphore UI Enterprise-a zahtevaju planiranje prebacivanja baze pri otkazu i oporavka. Instalacijama bez mrežnog pristupa dodatno treba način isporuke paketa, izvršnih slika, ažuriranja i aktiviranja plaćenih licenci.

Alati za automatizaciju

Primena može početi Terraform/OpenTofu-om, nastaviti Ansible-om i završiti Python-om. AWX poziva druge alate kroz playbook datoteke, dok Semaphore UI nudi direktne šablone zadataka.

PodržanoDelimično podržanoNije podržano
Alati za automatizaciju: AWX i Semaphore UI
Kriterijumi Semaphore UI AWX
Ansible playbook datoteke Da Da
Terraform/OpenTofu DaNamenski šablon zadatka DelimičnoKroz Ansible playbook datoteke
Terragrunt DaNamenski šablon zadatka DelimičnoKroz Ansible playbook datoteke
Bash DaNamenski šablon zadatka DelimičnoKroz Ansible playbook datoteke
PowerShell DaNamenski šablon zadatka DelimičnoKroz Ansible playbook datoteke
Python DaNamenski šablon zadatka DelimičnoKroz Ansible playbook datoteke

AWX zadržava Ansible u središtu izvršavanja. Playbook datoteke mogu pozivati Terraform/OpenTofu, Terragrunt, Bash, PowerShell ili Python kroz module ili komande kada izvršno okruženje sadrži zavisnosti. Ovo odgovara timovima koji već opisuju pripremu infrastrukture u Ansible-u.

Semaphore UI tim alatima daje sopstvene šablone. Timovi mogu direktno pokretati postojeću automatizaciju i kombinovati je u radnim tokovima, bez dodatnih playbook datoteka samo za pozivanje drugog alata. OpenTofu zadatak može pripremiti infrastrukturu, Ansible podesiti hostove, a Python završiti povezanu operaciju, sve kroz isti interfejs.

Semaphore UI Pro nudi ugrađeni HTTP backend za Terraform/OpenTofu stanje, uz radne prostore i opcije pokretanja. Timovi mogu čuvati zajedničko stanje u Semaphore UI-ju umesto da održavaju zaseban backend. U AWX-u pozvani Terraform proces koristi backend koji tim podesi. AWX izvor inventara Terraform State čita stanje radi otkrivanja hostova, ali ga ne čuva.

Izvršavanje Terraform-a u Semaphore UI-ju 2.20 ima dva važna ograničenja. Uobičajeno pokretanje prikazuje plan pre primene, ali ga ne čuva automatski da bi se primenila ista datoteka. Ako odobrenje mora obuhvatiti baš predloženu izmenu, podesite čuvanje plana i prosleđivanje u apply. Podrazumevane Terraform komande takođe isključuju zaključavanje stanja ako nisu zamenjene, čak i kada backend podržava zaključavanje. Proverite oba podešavanja pri konfigurisanju produkcionih pokretanja.

Šabloni i rasporedi

AWX sačuvanu Ansible konfiguraciju naziva Job Template, a Semaphore UI Task Template. Svako pokretanje kreira zaseban job u AWX-u ili task u Semaphore UI-ju, sa sopstvenim statusom, evidencijama i rezultatom. Šablon čuva višekratna podešavanja, dok upitnici i rasporedi određuju ulazne parametre i vreme izvršavanja.

PodržanoDelimično podržanoNije podržano
Šabloni i rasporedi: AWX i Semaphore UI
Kriterijumi Semaphore UI AWX
Sačuvana konfiguracija zadatka Da Da
Upitnici (ulazni parametri) Da Da
Višekratni skupovi promenljivih DaVariable Groups zajedničke za više šablona DelimičnoPromenljive inventara ili datoteke u Git-u
Grana repozitorijuma pri pokretanju Da Da
Planirana pokretanja DaCron izrazi i jednokratna pokretanja DaJednokratni i ponavljajući rasporedi

U AWX-u Job Template bira projekat, playbook datoteku, inventar i akreditive, uz execution environment koji obezbeđuje izvršne zavisnosti. Ansible Task Template u Semaphore UI-ju bira repozitorijum, playbook datoteku i inventar, uz višekratne Variable Groups i Ansible opcije u istom obrascu. Inženjeri jednom pripreme konfiguraciju, a kolege zatim mogu pokretati operaciju bez ponovnog podešavanja svaki put.

Semaphore UI uređivač Ansible Task Template-a sa repozitorijumom, playbook datotekom, inventarom, Variable Groups i podešavanjima upita pri pokretanju.
Semaphore UI. Ansible Task Template sa zajedničkim promenljivama i opcijama pokretanja.
AWX uređivač Job Template-a sa projektom, inventarom, playbook datotekom, akreditivima i izvršnim okruženjem.
AWX. Ansible Job Template sa izborom resursa i upitima pri pokretanju.

Upitnici omogućavaju kolegama da unesu parametre bez uređivanja playbook datoteke. AWX podržava validaciju poput granica dužine teksta. Semaphore UI Survey Variables nude tipizirane unose, višeredni tekst, tajne i pojedinačni ili višestruki izbor. Višekratne Variable Groups čuvaju zajednička podešavanja odvojeno od vrednosti pokretanja. AWX deli konfiguraciju kroz promenljive inventara, hostova i grupa ili datoteke u Git-u, umesto zasebnog objekta Variable Groups koji se bira u više šablona.

Oba mogu pokrenuti drugu granu repozitorijuma ako je to dozvoljeno podešavanjima. AWX može tražiti inventar, akreditive i druga podešavanja. Semaphore UI podržava podešene izmene Ansible inventara i komandne linije. To inženjerima daje fleksibilnost, dok odobrene procedure mogu nuditi uži obrazac pokretanja.

Rasporedi automatizuju ta pokretanja. AWX koristi početni datum, vreme i ponavljanje. Semaphore UI podržava cron izraze i jednokratna pokretanja. Na primer, 0 2 * * * pokreće zadatak svakog dana u 02:00 u vremenskoj zoni planera, podrazumevano UTC. Oba pristupa pokrivaju rezervne kopije, provere hostova ili gašenje neprodukcijskih mašina van radnog vremena.

Semaphore UI dijalog rasporeda sa dnevnim cron izrazom, šablonom zadatka i sledećim vremenom pokretanja.
Semaphore UI. Cron raspored sa parametrima zadatka i pregledom narednog pokretanja.
AWX obrazac rasporeda sa dnevnim ponavljanjem, vremenskom zonom, uslovima završetka i izuzecima.
AWX. Raspored sa vremenskom zonom, ponavljanjem, uslovima završetka i izuzecima.

Inventar

Oba proizvoda koriste statičke datoteke i dinamičko otkrivanje. Glavna razlika je da li otkriveni hostovi postaju zapisi kojima platforma upravlja ili ih Ansible određuje tokom izvršavanja zadatka.

PodržanoDelimično podržanoNije podržano
Inventar: AWX i Semaphore UI
Kriterijumi Semaphore UI AWX
Statički inventari DaINI/YAML uređivač i datoteke DaZapisi hostova i grupa, uvezene datoteke
Inventari u Git-u DaIsti ili odvojen repozitorijum inventara DaSCM izvori projekta
Dinamički inventari DaAnsible dodaci i izvršne skripte DaDodaci, skripte i upravljani izvori
Osvežavanje inventara DelimičnoOtkrivanje tokom izvršavanja DaPlanirano i pri pokretanju
Izračunate grupe inventara DaAnsible constructed dodatak DaUpravljani sastavljeni inventari
Upravljani keš činjenica NeZasebno podesite Ansible keširanje DaAWX čuva činjenice hostova
Uređivanje hostova i grupa DelimičnoUređivanje INI/YAML definicija DaPojedinačne kontrole hostova i grupa

AWX održava zapise hostova i grupa i osvežava ih zadacima ažuriranja inventara, koristeći statičke datoteke, Ansible dodatke ili izvršne skripte. Semaphore UI omogućava uređivanje INI/YAML inventara ili učitavanje iz Git-a, uključujući zaseban repozitorijum. Dodaci i skripte otkrivaju hostove tokom izvršavanja. Glavna razlika je da li platforma upravlja životnim ciklusom inventara ili koristi timsku Ansible konfiguraciju.

Semaphore UI Ansible uređivač inventara sa dva staging veb-hosta u statičkom YAML-u.
Semaphore UI. Statički YAML inventar sa grupama hostova i promenljivama povezivanja.
AWX inventar sa pojedinačnim staging hostovima, njihovom web grupom i prekidačima aktiviranja po hostu.
AWX. Pojedinačni zapisi hostova sa grupnim članstvom i zasebnim kontrolama.

Na primer, netbox.netbox.nb_inventory otkriva uređaje i virtuelne mašine, filtrira ciljeve i gradi grupe iz NetBox podataka. NetBox ostaje izvor istine. AWX dodaje kontrolu ažuriranja i sačuvane zapise, dok Semaphore UI prosleđuje konfiguraciju Ansible-u. Oba koriste Ansible dodatak, a ne zaseban nativni NetBox konektor. Ostali izvori uključuju AWS, Azure i Google Cloud, a Semaphore UI dokumentuje Python skriptu za Consul smeštenu u Git-u.

AWX sastavljeni inventari kombinuju sačuvane ulazne inventare i upravljaju rezultujućim hostovima. Semaphore UI može koristiti Ansible constructed dodatak za grupe i promenljive iz ranijih izvora. Ansible keš dodaci mogu sačuvati činjenice, ali Semaphore UI ne pruža AWX upravljani keš činjenica. Skladište, rok važenja i deljenje keša među runner-ima ostaju deo Ansible podešavanja.

Semaphore UI planira da doda Ansible izveštavanje u stilu ARA-e u verziji 2.21.0. To će dopuniti mogućnosti inventara pregledom pojedinačnih hostova i njihove istorije automatizacije, kako bi operatori videli koji su zadaci izvršeni na svakom serveru, kada su pokrenuti i gde je došlo do grešaka.

Izaberite AWX model inventara kada operatori treba da pregledaju, osvežavaju i održavaju zapise hostova u platformi. Semaphore UI odgovara postavci u kojoj Git definiše inventar ili Ansible otkriva hostove iz NetBox-a i cloud API-ja tokom izvršavanja.

Tajne

Sačuvanim zadacima potrebni su akreditivi bez ručnog unošenja lozinki ili cloud tokena pri svakom pokretanju. Način čuvanja i preuzimanja određuje kako akreditivi stižu do zadatka.

PodržanoDelimično podržanoNije podržano
Tajne: AWX i Semaphore UI
Kriterijumi Semaphore UI AWX
Čuvanje akreditiva Da Da
HashiCorp Vault DaPro Da
OpenBao DaPro NeBez ugrađene integracije, proveriti Vault kompatibilnost
AWS Secrets Manager DaEnterprise Da
Azure Key Vault DaEnterprise Da
Devolutions Server DaEnterprise NeBez ugrađene integracije, moguće prilagođeno povezivanje

AWX objekti akreditiva i Semaphore UI Key Store dostavljaju akreditive sačuvanim zadacima bez ručnog unosa pri svakom pokretanju. Oba se integrišu sa HashiCorp Vault-om, AWS Secrets Manager-om i Azure Key Vault-om, pa timovi mogu zadržati postojeće servise.

Semaphore UI Vault obrazac skladišta sa URL-om servera, mount putanjom, namespace-om i izvorima tokena.
Semaphore UI. Vault povezivanje, mount putanja i izvor tokena.
AWX HashiCorp Vault Secret Lookup obrazac akreditiva sa poljima povezivanja i autentifikacije.
AWX. Polja povezivanja i autentifikacije za Vault pretragu. Dodatna podešavanja nastavljaju se ispod vidljivog dela.

Ostale integracije razlikuju proizvode. AWX nudi CyberArk Central Credential Provider, CyberArk Conjur i prilagođene tipove akreditiva. Semaphore UI pruža namenske OpenBao i Devolutions Server integracije. AWX Vault pretraga može raditi sa kompatibilnim servisom, ali OpenBao kompatibilnost treba proveriti za potrebnu operaciju.

Uporedite integraciju za trezor koji tim već koristi, uključujući autentifikaciju i vrste tajni potrebne zadacima. Servisi bez ugrađene integracije mogu zahtevati sopstveni kod za preuzimanje.

Izvršavanje

Zadatku treba izvršni kapacitet koji može da pristupi ciljnim sistemima. Udaljeni izvršioci i slike kontejnera zasebno rešavaju mrežni položaj i zavisnosti okruženja.

PodržanoDelimično podržanoNije podržano
Izvršavanje: AWX i Semaphore UI
Kriterijumi Semaphore UI AWX
Udaljeno izvršavanje Da Da
Namenski izvršni kapacitet DaProProjektni runner-i DaGrupe instanci dodeljene resursima
Usmeravanje izvršavanja DaProOznake runner-a u šablonima ili inventarima DaGrupe instanci dodeljene resursima
Ansible uloge i kolekcije DaInstalacija iz requirements.yml DaInstalacija pri sinhronizaciji projekta
Zadaci u kontejnerima DaProDocker executor DaSlike Ansible izvršnih okruženja
Kubernetes podovi za zadatke DaEnterprise Da
Kontrola paralelnog izvršavanja DaOgraničenja šablona, projekta i instance DaParalelni zadaci i kapacitet grupa instanci

AWX šalje posao izvršnim čvorovima, objedinjenim u grupe instanci koje se dodeljuju organizacijama, inventarima ili šablonima. Semaphore UI izvršava zadatke na serveru ili ih šalje runner-ima. U oba modela izvršne mašine mogu biti blizu ciljnih sistema dok veb-interfejs ostaje centralizovan.

Semaphore UI runner u privatnoj mreži može zakrpiti hostove ili obnoviti sertifikate bez direktne veze sa veb-servera. Projektni runner-i dodeljuju kapacitet projektu, a oznake u šablonima ili inventarima usmeravaju zadatke odgovarajućim runner-ima. To podržava udaljene lokacije i korisnička okruženja. Oznake biraju mašine, ali ne obezbeđuju izolaciju mreža ili cloud naloga.

Izvršno okruženje određuje šta radi na tim mašinama. AWX koristi slike okruženja sa Ansible-om i zavisnostima, a grupe kontejnera mogu kreirati Kubernetes pod po zadatku. Semaphore UI nudi Docker izvršavanje po zadatku u Pro-u i Kubernetes izvršavanje u Enterprise-u. Ove opcije odvojene su od smeštanja samog veb-servisa u kontejner. Oba proizvoda mogu instalirati Ansible uloge i kolekcije iz requirements datoteka repozitorijuma, dok ostale biblioteke i alati pripadaju izvršnoj mašini ili njenoj slici.

Kontrole paralelnog izvršavanja ograničavaju istovremeni rad. AWX kombinuje podešavanja paralelnih zadataka sa izvršnim kapacitetom i ograničenjima grupa instanci. Semaphore UI primenjuje ograničenja instance, projekta i šablona.

AWX može automatski podeliti veliki inventar na paralelne zadatke. Semaphore UI može podeliti posao kroz zasebna pokretanja sa Ansible ograničenjima hostova, dok oznake runner-a biraju izvršne mašine. Tim održava te podskupove i pokretanja. Za postepena ažuriranja, Ansible serial kontroliše uzastopne grupe. To pokriva ciljane zadatke i fazne primene, dok AWX slicing automatski deli inventar za paralelan rad nad celim skupom mašina.

Radni tokovi

Priprema infrastrukture može zahtevati plan, odobrenje, primenu i podešavanje hostova, sa različitim putanjama posle uspeha ili neuspeha. Model radnog toka određuje kako se ti koraci povezuju.

PodržanoDelimično podržanoNije podržano
Radni tokovi: AWX i Semaphore UI
Kriterijumi Semaphore UI AWX
Vizuelni uređivač radnih tokova Da Da
Više početnih čvorova Ne Da
Spajanje grana Da Da
Radni tokovi kao koraci Ne Da
Grane za uspeh i neuspeh Da Da
Koraci odobravanja Da Da
Posebna uloga odobravaoca NeNajavljena za 2.21 Da
Prosleđivanje vrednosti u toku Da Da

AWX radni tokovi povezuju Ansible šablone zadataka, a druge alate pozivaju kroz playbook datoteke. Semaphore UI direktno povezuje šablone za Ansible, Terraform/OpenTofu, Terragrunt, Bash, PowerShell i Python. Oba podržavaju grane uspeha/neuspeha i odobrenja, pa priprema infrastrukture može zastati pre produkcione izmene.

Oba koriste grafove bez petlji i podržavaju all/any uslove prethodnika pri spajanju grana. AWX dozvoljava više početnih čvorova. Semaphore UI počinje jednim čvorom i nudi čvorove zadataka, odobrenja, vremenskog odlaganja i napomena.

AWX može ponovo koristiti ceo tok unutar drugog, čuvajući zajedničku višekoračnu proceduru na jednom mestu. Sprečava rekurzivno izvršavanje i nudi korake ažuriranja repozitorijuma i inventara. Semaphore UI ponovo koristi pojedinačne šablone zadataka u tokovima, ali ne može ugraditi tok kao korak. Razlika je važna kada više primena deli proceduru, a ne samo jedan zadatak.

Semaphore UI uređivač radnog toka sa planom, odobrenjem, primenom i zasebnim granama uspeha i neuspeha.
Semaphore UI. Tok primene sa odobrenjem i odvojenim putanjama uspeha i neuspeha.
Ceo AWX Workflow Visualizer sa planom, odobrenjem, primenom, ugnježdenom proverom izdanja i granom oporavka.
AWX. Odobrenje pre primene, ugnježdeni tok provere i grana oporavka posle neuspeha.

AWX ima zasebno dodeljivu ulogu odobravaoca, a i administratori mogu odobravati. U Semaphore UI-ju 2.20 odobravanje prati dozvolu za pokretanje projektnih zadataka. Ako tim mora nezavisno dodeljivati odobravanje i izvršavanje, ovo je bitna razlika. Posebna Semaphore UI uloga odobravaoca najavljena je za 2.21 i nije deo ovog poređenja.

Oba nude odobravanje kroz UI i autentifikovani API, a AWX ima i Ansible modul. Interaktivno odobravanje u Slack-u zahteva integraciju koja poziva API, a ne samo obaveštenje.

Oba prosleđuju vrednosti kasnijim zadacima, na primer adresu novog hosta. AWX izlaže set_stats vrednosti iz playbook datoteke kao dodatne promenljive narednim zadacima, uključujući izvršne čvorove. Tako playbook može preuzeti rezultat drugog alata. Semaphore UI prikuplja Ansible set_stats, Terraform/OpenTofu/Terragrunt izlaze i JSON iz Bash-a, PowerShell-a ili Python-a, pa ih mapira u odredišne promenljive upitnika prema imenu ili eksplicitnom mapiranju.

U Semaphore UI-ju 2.20 prikupljanje izlaza radi na serveru i udaljenim runner-ima sa lokalnim executor-om. Docker i Kubernetes executor-i još ne proizvode izlaze. Vrednosti se prikupljaju posle uspešnih zadataka, pa grane neuspeha ne mogu zavisiti od izlaza neuspešnog zadatka. Vrednosti su vidljive korisnicima koji vide zadatak i ne smeju sadržati tajne.

Prosleđivanje vrednosti ne prenosi datoteke ni u jednom proizvodu. Ako koraci razmenjuju sačuvani Terraform plan ili drugi artefakt, obezbedite skladište dostupno obema stranama. Ponovno korišćenje runner-a ne garantuje očuvanje radnog direktorijuma između zadataka.

Kontrola pristupa

Podršci može biti potrebno ponovno pokretanje odobrenog servisa bez opšteg pristupa serveru. Delegiranje mora ograničiti i operaciju i ciljne sisteme.

PodržanoDelimično podržanoNije podržano
Kontrola pristupa: AWX i Semaphore UI
Kriterijumi Semaphore UI AWX
Kontrola pristupa prema ulogama DaProjektne uloge, prilagođene uloge u Enterprise-u DaUloge organizacija, timova i resursa
Nezavisne dozvole za inventare i akreditive NePristup resursima prati projektne uloge Da
Dozvole izvršavanja po šablonu DaEnterprise Da
LDAP i OIDC DaPro Da
Jedinstvena prijava preko SAML-a NeDostupan OIDC Da
Dvofaktorska autentifikacija DaProLokalni TOTP DaPreko spoljnog dobavljača identiteta

AWX nezavisno dodeljuje dozvole inventarima, akreditivima i šablonima zadataka. Semaphore UI organizuje pristup oko projekata, uz Enterprise prilagođene uloge i dozvole izvršavanja po šablonu za preciznije delegiranje. Unapred podešen šablon može ponuditi odobrenu operaciju sa odabranim inventarom, akreditivima i parametrima.

Na primer, Semaphore UI Enterprise može dati podršci pristup šablonu ponovnog pokretanja servisa na određenim produkcionim serverima. Osnovna Guest uloga i prilagođena uloga bez projektnih dozvola mogu omogućiti izvršavanje tog šablona. Ograničite izmene inventara, host limita, promenljivih i drugih parametara i proverite da dodatne uloge ne proširuju pristup. Šablon, dozvole i automatizacija zajedno određuju dozvoljenu operaciju, a upitnik samo prikuplja ulazne parametre.

Time se delegiraju konkretne operacije bez nezavisnih dozvola za inventare ili akreditive unutar projekta. AWX je bliži zahtevima kada operatori moraju kombinovati resurse pod zasebnim pravilima pristupa. Semaphore UI dozvole šablona odgovaraju definisanom skupu odobrenih procedura.

Oba podržavaju LDAP i OIDC prijavu. AWX podržava i SAML, a za MFA koristi spoljnog dobavljača identiteta. Semaphore UI nudi lokalnu TOTP dvofaktorsku autentifikaciju. OIDC dobavljač može pokriti centralizovanu Semaphore UI prijavu, dok zahtev samo za SAML traži drugi integracioni pristup.

Evidencije i revizija

Izlaz zadatka pomaže u razumevanju grešaka izvršavanja. Revizija beleži ko je pokrenuo operaciju ili promenio njena podešavanja, uz drugačije zahteve za vidljivost i čuvanje.

PodržanoDelimično podržanoNije podržano
Evidencije i revizija: AWX i Semaphore UI
Kriterijumi Semaphore UI AWX
Istorija i evidencije zadataka Da Da
Čuvanje istorije zadataka DaPoslednji zadaci po šablonu DaPlanirano čišćenje prema starosti
Revizija svih projekata DaAdministratorski dnevnik revizije, uključiti snimanje DaTok aktivnosti, vidljivost prema ulozi
Prosleđivanje u SIEM DaProTLS Syslog i Splunk HEC DaSpoljno evidentiranje, uključujući Splunk

Oba proizvoda čuvaju istoriju i izlaz zadataka za rešavanje problema. Vidljivost revizije razlikuje se: AWX tok aktivnosti prati dozvole resursa i uloge administratora ili revizora. Semaphore UI pregled revizije svih projekata dostupan je administratorima, a događaji se čuvaju u bazi kada je beleženje revizije uključeno.

Za centralne istrage, AWX spoljno evidentiranje prosleđuje zapise aktivnosti, zadataka i servera, uključujući Splunk. Semaphore UI Pro dodaje filtere revizije, CSV ili JSONL izvoz i prosleđivanje kroz TLS Syslog ili Splunk HEC. Oba mogu slati događaje platformi za evidenciju ili sistemu za upravljanje bezbednosnim informacijama i događajima (SIEM).

Lokalno čuvanje ima različite kontrole. AWX nudi planirano čišćenje istorije i toka aktivnosti prema starosti. Semaphore UI čuva podešen broj poslednjih zadataka po šablonu. Centralni sistem evidencije može čuvati zapise duže od tih lokalnih ograničenja.

Integracije

Izmene repozitorijuma i zahtevi servisnog portala mogu pokretati automatizaciju. API-ji, veb-hukovi i obaveštenja povezuju te događaje sa zadacima i rezultatima.

PodržanoDelimično podržanoNije podržano
Integracije: AWX i Semaphore UI
Kriterijumi Semaphore UI AWX
REST API Da Da
Veb-hukovi zadataka DaOpšti endpoint-i, pravila podudaranja, izdvajanje vrednosti DaGitHub i GitLab veb-hukovi
Obaveštenja o zadacima Da Da

AWX pruža ugrađene GitHub i GitLab veb-hukove za zadatke koji pokreću automatizaciju na osnovu događaja u repozitorijumu. Semaphore UI nudi opšte veb-huk endpoint-e sa proverom podudaranja zahteva i izdvajanjem ulaznih parametara zadatka. Oni mogu primati događaje iz različitih sistema, dok REST API-ji oba proizvoda podržavaju i druge klijente.

Za izlazna obaveštenja AWX podržava email, Slack, Rocket.Chat, Mattermost, PagerDuty, AWS SNS, Grafana, IRC, Twilio i veb-huk obaveštenja. Semaphore UI podržava email (SMTP), Telegram, Slack, Microsoft Teams, Rocket.Chat, DingTalk i Gotify. Ona obaveštavaju ljude ili servise o događajima zadataka, dok ulazni veb-hukovi zadataka pokreću automatizaciju.

Servisni portal ili ITSM sistem može koristiti bilo koji REST API da pokrene pripremljen zadatak i preuzme rezultat. Na primer, interni portal može poslati zahtev za obnavljanje sertifikata sačuvanom šablonu i obavestiti podnosioca o završetku. To je integracija putem API-ja koju tim podešava, a ne namenski nativni konektor.

Automatizacija uz AI asistente

Obe platforme pružaju asistentima za programiranje kao što su Claude Code i Codex korisne materijale: javnu dokumentaciju, otvoreni kod i dokumentovane API-je. Asistent može pregledati primere konfiguracije, istražiti kako je neko podešavanje implementirano i koristiti API definicije za pripremu integracionog koda. Uz odgovarajuću konfiguraciju i izlaz zadatka može pomoći i u istraživanju grešaka. To omogućava podešavanje i rešavanje problema uz AI asistenta bez posebne AI funkcije ugrađene u platformu.

MCP konektori zajednice dostupni su za AWX i Semaphore UI. U zavisnosti od konektora, oni povezuju asistente sa operacijama platforme, poput pronalaženja šablona, pokretanja zadataka i preuzimanja rezultata. Tim tako može koristiti pripremljenu automatizaciju kroz asistenta, dok definicije i izvršavanje zadataka ostaju u platformi.

Semaphore UI je najavio zvaničnu MCP podršku za Pro u verziji 2.21.0.

Licenciranje i podrška

AWX i Semaphore UI nude besplatan softver otvorenog koda. Glavna razlika je u tome kako timovi dobijaju komercijalne funkcije, podršku dobavljača i ugovorne obaveze kada automatizacija postane važnija za poslovanje.

Otvoreni kod i komercijalne opcije

AWX koristi Apache 2.0 licencu i podršku zajednice. Takođe je upstream projekat za automation controller komponentu Red Hat Ansible Automation Platform-e (AAP). Red Hat ne prodaje pretplatu za podršku samom AWX-u. Komercijalno podržana ponuda je AAP, zasebna poslovna platforma koja kombinuje automation controller sa dodatnim komponentama, sertifikovanim sadržajem i definisanim životnim ciklusom proizvoda.

Semaphore UI prati open-core model. Community je besplatan pod MIT licencom, dok Pro i Enterprise dodaju komercijalne funkcije i podršku dobavljača u istoj porodici proizvoda. Pro je namenjen manjim inženjerskim timovima koji uvode automatizaciju u svakodnevni rad. Enterprise pokriva zahtevnije potrebe za pristupom, izvršavanjem, dostupnošću i podrškom.

Komercijalne ponude zato pokrivaju različite potrebe kupovine. AAP je ulaganje u širu poslovnu platformu. Semaphore UI planovi namenjeni su inženjerskim timovima i srednjim organizacijama, uz Enterprise za složena ili poslovno kritična okruženja. Timovi mogu dobiti napredne kontrole i podršku dobavljača, zadržavajući ulaganje usmereno na potreban servis automatizacije.

Podrška i ugovorne obaveze

AWX korisnici mogu postavljati pitanja, prijavljivati greške i doprinositi ispravkama kroz kanale zajednice. Pomoć zajednice ne uspostavlja obavezu dobavljača da odgovori u određenom roku ili podrži incident. AAP pretplata daje Red Hat podršku za AAP, ali ne proširuje podršku na postojeću AWX instalaciju.

Semaphore UI Community takođe pruža pomoć prema mogućnostima, bez SLA podrške. Pro uključuje podršku dobavljača u radno vreme, dok Enterprise nudi prilagođene SLA opcije i pomoć pri uvođenju, podešavanju, nadogradnjama i migraciji. Komercijalni kupci imaju direktan odnos sa dobavljačem, uz obaveze podrške definisane planom i ugovorom.

Planiranje izdanja i održavanja

AWX trenutno navodi da su izdanja pauzirana tokom obimnog refaktorisanja. Semaphore UI nastavlja da objavljuje izdanja i održava bezbednosnu politiku koja navodi podržane verzije. Ove razlike su važne pri planiranju nadogradnji i održavanja. Pregledajte istoriju izdanja, bezbednosne politike i uputstva za nadogradnju željene verzije, zajedno sa ugovornim obavezama podrške.

Kako izabrati

Obe platforme omogućavaju timovima da dele automatizaciju, planiraju zadatke i pregledaju rezultate. Birajte prema tome kako upravljate podacima hostova, delegirate operacije, smeštate servis i dobijate podršku.

Kada izabrati AWX

AWX je dobar izbor kada je Ansible ključan za automatizaciju i njegov model resursa odgovara svakodnevnom radu.

  • Upravljanje inventarima kroz platformu je osnovni zahtev. Operatori se oslanjaju na platformu za održavanje zapisa hostova i grupa, osvežavanje inventara i čuvanje činjenica hostova u svakodnevnom radu.
  • Inventari i akreditivi zahtevaju sopstvena pravila pristupa. Tim mora dodeljivati dozvole pojedinačnim inventarima i akreditivima nezavisno od šablona, tako da operatori kombinuju samo resurse za koje imaju ovlašćenje.
  • Kubernetes odgovara postojećoj infrastrukturi. Tim već održava klaster, pa se preporučena AWX primena uklapa u postojeće sisteme i veštine.
  • Ansible već orkestrira vaše procedure. Playbook datoteke pokrivaju potrebne operacije, uključujući pozive drugih alata, a Ansible izvršna okruženja obezbeđuju njihove zavisnosti.
  • Podrška zajednice zadovoljava potrebe. Tim ima znanje i kapacitet da istraži incidente, proceni bezbednosna obaveštenja i održava instalaciju bez SLA odgovora dobavljača.

Kada izabrati Semaphore UI

Semaphore UI je dobar izbor kada želite jednostavan servis za pokretanje i deljenje automatizacije uz postojeće alate i infrastrukturu.

  • Inventari su već u Git-u ili spoljnim sistemima. Želite ponovo koristiti Ansible definicije inventara i dodatke koji otkrivaju hostove iz NetBox-a, cloud API-ja ili drugih izvora pri izvršavanju.
  • Kolegama treba pristup pripremljenim operacijama. Inženjeri definišu zadatke poput primene, ponovnog pokretanja servisa ili obnavljanja sertifikata. Ostali članovi tima ih pokreću sa potrebnim ulazima, dok inventari i akreditivi ostaju deo pripremljene konfiguracije.
  • Želite primenu bez Kubernetes-a. Binarne datoteke, nativni paketi i Docker omogućavaju korišćenje postojećeg servera, bez klastera uvedenog samo za automatizaciju.
  • Automatizacija obuhvata više alata. Namenski šabloni direktno pokreću Ansible, Terraform/OpenTofu, Terragrunt, Bash, PowerShell i Python, dok radni tokovi povezuju njihove operacije.
  • Želite direktan put do komercijalne podrške. Komercijalne licence dodaju podršku dobavljača i napredne funkcije u istoj porodici proizvoda, pa možete dobiti ugovorne obaveze podrške i nastaviti da koristite Semaphore UI.

Česta pitanja

Može li Semaphore UI zameniti AWX?

Da, ako njegov model inventara, dozvola i radnih tokova pokriva vaše zahteve. Postojeći playbook datoteke često se mogu ponovo koristiti, dok konfiguraciju zadataka i kontrolu pristupa treba mapirati i testirati. Proverite zavisnosti od AWX-specifičnih funkcija, naročito ugnježdenih tokova, nezavisnih dozvola inventara ili akreditiva i upravljanog keša činjenica.

Mogu li ponovo koristiti postojeće Ansible playbook datoteke?

Počnite istim repozitorijumom i playbook datotekama. Podesite potreban inventar, akreditive, promenljive, kolekcije i izvršne zavisnosti u Semaphore UI-ju, pa testirajte reprezentativna pokretanja. Ponovna upotreba koda ne znači automatski uvoz svih AWX podešavanja.

Šta proveriti pri migraciji sa AWX-a?

Počnite jednim reprezentativnim tokom. Ponovo koristite playbook datoteke gde je moguće, pa mapirajte inventare, akreditive, promenljive, upitnike, rasporede i izvršne zavisnosti. Zasebno proverite dozvole, odobrenja, ugnježdene tokove i prenos vrednosti ili datoteka. Uvoz može skratiti podešavanje, ali ne dokazuje isto ponašanje zadatka. Testirajte pre uključivanja produkcionih rasporeda.

Koje Semaphore UI funkcije zahtevaju plaćeno izdanje?

Community pokriva osnovni interfejs zadataka i radne tokove. Projektni runner-i, Docker izvršavanje i integracije spoljnih trezora dostupni su od Pro-a. Prilagođene uloge, dozvole šablona, Kubernetes izvršavanje i visoka dostupnost zahtevaju Enterprise. Pri proceni plana proverite funkciju i potreban kapacitet.

Mogu li zadržati SAML prijavu posle migracije?

AWX direktno podržava SAML. Semaphore UI podržava LDAP i OIDC, ali nema nativnu SAML integraciju. Dobavljač identiteta koji nudi i OIDC može pokriti prijavu. Zasebno proverite mapiranje korisnika i grupa, jer promena protokola ne obnavlja AWX dozvole.

Da li Semaphore UI zahteva Kubernetes?

Ne. Dostupne su binarne datoteke, paketi i Docker. Kubernetes je opciona primena. Alati za automatizaciju i odgovarajuća baza i dalje su deo okruženja.

Može li AWX pokrenuti Terraform ili koristiti HashiCorp Vault?

Da. Plejbook-ovi mogu izvršavati Terraform komande ili module kolekcija, a AWX podržava HashiCorp Vault preuzimanje akreditiva. Semaphore UI nudi drugačiji model kroz namenske Terraform/OpenTofu šablone i opcioni Pro HTTP backend stanja.

Da li platforme podržavaju udaljeno izvršavanje?

Obe mogu izvršavati zadatke na udaljenim serverima. AWX koristi izvršne čvorove grupisane za različite timove i opterećenja. Semaphore UI koristi runner agente. Podešavanja i modeli pristupa razlikuju se.

Da li je članak bio koristan?

Izvori

  1. ARA Records Ansible, “ARA Records Ansible”. URL: https://ara.recordsansible.org/ (pristupljeno: ).
  2. Semaphore UI, “Semaphore runner output capture and executor limits”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/services/runners/job_pool.go#L167-L192 (pristupljeno: ).
  3. Semaphore UI, “Semaphore task dispatch, runner routing, concurrency and remote workflow outputs”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/services/tasks/TaskPool.go (pristupljeno: ).
  4. Semaphore UI, “Semaphore workflow input mapping model”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/db/Workflow.go#L27-L44 (pristupljeno: ).
  5. Semaphore UI, “Semaphore task template options and survey field types”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/db/Template.go (pristupljeno: ).
  6. Semaphore UI, “Semaphore NetBox dynamic inventory example”. URL: https://semaphoreui.com/docs/user-guide/inventory/netbox-dynamic-inventory (pristupljeno: ).
  7. Semaphore UI, “Semaphore Consul inventory script”. URL: https://semaphoreui.com/docs/user-guide/inventory/consul-dynamic-inventory (pristupljeno: ).
  8. Ansible community, “NetBox Ansible inventory plugin”. URL: https://docs.ansible.com/projects/ansible/latest/collections/netbox/netbox/nb_inventory_inventory.html (pristupljeno: ).
  9. Ansible community, “AWS EC2 Ansible inventory plugin”. URL: https://docs.ansible.com/projects/ansible/latest/collections/amazon/aws/aws_ec2_inventory.html (pristupljeno: ).
  10. Ansible community, “Azure Ansible inventory plugin”. URL: https://docs.ansible.com/projects/ansible/latest/collections/azure/azcollection/azure_rm_inventory.html (pristupljeno: ).
  11. Ansible community, “Google Cloud Ansible inventory plugin”. URL: https://docs.ansible.com/projects/ansible/latest/collections/google/cloud/gcp_compute_inventory.html (pristupljeno: ).
  12. Semaphore UI, “Semaphore cloning of inventory repositories”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/services/tasks/local_executor_inventory.go (pristupljeno: ).
  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 (pristupljeno: ).
  14. Semaphore UI, “Semaphore survey field types”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/web/src/components/SurveyVars.vue (pristupljeno: ).
  15. Semaphore UI, “Semaphore survey inputs and task launch form”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/web/src/components/TaskForm.vue (pristupljeno: ).
  16. Semaphore UI, “What is Semaphore UI?”. URL: https://semaphoreui.com/docs/introduction/what-is-semaphore (pristupljeno: ).
  17. AWX project, “AWX user guide”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/index.html (pristupljeno: ).
  18. Semaphore UI, “Semaphore source and MIT license”. URL: https://github.com/semaphoreui/semaphore (pristupljeno: ).
  19. AWX project, “AWX source and Apache 2.0 license”. URL: https://github.com/ansible/awx (pristupljeno: ).
  20. Semaphore UI, “Semaphore setup and first run”. URL: https://semaphoreui.com/docs/getting-started (pristupljeno: ).
  21. Semaphore UI, “Semaphore installation methods and dependencies”. URL: https://semaphoreui.com/docs/admin-guide/installation (pristupljeno: ).
  22. AWX project, “AWX installation paths”. URL: https://github.com/ansible/awx/blob/24.6.1/INSTALL.md (pristupljeno: ).
  23. AWX project, “AWX Operator installation”. URL: https://docs.ansible.com/projects/awx-operator/en/latest/installation/basic-install.html (pristupljeno: ).
  24. Semaphore UI, “Semaphore high availability prerequisites”. URL: https://semaphoreui.com/docs/admin-guide/ha#prerequisites (pristupljeno: ).
  25. AWX project, “AWX web and task replica scaling”. URL: https://docs.ansible.com/projects/awx-operator/en/latest/user-guide/advanced-configuration/scaling-the-web-and-task-pods-independently.html (pristupljeno: ).
  26. Semaphore UI, “Semaphore automation applications”. URL: https://semaphoreui.com/docs/user-guide/apps (pristupljeno: ).
  27. Semaphore UI, “Semaphore task templates”. URL: https://semaphoreui.com/docs/user-guide/task-templates (pristupljeno: ).
  28. AWX project, “AWX job templates and surveys”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/job_templates.html (pristupljeno: ).
  29. Semaphore UI, “Survey variables”. URL: https://semaphoreui.com/docs/user-guide/task-templates/survey-vars (pristupljeno: ).
  30. Semaphore UI, “Terraform and OpenTofu in Semaphore”. URL: https://semaphoreui.com/docs/user-guide/apps/terraform (pristupljeno: ).
  31. Ansible community, “Ansible Terraform module”. URL: https://docs.ansible.com/projects/ansible/latest/collections/community/general/terraform_module.html (pristupljeno: ).
  32. Semaphore UI, “Semaphore Terraform HTTP backend”. URL: https://semaphoreui.com/docs/user-guide/apps/terraform/states (pristupljeno: ).
  33. Semaphore UI, “Semaphore workflow nodes and approvals”. URL: https://semaphoreui.com/docs/user-guide/workflows (pristupljeno: ).
  34. Semaphore UI, “Semaphore inventory types and stored resources”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/db/Inventory.go (pristupljeno: ).
  35. AWX project, “AWX job slicing”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/job_slices.html (pristupljeno: ).
  36. Semaphore UI, “Semaphore workflow approval API routes”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/api/router.go (pristupljeno: ).
  37. AWX project, “AWX resource, workflow approval and activity-stream access control”. URL: https://github.com/ansible/awx/blob/24.6.1/awx/main/access.py (pristupljeno: ).
  38. AWX project, “AWX workflow approval Ansible module”. URL: https://github.com/ansible/awx/blob/24.6.1/awx_collection/plugins/modules/workflow_approval.py (pristupljeno: ).
  39. AWX project, “AWX workflow branch convergence”. URL: https://github.com/ansible/awx/blob/24.6.1/awx/main/scheduler/dag_workflow.py#L51-L112 (pristupljeno: ).
  40. AWX project, “AWX Terraform State inventory source”. URL: https://github.com/ansible/awx/blob/24.6.1/docs/docsite/rst/userguide/inventories.rst#L1092-L1121 (pristupljeno: ).
  41. AWX project, “AWX instance-group capacity limits”. URL: https://github.com/ansible/awx/blob/24.6.1/docs/docsite/rst/administration/containers_instance_groups.rst#L247-L263 (pristupljeno: ).
  42. AWX project, “AWX custom credential types”. URL: https://github.com/ansible/awx/blob/24.6.1/docs/credentials/custom_credential_types.md (pristupljeno: ).
  43. AWX project, “AWX workflows”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/workflow_templates.html (pristupljeno: ).
  44. AWX project, “AWX workflow branching and output variables”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/workflows.html (pristupljeno: ).
  45. AWX project, “AWX collection of Ansible workflow variables”. URL: https://github.com/ansible/awx/blob/24.6.1/awx/main/tasks/callback.py#L156-L160 (pristupljeno: ).
  46. AWX project, “AWX processing of execution-node events”. URL: https://github.com/ansible/awx/blob/24.6.1/awx/main/tasks/receptor.py#L544-L553 (pristupljeno: ).
  47. AWX project, “AWX inheritance of variables between workflow jobs”. URL: https://github.com/ansible/awx/blob/24.6.1/awx/main/models/workflow.py#L324-L354 (pristupljeno: ).
  48. Semaphore UI, “Semaphore global runners”. URL: https://semaphoreui.com/docs/admin-guide/runners/ (pristupljeno: ).
  49. Semaphore UI, “Semaphore project runners”. URL: https://semaphoreui.com/docs/user-guide/projects/runners (pristupljeno: ).
  50. AWX project, “AWX execution and hop nodes”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/administration/instances.html (pristupljeno: ).
  51. AWX project, “AWX execution environments”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/execution_environments.html (pristupljeno: ).
  52. AWX project, “AWX Kubernetes container groups”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/administration/containers_instance_groups.html (pristupljeno: ).
  53. Semaphore UI, “Semaphore inventories”. URL: https://semaphoreui.com/docs/user-guide/inventory (pristupljeno: ).
  54. AWX project, “AWX inventories”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/inventories.html (pristupljeno: ).
  55. Semaphore UI, “Semaphore project access”. URL: https://semaphoreui.com/docs/user-guide/projects (pristupljeno: ).
  56. Semaphore UI, “Semaphore team roles and template-level permissions”. URL: https://semaphoreui.com/docs/user-guide/team#extended-rbac (pristupljeno: ).
  57. AWX project, “AWX role-based access controls”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/rbac.html (pristupljeno: ).
  58. Semaphore UI, “Semaphore LDAP and OIDC authentication”. URL: https://semaphoreui.com/docs/admin-guide/authentication (pristupljeno: ).
  59. AWX project, “AWX LDAP, OIDC and SAML authentication”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/administration/ent_auth.html (pristupljeno: ).
  60. Semaphore UI, “Semaphore Key Store”. URL: https://semaphoreui.com/docs/user-guide/key-store (pristupljeno: ).
  61. AWX project, “AWX credentials and secret lookups”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/credentials.html (pristupljeno: ).
  62. AWX project, “AWX external secret management integrations”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/credential_plugins.html (pristupljeno: ).
  63. Semaphore UI, “Semaphore OpenBao secret storage”. URL: https://semaphoreui.com/docs/user-guide/key-store/openbao (pristupljeno: ).
  64. Semaphore UI, “Semaphore Devolutions Server secret storage”. URL: https://semaphoreui.com/docs/user-guide/key-store/devolutions-server (pristupljeno: ).
  65. Semaphore UI, “Semaphore webhook integrations”. URL: https://semaphoreui.com/docs/user-guide/integrations (pristupljeno: ).
  66. AWX project, “AWX webhooks”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/webhooks.html (pristupljeno: ).
  67. Semaphore UI, “Semaphore REST API”. URL: https://semaphoreui.com/api-docs (pristupljeno: ).
  68. Ansible community, “Ansible command execution”. URL: https://docs.ansible.com/projects/ansible/latest/collections/ansible/builtin/command_module.html (pristupljeno: ).
  69. Ansible community, “Ansible PowerShell module”. URL: https://docs.ansible.com/projects/ansible/latest/collections/ansible/windows/win_powershell_module.html (pristupljeno: ).
  70. Semaphore UI, “Semaphore notification channels”. URL: https://semaphoreui.com/docs/admin-guide/notifications (pristupljeno: ).
  71. AWX project, “AWX notifications”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/notifications.html (pristupljeno: ).
  72. Semaphore UI, “Semaphore task history and output”. URL: https://semaphoreui.com/docs/user-guide/tasks (pristupljeno: ).
  73. Semaphore UI, “Semaphore scheduled tasks”. URL: https://semaphoreui.com/docs/user-guide/schedules (pristupljeno: ).
  74. AWX project, “AWX activity stream”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/main_menu.html (pristupljeno: ).
  75. Semaphore UI, “Semaphore Community, Pro and Enterprise”. URL: https://semaphoreui.com/pricing (pristupljeno: ).
  76. Red Hat, “Red Hat: AWX and Ansible Automation Platform”. URL: https://www.redhat.com/en/technologies/management/ansible/compare-awx-vs-ansible-automation-platform (pristupljeno: ).
  77. Red Hat, “Red Hat automation controller, formerly Ansible Tower”. URL: https://www.redhat.com/en/technologies/management/ansible/automation-controller (pristupljeno: ).
  78. Semaphore UI, “Semaphore stable releases”. URL: https://github.com/semaphoreui/semaphore/releases (pristupljeno: ).
  79. AWX project, “AWX release history”. URL: https://github.com/ansible/awx/releases (pristupljeno: ).
  80. Semaphore MCP contributors, “Semaphore MCP connector”. URL: https://github.com/cloin/semaphore-mcp (pristupljeno: ).
  81. Semaphore MCP contributors, “Semaphore MCP task execution and output”. URL: https://github.com/cloin/semaphore-mcp/blob/72f5b7008f6d560c74e01da9884e6fddbbf68999/src/semaphore_mcp/tools/tasks.py (pristupljeno: ).
  82. LY Corporation, “AWX MCP connector and compatibility”. URL: https://github.com/lycorp-jp/awx-mcp/tree/fa4d25ffa9e04967e98dc66b219a0481d61ea814 (pristupljeno: ).
  83. LY Corporation, “AWX MCP job template execution”. URL: https://github.com/lycorp-jp/awx-mcp/blob/fa4d25ffa9e04967e98dc66b219a0481d61ea814/awx_mcp/tools/job_templates.py (pristupljeno: ).
  84. LY Corporation, “AWX MCP job output”. URL: https://github.com/lycorp-jp/awx-mcp/blob/fa4d25ffa9e04967e98dc66b219a0481d61ea814/awx_mcp/tools/jobs.py (pristupljeno: ).
  85. HashiCorp, “Terraform local state backend”. URL: https://developer.hashicorp.com/terraform/language/backend/local (pristupljeno: ).
  86. HashiCorp, “Terraform state locking”. URL: https://developer.hashicorp.com/terraform/language/state/locking (pristupljeno: ).
  87. Semaphore UI, “Semaphore variable groups”. URL: https://semaphoreui.com/docs/user-guide/environment (pristupljeno: ).
  88. Semaphore UI, “Semaphore runner selection and capacity”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/services/tasks/RemoteJob.go (pristupljeno: ).
  89. Semaphore UI, “Semaphore cron and one-time schedule execution”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/services/schedules/SchedulePool.go (pristupljeno: ).
  90. AWX project, “AWX schedules”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/scheduling.html (pristupljeno: ).
  91. Ansible community, “Ansible constructed inventory plugin”. URL: https://docs.ansible.com/projects/ansible/latest/collections/ansible/builtin/constructed_inventory.html (pristupljeno: ).
  92. Ansible community, “Ansible cache plugins”. URL: https://docs.ansible.com/projects/ansible/latest/plugins/cache.html (pristupljeno: ).
  93. Semaphore UI, “View and export the Semaphore audit log”. URL: https://semaphoreui.com/docs/admin-guide/audit-log/view (pristupljeno: ).
  94. Semaphore UI, “Semaphore administrator audit-log access”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/api/audit_log.go (pristupljeno: ).
  95. AWX project, “AWX logging and aggregation”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/administration/logging.html (pristupljeno: ).
  96. Semaphore UI, “Semaphore audit log”. URL: https://semaphoreui.com/docs/admin-guide/audit-log (pristupljeno: ).
  97. Semaphore UI, “Ansible role and collection installation”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/db_lib/AnsibleApp.go (pristupljeno: ).
  98. Semaphore UI, “Task-history cleanup”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/db/sql/task.go (pristupljeno: ).
  99. Semaphore UI, “Ansible inventory overrides”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/services/tasks/TaskRunner.go (pristupljeno: ).
  100. AWX project, “Projects, Ansible Galaxy and collections”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/userguide/projects.html#ansible-galaxy-support (pristupljeno: ).
  101. AWX project, “Management jobs”. URL: https://docs.ansible.com/projects/awx/en/24.6.1/administration/management_jobs.html (pristupljeno: ).
  102. Semaphore UI, “Terraform plan and apply execution”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/db_lib/TerraformApp.go (pristupljeno: ).
  103. Semaphore UI, “Repository working directories”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/db/Repository.go (pristupljeno: ).
  104. HashiCorp, “Terraform plan command”. URL: https://developer.hashicorp.com/terraform/cli/commands/plan (pristupljeno: ).
  105. HashiCorp, “Terraform apply command”. URL: https://developer.hashicorp.com/terraform/cli/commands/apply (pristupljeno: ).
  106. Semaphore UI, “Security policy”. URL: https://github.com/semaphoreui/semaphore/security/policy (pristupljeno: ).
  107. AWX project, “Security policy”. URL: https://github.com/ansible/awx/security/policy (pristupljeno: ).
  108. AWX project, “Release status and project overview”. URL: https://github.com/ansible/awx/blob/devel/README.md (pristupljeno: ).
  109. Semaphore UI, “Semaphore notification channel implementation”. URL: https://github.com/semaphoreui/semaphore/blob/58a596ed20b724af67c468588edcda12d1779549/services/tasks/alert.go (pristupljeno: ).

Poređenje je pripremio Semaphore UI tim na osnovu gore navedenih dokumenata, repozitorijuma i cenovnika. Datumi pristupa zabeleženi su za svaki izvor.