Post on 12-May-2015
description
Die erste Woche mit EC2und anderen AWS Diensten
Steffen KrauseTechnical Evangelist
@AWS_Aktuellskrause@amazon.de
Dies ist kein Überblick von AWS und EC2sondern Best Practices zum Beginn
Für den Überblick:• Was ist AWS und Cloud überhaupt?
http://www.youtube.com/watch?v=45hwbHB7kn0 • Anmeldung und erste Instanz:
http://www.youtube.com/watch?v=kqbOHbO4S34 • Welche Dienste gibt es?
http://www.youtube.com/watch?v=_9OOleSR2co • EC2 Überblick:
http://www.youtube.com/watch?v=CrwZxUCyXsg
Hinweis
Dinge, die Sie vorher wissen/beachten sollten Einige Best Practices für den Anfang Essenzielle Technologien, mit denen Sie sich beschäftigen
sollten Architekturprinzipien, mit denen Sie sich vertraut machen
sollten
Agenda
Die ersten 5 Tage mit AWS
Dinge, die Sie vorher wissen/beachten sollten Einige Best Practices für den Anfang Essenzielle Technologien, mit denen Sie sich beschäftigen
sollten Architekturprinzipien, mit denen Sie sich vertraut machen
solltenAlles auf 5 Tage komprimiert
Agenda
Die ersten 5 Tage mit AWS
Die Umgebungorganisieren1Tag
Benutzer & Rollen
Gleich beginnen, wie Sie später arbeiten wollen
Absichern der Konsole mit IAM Rollen
Etwas Zeitaufwand jetzt spart erspart Kopfschmerzen in Zukunft
Konten & Rechnung
Schaffen Sie eine sinnvolle Struktur
Dev & Test Konten versus Produktion
Consolidated Billing
Resource Tagging
Bereich Badmin@BereichB.de
User2Dev2Admin2
IAM
Tags:Own=DivProj=P
Tags:Own=DivProj=Q
Tags:Own=DivProj=R
Master Accountaws.rechnung@meinefirma.de
Consolidated Billing Information Tags: (key-value)
z.B. Own=DivProj=R
Rechnung
Operating Co. Aadmin@opcoa.de
User1Dev1Admin1
IAM
Tags:Own=OpCoProj=A
Tags:Own=OpCoProj=B
Tags:Own=OpCoProj=C
Bereich Badmin@BereichB.de
User2Dev2Admin2
IAM
Tags:Own=DivProj=P
Tags:Own=DivProj=Q
Tags:Own=DivProj=R
Business Unit Cadmin@busUnitC.com
User3Dev3Admin3
IAM
Tags:Own=BusCProj=X
Tags:Own=BusCProj=Y
Tags:Own=BusCProj=Z
Master Accountaws.rechnung@meinefirma.de
Consolidated Billing Information
Programmatischer Rechnungszugriff
S3 CSV
Alert:
Erreicht $1,250Alert:
Erreicht $3,000Alert:
Erreicht $500
Rechnung
Secrets & Keys
&
Kontrollieren Zugang zu den APIs
Kontrollieren den Zugang
Verwenden Sie IAM Rollen um Instanzen
Zugang zu geben
Kontrollieren Zugang zu Ihren Instanzen
Key Management Strategie
Secrets & Keys
Secrets Keys
Lernen Sie die Grundlagen2Tag
Was ist EC2?
Elastische Kapazität Flexibel
Vollständige Kontrolle
Zuverlässig
Kostengünstig
Sicher
EntsorgungsfreundlicheRechenleistung
Instanz
Instanz Einheit der Skalierung
Einheit der Verfügbarkeit
Einheit der Kontrolle
Ihr Stack Instanz Einheit der Skalierung
Einheit der Verfügbarkeit
Einheit der Kontrolle
Instanz
Instanz
Instanz
Instanz
Scal
e O
ut
Einheit der Skalierung
Einheit der Verfügbarkeit
Einheit der Kontrolle
Instanz
Instanz
Instanz
Instanz
Einheit der Skalierung
Einheit der Verfügbarkeit
Einheit der Kontrolle
Instanz
Instanz
Instanz
Instanz
Einheit der Skalierung
Einheit der Verfügbarkeit
Einheit der Kontrolle
Instanz
Instanz
Instanz
Einheit der Skalierung
Einheit der Verfügbarkeit
Einheit der Kontrolle
Instanz
Instanz
Instanz
Instanz
Einheit der Skalierung
Einheit der Verfügbarkeit
Einheit der Kontrolle
Denken Sie andersRechenleistung ist transistent
Späte Bindung
Verteilte Systeme
Programmierbare Ressourcen
Laufzeit-Systeme werden beim Deployment festgelegt
Architektur mit entkoppelten Systemen erstellen
Behandeln Sie Ihre Rechenzentrums-Ressourcen wie Programmcode
Denken Sie anders
Die Tools3Tag
Compute
Storage
Security Scaling
Database
NetworkingMonitoring
Messaging
Workflow
DNSLoad Balancing
BackupCDN
APIZugriff auf alles via Kommandozeile, API oder Konsole
Erreichen Sie auf einfache Weise eine umfassende
Automatisierung
Alles ist programmierbar
ec2-run-instances ami-54cf5c3d--instance-count 2--group webservers--key mykey--instance-type m1.small
$>
Kommandzeile
>>> import boto.ec2>>> conn = boto.ec2.connect_to_region("us-east-1")>>> conn.run_instances( 'ami-54cf5c3d', key_name='mykey', instance_type='m1.small', security_groups=['webservers'])
Python Boto
Ressourcen programmatisch erstellt
Ressourcen programmatisch erstelltAutomatisch konfiguriert
Wozu automatisieren?
AutomatisierungWeniger Finger, weniger Fehler
VerfügbarkeitHöhere
Verfügbarkeit & Selbstheilung
SicherheitInstanzen
standardmäßig sicher konfiguriert
FlexibelShell,
Powershell, CloudFormation,
Chef, Puppet, OpsWorks
SkalierungVerwalten großer
Umgebungen,Autoscaling
EffizienzAuditieren und Verwalten der Umgebung mit
weniger Aufwand
AMI erstellen
Instanz starten
Instanz konfigurieren
AMI aus der Instanz erstellen
Neue Instanzen aus dem AMI erstellen
ec2-run-instances<ami-id>
$>
Bootstrapping
Dynamische Konfiguration
Instanz starten
Metadata Service und cloud-init führen
Aktionen beim Start der Instanz aus
kontraAMI erstellen
Instanz starten
Instanz konfigurieren
AMI aus der Instanz erstellen
Neue Instanzen aus dem AMI erstellen
Bootstrapping
Basis-Images erstellen mit eigenen Initialisierungs-Skripts
Pflege eines „Master-Image“
Übergabe von Konfigurations-
informationen und Ausführung von
Aufgaben nach dem Start wie Code-
Download von Git
+ Dynamische KonfigurationAMI erstellen
Bootstrapping
Zeitaufwändige Konfiguration (Startup-Zeit)
Statische Konfiguration(weniger Change Management)
Bootstrapping
Dynamische KonfigurationAMI erstellen
Continuous Deployment(Neuester Code)
Spezifische Umgebung(Dev-Test-Produktion)
Dynamische KonfigurationAMI erstellen
Bootstrapping
Ziel: Die Instanz hat nach dem Start einen nutzbaren ZustandDie Balance hängt vom Anwendungsfall ab
Instanz- Anforderung
User data
Instance
Meta-data Service
User-Data
#!/bin/shyum -y install httpd php mysql php-mysqlchkconfig httpd on/etc/init.d/httpd start
Shell Skript in user-data wird beim ersten Start ausgeführt:
Tipp - Linux
Amazon Windows EC2Config Service führt user-data beim ersten Start aus:<script>dir > c:\test.log</script>
<powershell>any command that you can run</powershell>
<powershell>Read-S3Object -BucketName myS3Bucket -Key myFolder/myFile.zip -File c:\destinationFile.zip
</powershell>
AWS Powershell Tools
Tipp - Windows
Probiere etwas Neues4Tag
UnbeschränktEC2 Ressourcen
UnbeschränktErgänzende Dienste
Ein bisschen S3 Code(automatisch installiert)
>>> from boto.s3.key import Key>>> k = Key(bucket)>>> k.key = 'foobar'>>> k.set_contents_from_string('This is a test of S3')
Meine kleine Instanz(programmatisch erstellt)
Unbegrenzter Storage für meine kleine Instanz
Services statt SoftwareVermeidet unnötige Arbeit
S3 für Objekt-Speicherung
SQS für Queues
RDS für relationale Datenbanken
CloudWatch für Überwachung
Baue etwas auf5Tag
1. Mehrere Availability Zonen
2. RDS mit Replikas und Slaves
3. Auto Scaling Gruppen
4. Elastic Load Balancer
5. Route53 für DNS Zonen Hosting
Das Ganze als Demo:http://www.youtube.com/watch?v=8vOKIykiiLI
Mehr Informationen über Architekturen:http://aws.amazon.com/de/architecture/
1. Von Anfang an richtig organisiert2. Verstehen von programmierbarer Rechenleistung3. Verstehen und Verwenden der Tools4. Nutzen der Dienste über EC2 hinaus5. Baue etwas auf! (man kann es jederzeit wieder wegwerfen)
Zusammenfassung
• http://aws.amazon.com/de • Beginnen Sie mit dem Free Tier:
http://aws.amazon.com/de/free/• 25 US$ Startguthaben für Neukunden:
http://aws.amazon.com/de/campaigns/account/• Twitter: @AWS_Aktuell• Facebook: http://www.facebook.com/awsaktuell • Webinare: http://aws.amazon.com/de/about-aws/events/ • Slideshare: http://de.slideshare.net/AWSAktuell
Ressourcen
1. Was ist Amazon Web Services und wofür kann ich AWS nutzen2. Erste Schritte mit Amazon Web Services – von der Anmeldung bis zur
ersten Instanz3. Amazon Web Services 1*1 – welche Dienste gibt es wofür?4. Server in der Cloud – die AWS Compute-Dienste5. Daten speichern in der Cloud – die AWS Storage-Dienste6. Datenbanken in der Cloud – SQL und NoSQL7. Amazon Web Services für eCommerce8. Big DataAufzeichnungen http://aws.amazon.com/de/recorded-webinar/
Bisherige Webinare
• 8 Tipps für eine Cloud-Strategie – wie Unternehmen heute die Cloud einsetzen – 14.08.2013, 16 Uhr
• Optimieren Sie Ihre AWS Nutzung um Kosten zu sparen – 21.08.2013, 16 Uhr
• Architecture Best Practices für Webanwendungen– 04.09.2013, 16 Uhr
• Unternehmensanwendungen auf AWS– 24.09.2013, 16 Uhr
• http://aws.amazon.com/de/about-aws/events/
Kommende Webinare
aws.amazon.com