JAM stack

Co to je JAM Stack? To je pojmenování moderního způsobu jak vytvářet weby pomocí clientského Javascriptu, API a Markupu.

Tento stack není žádná novinka, ale dlouho chybělo dobré pojmenování. Nejlepší příklad většího použití podle mne je přechod Smashing Magazine, který pěkně poslali v článku.

Nejdůležitější věci co definují JAMstack:

  • používá CDN
  • používá místo databáze Git
  • markup se převádí pomocí automatického buildu

Docker - multi stage build

Tato novinka je dostupná v poslední verzi Dockeru 17.05, musíte mít Edge edici a se zapnutými experimentálním funkcemi, ale objeví se to v další stabilní verzi. Je pro jistotu tady je výpis z mého docker version.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$ docker version
Client:
 Version:      17.05.0-ce-rc1
 API version:  1.29
 Go version:   go1.7.5
 Git commit:   2878a85
 Built:        Tue Apr 11 20:55:05 2017
 OS/Arch:      darwin/amd64

Server:
 Version:      17.05.0-ce-rc1
 API version:  1.29 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   2878a85
 Built:        Tue Apr 11 20:55:05 2017
 OS/Arch:      linux/amd64
 Experimental: true

Jenkins Declarative Pipelines

Dnes Jenkins zveřejnil betu nového formátu pro popis Continues Delivery Pipelines.

Pipeline se serie kroků, které vám dovolí orchestovat práci, kterou potřebujete k buildu, testovaní a nasazení aplikace. Pipelines jsou definovány v souboru Jenkinsfile a je uložen v kořenovém adresáři repozitáře projektu.

Jenkins 2.0 - novinky a vylepšení - 2.část

V minulé části jsem probíral proč je důležité mít definice v souboru a proč potřebujeme Continues Delivery Pipelines.

V tomto příspěvku se budu věnovat dalším bodům:

  • distributed job across multiple nodes
  • autoscaling on traffic with lowest possible price
  • solution for caching for installations
  • docker support
  • matrix builds

V Jenkinsu je podpora pro distribuované agenty, dnes můžete mít jednotlivé stroje v AWS (pomocí ec2, ec2-fleet pluginů), OpenStack, Docker, Kubernetes apod.

Aby jste byli schopni dosáhnou kvalitního autoscalingu za velmi dobrou cenu dají se velmi dobře využít spot instance od AWS. Můžete ušetřit až 90% nákladů oproti normálním instancím.

Jenkins 2.0 - novinky a vylepšení

Jenkins je nejznámější řešení na Continues Integration, který existuje už řadu let. Od září je venku konečně verze 2.x (aktuálně 2.19.1 LTS), která obsahuje několik zásadních novinek.

Jenkins používám řadu let a také ho školím ve firmách co chtějí toto řešení nasadit. Před 2 lety jsem si řekl, že není Jenkins moc dobrá cesta. Žádné použitelné novinky se dlouho neobjevovali a vůbec se nezlepšovalo použití pro větší nasazení Jenkinusů ve firmách.

SREcon’16 Europe

Letošní SREcon byl zase v Dublinu. Od 11.7. do 13.7. se zde setkali velcí hráči (Google, Facebook, Microsoft, Amazon) s těmi menšími a vyměňovali si spoustu zkušeností. Letos jsem se mohl poprvé zúčastnit. Nebyl jsem z ČR sám, zastoupení měli Avast, Seznam nebo Skype či Algolia. Dohromady asi 5 lidí. Konference byla vyprodaná a hodně míst měli lidé z Googlu a pokud vás zajímalo jak se pracuje v Dublinském Googlu nebo Facebooku mohli jste si o tom s lidmi promluvit. Celá konference byla ve 4 sálech a to jeden hlavní, který se po keynote rozdělil na dva a potom poslední dva byli hlavně pro workshopy a lighting talky.

Co to SRE je?

Pokud nevíte co to je SRE, tak kromě mého článku existuje skvělá kniha Site Reliability Engineering od lidí z Googlu, kde se všechno detailně vysvětluje a skoro každý přenášející něco z knihy citoval. Je to taková bible SRE a vůbec první kniha zastřešujíc tento obor.

Serverless jako něco víc než Docker

Serverless

Zkusím popsat co je to serverless trochu lidsky. Samotné bez serveru je asi moc široký pojem. Pokud se podíváte na Awesome Serverless najdete zde všechno možné od databází jako Firebase, Hoodie, které poskytují frontendovým aplikacím vše co potřebují k běhu, až k systémům, které vám umožňují více než stávající řešení na principu virtuálních serverů. O těch se hodně mluví a nejstarší z nich je Amazon Web Service Lambda.

AWS příšlo se základním systémem v roce 2014 a postupně to rozšiřovali, přidali v roce 2015 AWS Gateway a dnes je systém celkem dobře použitelný a vzniklo i několik frameworků (Serverless, Apex a Flourish).

Amazon, ale není jediný kdo má podobný systém. Dnes je k dispozici těch systémů několik.

Jak vidíte kromě AWS, ale jsou ostatní spíše na začátku, ale za pár let v tom bude dobrá konkurence. Zvláště je důležité dořešit věci o které se snaží frameworky a to zjednodušit vývojáři nastavení samotné infrastruktury, verzování aplikace a prostředí do kterých nasazujete.

Proč by mě to mělo zajímat?

Dnes se můžete na Lambdu koukat jako na něco co umí pustit kód v NodeJS, Pythonu nebo Javě. Ale hlavní síla je v kombinaci s dalšími AWS službami, ze kterých můžete vytvořit obří velmi dobře škálující aplikaci za velmi nízkých nákladů pro provoz resp. závislé na tom co opravdu aplikace dělá. Skoro zdarma dostanete neprodukční prostředí, které můžete mít stejné jako to produkční. Je potřeba samozřejmě aplikace navrhovat trochu jinak a ne pro každé použití je to správná cesta, ale na spoustu věcí to je zajímé.

Například si můžete udělat vlastní GraphQL server nebo Slack bot.

Před nedávnem se konala i specializovaná konference na toto téma.

PragueJS o Serverless

Pokud vás to zaujalo, přijďte si poslechnout nejen moji přednášku o Serverless na meetup 30.6.2016 do kanceláří STRV. Registrace je na eventbrite.

Co to je SRE?

Včera jsem měl přednášku v Brně o dockeru a ptal jsem se lidí kolem na meetup a v hospodě potom zda znají Site Reliability Engineering (SRE) ze svého okolí. Tento koncept od Googlu rozšiřuje klasické pojetí DevOps a myslím, že je to jedna z nejlepších věcí co Google vymyslel.

Můžete to slyšet přímo od Bena Treynora. Poslechněte jeho skvělou přednášku Keys to SRE z SRECon14.

Suchý docker

Suchý únor je skvělá akce a tak jsem říkal, zda s Dockerem nebudeme také na suchu. Našťěstí včera se situace změnila a vyšli nové verze Docker Engine, Docker Swarm and Docker Compose.

Pokud budete upgradovat, buďte opatrní, nový formát image není zpětně kompatibilní.

V originálu si novinky můžete prostudovat na blogu Dockeru:

pokud si chcete přečíst novinky v češtině pokračujte v mém článku.