Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Immutable and Automated Cloud 101

Immutable and Automated Cloud 101

Eine solide Cloud Infrastruktur ist die Basis für Cloud-Native Applikationen. Diese muss genau wie die Anwendung einfach zu ändern, dynamisch skalierbar, hochverfügbar und sicher sein. Diese Anforderungen führen zu komplexen Strukturen, die selten von einzelnen Personen verwaltet werden. Zusätzlich ist es wünschenswert die Änderungen und die Erfüllung der Anforderungen nachvollziehbar über unterschiedliche Umgebungen hinweg zu dokumentieren. Glücklicherweise ist Cloud-Infrastruktur hochgradig automatisierbar.

In diesem technisch orientierten Vortrag kombinieren wir Infrastructure as Code und Immutable Infrastructure um eine produktionsreife Cloud-Infrastruktur aufzubauen. Insbesondere Cloud Einsteigern geben wir hierdurch Tools wie cloud-init, Packer und Terraform in die Hand um Standard-Architekturen auf AWS den eigenen Anstrich zu verpassen.

Alex Krause

May 14, 2019
Tweet

More Decks by Alex Krause

Other Decks in Programming

Transcript

  1. Old Skool Cloud @alex0ptr Image: Run DMC: Streets of New

    York by Jeff Pinilla http://bit.ly/2Qk34XL / CC BY http://bit.ly/2vlsURa / turned black and white
  2. „I’ve hugged a lot of servers in my life, and

    believe me, they do not hug you back. They hate you.“ —Werner Vogels, CTO of Amazon @alex0ptr Image: Dutch Digital Pioneers - Werner Vogels by Guido van Nispen http://bit.ly/2IEOsQE / CC BY http://bit.ly/2vlsURa / Citation added
  3. Immutable Infrastructure ‣ ~ 2012 at Netflix ‣ instantiate and

    replace, never change Gain: ‣ no state accumulation ‣ better consistency and security ‣ true rollbacks and easy experiments @alex0ptr
  4. @alex0ptr “… is an open source tool for creating identical

    machine images for multiple platforms from a single source configuration.” ‣ 2013 ‣ Super Fast Deployment ‣ Multi-provider portability ‣ Improved stability ‣ Greater testability
  5. @alex0ptr “Cloud-init is the defacto multi-distribution package that handles early

    initialization of a cloud instance.” ‣ 2008 ‣ simple init for the cloud ‣ initially AWS EC2 ‣ pre-installed everywhere!
  6. @alex0ptr ## template: jinja #!/bin/bash {% if v1.region == 'us-east-2'

    -%} echo 'Installing custom proxies for {{ v1.region }}' sudo apt-get install my-xtra-fast-stack {%- endif %}
  7. @alex0ptr #cloud-config packages: - cowsay users: - default - name:

    app groups: docker write_files: - content: nVc+Xj7rPhMqb... encoding: b64 owner: app:app path: /home/app/application.yml permissions: '0655'
  8. Infrastructure as Code ‣ 2010 AWS CloudFormation ‣ provision ‣

    and manage data centers Gain: ‣ versioning ‣ speed ‣ consistency ‣ security ‣ collaboration @alex0ptr
  9. @alex0ptr “Write, Plan, and Create
 Infrastructure as Code” ‣ 2014

    ‣ ~40 Clouds ‣ Databases, Monitoring-, Infrastructure-Software ‣ Plugins
  10. @alex0ptr Availability zone Subnet Availability zone Subnet Subnet Auto Scaling

    Group Subnet Instances Instances Application Load Balancer Application Load Balancer Amazon DynamoDB Amazon ECR Also: ‣ Network policies ‣ IAM
  11. Lesestoff ‣ A comprehensive Guide to Terraform. Gruntwork ‣ Free

    CloudFormation Templates. cloudonaut.io ‣ Complete AWS IAM Reference. cloudonaut.io ‣ Terraform 0.12 Preview. Terraform Blog @alex0ptr
  12. QAware GmbH Mainz Rheinstraße 4 D 55116 Mainz Tel.: +49

    (0) 6131 215 69 – 0 Fax: +49 (0) 6131 215 69 – 68 xing.com/companies/qawaregmbh linkedin.com/company/qaware-gmbh slideshare.net/qaware twitter.com/qaware github.com/qaware youtube.com/qawaregmbh
  13. QAware GmbH München Aschauer Straße 32 81549 München Tel.: +49

    (0) 89 23 23 15 – 0 Fax: +49 (0) 89 23 23 15 – 129 xing.com/companies/qawaregmbh linkedin.com/company/qaware-gmbh slideshare.net/qaware twitter.com/qaware github.com/qaware youtube.com/qawaregmbh