Aplikačné kontajnery v produkcii - CodeCon 2019

Aplikačné kontajnery v produkcii - CodeCon 2019

Ako bezpečné je prevádzkovať kontajnery v produkcii? Krátke rozprávanie o tom, čo všetko znamená návrh on-premise riešenia a z akých komponentov sa skladá.

1e51bac0c2811ff229dfc873616e5f01?s=128

Fero Volar

April 02, 2019
Tweet

Transcript

  1. 2.

    Fero Volár H E A D O F S E

    R V E R P R O D U C T S Pôsobím v spoločnosti WebSupport, kde vediem obchodný B2B team a spravujem serverové produktové portfólio. Mám viac ako 15 ročné skúsenosti v oblasti IT s navrhovaním individuálnych zákazníckych riešení. I ❤ containers. Hi, Nice to meet you @websupport_tech 2
  2. 3.

    Prečo on-premise? Aké bývajú dôvody na vlastný produkčný setup kontajnerovej

    platformy Komponenty 02. Z akých najdôležitejších častí sa kontajnerový cluster skladá + nástroje na deployment 01. Poučenia a odporúčania 03. Najčastejšie úskalia vlastného riešenia 3 www.websupport.sk
  3. 5.

    plná kontrola sieťové obmedzenia public cloudu, traffic dáta na Slovensku

    hybrid/multi-cloud setup ovládače (napr. storage) bezpečnosť, špeciálne pravidlá a smernice … 5 Dôvody Prečo vlastne riešiť vlastný produkčný setup kontajnerovej platformy @websupport_tech www.websupport.sk
  4. 7.

    cluster, ktorý je rozumne zabezpečený komponenty clustera sú vysoko dostupné

    pre potreby používateľov zmeny v clusteri sú bezpečné (upgrade & rollback) deklaratívny manažment akýkoľvek nod môže byť nahradený, akýkoľvek kontajner môže byť znovu vytvorený 7 Produkcia Čo je to produkčný cluster? @websupport_tech www.websupport.sk
  5. 9.

    Docker cri-o CoreOS rkt Mesos Containerizer LXC ... 9 engine

    Ten najpopulárnejší či radšej alternatívu? @websupport_tech www.websupport.sk
  6. 11.

    Flannel - menšie a nenáročné setupy WeaveNet - ak potrebujete

    šifrovanie siete + JumboFrames Calico - BGP features Canal (Flannel + Calico ako FW) Cilium Kube-router Romana porovnanie CNI na 10Gbit/s network K8s Ingress controller (L7 LB, SSL) 11 networking Jedna z najkritickejších častí @websupport_tech www.websupport.sk
  7. 12.

    NFS Portworx Ceph Rook GlusterFS Cinder StorageOS Container Storage Interface

    (CSI) 12 storage Druhá najkritickejšia… @websupport_tech www.websupport.sk
  8. 13.

    Prometheus webhook -> Zabbix Slack, email Monitoring-as-a-service Sysdig Datadog 13

    monitoring Zdravie vášho clustera @websupport_tech www.websupport.sk
  9. 14.

    EFK - Elasticsearch, Fluentd a Kibana Fluentd LogTrail kubelogs 14

    logy Čím viac zmien robíte, tým dôležitejšie sú logy @websupport_tech www.websupport.sk
  10. 16.

    @websupport_tech www.websupport.sk 16 CI/CD Registry Service mesh (Istio, Consul, Linkerd,

    …) zálohovanie (ETCDCTL_API=3 ./etcdctl snapshot save snapshot.db... ) testovanie (test-infra, kubeval, kube-monkey, …) Čo chýba
  11. 18.

    kops - Kubernetes Operations (AWS ready, GCE beta, VMware vSphere

    alpha) kubespray - AWS, GCE, Azure, OpenStack, vSphere, Packet (bare metal), Oracle Cloud Infrastructure (Experimental) a bare-metal tk8 - AWS, OpenStack, Nutanix, bare-metal SAP gardener - AWS, Azure, GCP, OpenStack a Alicloud 18 Inštalátory Uľahčujú deployment Kubernetes na vašu infraštruktúru a aktualizáciu @websupport_tech www.websupport.sk
  12. 19.

    RedHat OpenShift OKD Canonical Kubernetes Mesosphere DC/OS Suse Kubic (cri-o)

    Suse CaaS platform RancherOS MetalK8s OpenStack Magnum 19 distribúcie Celý ekosystém, otvorené aj komerčné, aktualizácie @websupport_tech www.websupport.sk
  13. 20.
  14. 22.
  15. 23.

    GitOps (team) “kontajnerizovanie” aplikácie aktualizácie, rolling upgrade/rollback bare-metal vs. virtualizácia

    škálovanie, využitie zdrojov veľkosť imidžov bezpečnosť 23 úskalia vlastného rieŠenia Pain points @websupport_tech www.websupport.sk
  16. 24.

    Produkcia 1 3 4 Monitoring, bezpečnosť, upgrade, migrácia Skoro hotovo

    Prípadne Docker Swarm Kubernetes Docker Konfiguračný manažment a automatizácia 24 @websupport_tech www.websupport.sk 2 HA, škálovanie, Git
  17. 25.

    access control monitoring log management service mesh high availability horizontal

    autoscaling backup upgrade infrastructure package manager 25 @websupport_tech www.websupport.sk infrastructure provider engine network storage orchestration service discovery image management vulnerability scanner deployment process
  18. 26.

    nemusíte hneď všetko prerábať na microservices - containerize as-is vyberte

    správny image, aktualizujte ho nainštalujte potrebné balíčky pridajte vaše dáta zadefinujte otvorené porty 26 kontajnerizácia Postupne @websupport_tech www.websupport.sk
  19. 27.

    FROM latest špecifikovať verziu kritických balíčkov (apt, yum, …) defaultne

    nakonfigurované aplikácie (DB, PHP, Java, ...) - používať ENV, RUN, ENTRYPOINT Alpine radšej neskôr - začať s tradičnou distribúciou 27 Dockerfile Menší imidž je lepší @websupport_tech www.websupport.sk
  20. 28.

    žiadne kontajnery bežiace pod root-om šifrovanie komunikácie medzi kontajnermi kontajner

    má prístup len k zdrojom, ktoré potrebuje limitujte zdroje (storage, compute, memory, network) neukladať prístupové údaje v kontajneroch pre Kubernetes zapnúť Role-Based Access Control (RBAC) Namespaces v Kubernetes infraštruktúra (OS, firmware, …) 28 Bezpečnosť Security, security, security @websupport_tech www.websupport.sk
  21. 29.

    A curated list for awesome Kubernetes sources A curated list

    of Docker resources and projects kniha: Cloud Native DevOps With Kubernetes stackshare.io bit.ly/kubeweekly newsletter 29 Zaujímavé zdroje Kam ďalej @websupport_tech www.websupport.sk