Dost možná máte ve firmě hned několik FTP serverů. Možná jsou tam logy nějakých aplikací, backup soubory, datové exporty. To všechno vzniklo historicky, například někdo kdysi udělal skript, který přes FTP přetáhl něco někam. Možná to není ideální řešení. Není to konsolidované, soubory mohou kdykoli zmizet, protože není nutně dořešena nějaká záloha nebo geo-replikace, čas od času některá z VM s FTP serverem spadne a poznáme to až na konci měsíce, kdy neproběhne správně účetní závěrka (třeba to byl právě ten skript migrující něco někam). No a jestli máte FTP za firewallem a NATem, tak znáte jak musí bezpečáci neochotně vytvářet zvláštní pravidla pro vás. Co najít způsob, jak data zkopírovat do cloudu na jedno integrované geo-replikované spolehlivé místo? Následně můžeme některé ty procesy místo skriptů řešit přímo orchestrací v cloudu.
Cílem tohoto článku není polemizovat, zda jsou ve firmách FTP servery nebo ne, ale vyzkoušet si jednoduchý (a tím i dobře pochopitelný) příklad Azure Logic Apps. Dnes budeme poslouchat FTP server a když na něm objevíme nějaký nový soubor, nakopírujeme ho do Azure Blob Storage. Nic složitého ... a to je záměr.
Nejprve si posbírejme potřebná data. Jednak tedy adresu FTP serveru a login. Dále název Azure Storage, kontejneru a přístupový klíč. Tyto najdete v portálu.
Vytvořte si logickou aplikaci.
Až bude připravena, klikněte na ni a otevře se vám designer. Vybereme si prázdný.
Začneme FTP serverem.
Zadejte údaje o FTP serveru.
Zadejte interval sledování (v praxi bych tedy minutu nedával, pokud to není nutné, šel bych na 5 minut) a adresář na FTP serveru.
Máme hotovo, přidejte další krok. Všimněte si možností, ale my zvolíme jednoduše rovnou akci.
Zvolíme vytvoření objektu ve Storage.
Napojíme se na Storage.
Vyberte kontejner a v políčku pro název a obsah objektu klikněte. Designer vám nabídne výstupy předchozích kroků, nám se hodí název souboru na FTP a jeho obsah.
Uložte.
Spusťte.
No a přidejte soubor na FTP serveru a budeme chvíli čekat. Pokud všechno dobře dopadlo, objeví se vám tohle:
No a v blob storage ... tadá ... nalezneme příslušný nový soubor z FTP serveru.
Takhle tedy fungují Logic Apps. Pokud chcete, klikněte na Code View, kde si můžete prohlédnout zápis flow jako JSON struktury (to můžete dávat do version control, automatizovat tvorbu Logic Apps desired state principy apod.). Jednoduchý příklad jsme si zkusili, přidejte větvení a složitější operace a určitě si dokážete představit dost užitečné integrace aplikací, které ve firmě používáte.