Puikus atvirojo kodo užduočių planuotojas

Be to, cron nemoka vesti įrašų – kaip galite lengvai atskirti, ar užduotis buvo sėkmingai atlikta praėjusį, ar prieš tai? „Cron“ gali siųsti el. laiškus žmonėms iškilus problemai, bet kai jums jų labiausiai reikia, galite lažintis, kad jie atsidurs neprižiūrimose paskyrose.

Puikus atvirojo kodo užduočių planuotojas

Taigi, jei cron ir užduočių planuoklis nėra idealūs, ko tiksliai mums reikia iš užduočių planavimo sprendimo? Mums reikia centralizuoto, paskirstyto sprendimo su viena valdymo sąsaja, kurioje galėtume matyti visą įprastą užduotis, kurios turi būti vykdomos, ir ji turi būti paskirstyta taip, kad niekada nepasikliautume tik vienu veikiančiu įrenginiu. Pavyzdžiui, jei užduotį reikia vykdyti kas valandą, norime ją nustatyti naudodami vieną valdymo sąsają, bet pasakyti, kad ji gali būti vykdoma iš bet kurio įrenginio.

Akivaizdu, kad mums reikės prieigos prie tos vienos valdymo sąsajos iš daugiau nei vieno įrenginio. Taip pat norėtume, kad valdymo sąsaja pateiktų darbų istorijas, kad žinotume, ar ir kodėl kuri nors užduotis nepavyko. Galiausiai, jis turi būti saugus ir patikimas bei veikti su mūsų Unix ir Windows serveriais. Patikėkite ar ne, yra nemažai atvirojo kodo sprendimų, atitinkančių šią sąvoką: ne visi jie atitinka mūsų reikalavimus, tačiau daugelis jų nuolat tobulinami.

Kodėl gi ne perdavus užduočių valdymą?

Mano įmonė savo el. pašto sistemą perdavė „Google Apps“, daugumą DNS paieškų – „OpenDNS“, o telefono sistemą – „VoIP“ bendrovei, taigi kodėl neturėtume perduoti ir įprastų užduočių valdymo?

Yra keletas įmonių, siūlančių „žiniatinklio cron paslaugas“, veikiančias iš išorinių serverių, kurie reikiamu laiku pasiekia puslapius jūsų žiniatinklio serveriuose. Tikimasi, kad jie išspręs savo sistemų atsparumo problemą ir turės savo centralizuotą valdymo sąsają.

Ortro

Tokios paslaugos idealiai tinka žmonėms, kurie naudojasi žiniatinklio priegloba ir todėl neturi prieigos prie tokių įrenginių kaip cron. Mes galime suteikti dar didesnį paslaugos atsparumą, nes puslapiai, prie kurių jie patenka, bus aptarnaujami per apkrovos balansavimo priemones, taigi padalijami per visą mūsų serverių ūkį.

Svarstėme pasinaudoti viena iš šių paslaugų, bet yra dvi priežastys, kodėl to nedarėme. Pirma, kai kurios užduotys, kurias turime atlikti, gali užtrukti gana ilgai ir gali būti, kad interneto ryšys negali būti pakankamai ilgai atidarytas, todėl nebūtume tikri, kad nuotolinė paslauga iš tikrųjų užregistravo sėkmę ar nesėkmę teisingai.

Antra, susirūpinimą kelia saugumas, nes mes savo vidinius verslo procesus kontroliuojame iš išorės. Nors tai nebūtų didelė problema mums, bet, tarkime, finansų įmonėms, ir bet kuris kompetentingas saugumo patarėjas patartų prieš tai.

Ortro: internetinis cron pakaitalas

Atmetę išorinį žiniatinklio sprendimą, pasidomėjome, ar yra atvirojo kodo sistema, kurią galėtume panaudoti. Mes susidūrėme su Ortro, žiniatinklio sistema, kurioje užduotys nustatomos per žiniatinklio sąsają, o visa konfigūracija saugoma duomenų bazėje.

Tai išsprendžia daugybę problemų, nes tą konfigūracijos duomenų bazę galime saugoti savo replikuotame duomenų bazės serveryje ir paleisti jos žiniatinklio sąsają iš kelių mašinų.

Norėdami įgyvendinti pagrindinį planavimo procesą, „Ortro“ naudoja cron, kad pradėtų veikti. Kadangi tam, kad veiktų, viename įrenginyje naudojama cron, ji turi turėti tam tikrų priemonių užduotims vykdyti kitos mašinos, kurias jis gali atlikti prisijungdamas prie tinklalapių arba paleisdamas nuotolinius apvalkalus per SSH.