Docker och Kubernetes hos Café.se 2019-02-13 WordPress Stockholm Andreas Ek
Strukturerad WordPress-utveckling Workshop Versionshanterat Pakethanterat Kontinuerlig leverans
Andreas Ek, Elseif Fredrik Lack, k8s Henric Romlin, CTO https://elseif.se/egmont
EGMONT
Enterprise 12 år, eget CMS Monolit 50 sajter Krävande förvaltning Låsta titlar Cafe.se EGMONT
EGMONT
Nästa generation Modulärt Skalbart Standard Öppen källkod Modernt EGMONT
Nästa generation EGMONT
En sak till... EGMONT Före 1992 hette företaget Egmont Gutenberghus
DEV Docker
Docker Replikera dev snabbt Lika i hela teamet Versionshanterat DEV == PROD Flexibelt DEV
DEV Workshop: Lokal utvecklingsmiljö WP med docker
Fokus för teamet Composer Roots Bedrock Gutenberg React Gitflow DEV
IaC INFRASTRUCTURE AS CODE
Infrastructure as Code Terraform Versionshanterad hosting Konfigurationsfiler (tf/json) Providers Plan / apply IaC
Leverantörer Terraform? IaC
IaC
PROD Google Cloud Platform
Gjorda val Docker Stateless Buckets PROD == DEV Obunden Kluster PROD
KUBERNETES (k8s) Klusterhanterare Öppen källkod Driftsättning Skalning Felsäker Minikube PROD
KUBERNETES PROD
Containers Nginx 1-n Web php, 1-n Redis Elasticsearch WP-Cron PROD
Resurser GCP Load Balancer Cloud SQL Cloud Storage Cloud KMS Container Registry DNS / LetsEncrypt PROD
WordPress WP-Stateless Redis cache WP-Cron ElasticPress Egmont-X PROD
Monitorering Prometheus + Grafana New Relic Pingdom Detectify GA och WooRank PROD
PROD Monitorering visa Grafana visa New Relic
PIPELINE Bitbucket / Gitflow
Gitflow PIPELINE Branch staging till staging Master/tag till produktion Bitbucket pipeline Bash Google Cloud SDK
Deploy Build Push Helm / chart Containerbyte Rollback PIPELINE
Kodexempel pipeline PIPELINE
PIPELINE
PROD (GCP) LetsEncrypt Load Balancer Docker Composer Bedrock WordPress 8 - n Web 1 - n Redis K Elasticsearch S Dev-git PIPELINE gitflow bash kubectl helm chart 1 C PV WP-Cron Container Registry PVC Prometheus Grafana Cloud KMS Cloud SQL Cloud Storage Assets Uploads React-block IaC State IaC-git https://elseif.se/egmont DEV Nginx
Motverka monoliten Applikationer separat Service-arkitektur API Laravel Lätta plugins i WP
SAMMANFATTNING Driftsäkert Modulärt Automatiskt Roligt Fokus: Gutenberg / Redaktion
Andreas Ek, Elseif Henric Romlin, CTO Fredrik Lack, k8s https://elseif.se/egmont
FAQ Vad kostar ett kluster? Är det svårt att lära sig? Passar detta till min blogg? Hur hittar jag resurser? Vilka kända kör kluster?
Tack!
Gamla skisser...
https://elseif.se/egmont Google Cloud Platform IaC Load Balancer State LetsEncrypt Nginx 1 - n Web 1 - n DEV Docker 8 Redis k s Elasticsearch WP-Cron Cloud SQL PVC Cloud Storage IaC-git Uploads C PV Prometheus Composer Dev-git Gitflow bash/kubectl/ helm/chart pipeline Bedrock WordPress Grafana Container Registry Assets Cloud KMS React-block
PROD (GCP) LetsEncrypt Load Balancer Docker Composer Bedrock WordPress 8 - n Web 1 - n Redis k Elasticsearch s Dev-git PIPELINE gitflow bash kubectl helm chart 1 C PV WP-Cron Container Registry PVC Prometheus Grafana Cloud KMS Cloud SQL Cloud Storage Assets Uploads React-block IaC State IaC-git https://elseif.se/egmont DEV Nginx