Hallo Zusammen,
könntet ihr mal über meinen Projektantrag schauen? Das wär super. DAnkeeee
1 Projektbezeichnung
Entwicklung und Orchestrierung einer Architektur zur Abwicklung der Monatsabrechnung der genutzten AWS Clouddienstleistungen für die xxxxxx.
2 Geplanter Bearbeitungszeitraum
Beginn: xxxxx.2018
Ende: xxxxx.2018
3 Projektbeschreibung
3.1 IST-Zustand
Ein Produkt der Angebotspalette der Firma Amazon ist das Cloud-Computing, bereitgestellt von der Tochterfirma Amazon Web Service, kurz AWS. Amazon bietet die Möglichkeit von On-Demand Lieferung von Rechenleistung, Datenbankspeicher und Anwendungen. Auch die xxxxxxxx nutzt seit Mitte des Jahres 2017 diese Angebote von AWS. Da AWS selbst eine „Pay-as-you-go“ Preisgestaltung lebt gibt es keine direkte Möglichkeit innerhalb des Betriebes genau aufzuteilen welche Produktgruppe welche Cloud Services zu welchem Preis in Anspruch genommen hat.
Diese Aufteilung und Rechnungserstellung wird zum jetzigen Zeitpunkt noch von einem Kollegen aus dem Controlling manuell, unter Verwendung von Microsoft Excel, Microsoft Outlook und einem automatisch generierten CSV-File durchgeführt.
3.2 SOLL-Konzept
Dieser Abrechnungsablauf soll nun automatisiert werden. Als Basis soll das automatisch generierte, gezippte CSV-File genutzt werden, welches in einen sogenannten AWS Simple Storage Service (S3- Objektspeicher) Bucket abgelegt wird. Dieses Event stößt ein AWS Lambda Script an, AWS Lambda ist ein serverloser Datenverarbeitungsservice. Dieses Script soll in Python geschrieben werden. Es soll kontrollieren ob das gegenwärtige Datum der Letzte des Monats ist und das CSV-File im Hauptspeicher entpacken, um mittels Pandas, welches als Analysetool agiert, die Berechnungen durchführen um die Kosten auf die einzelnen Produkte aufzuteilen. Danach sollen ebenfalls mittels des Python Skripts, Emails an die entsprechenden Produkt Leader gesendet werden, welche eine Textdatei mit den entsprechend kalkulierten Kosten enthalten. Da die Automatisierung und Kalkulation in den Anfangsphasen parallel von einem Kollegen aus dem Controlling gegengerechnet werden soll, wird in einem zweiten Skript, das im hohen Detailierungsgrad geschriebene CSV-File, wieder im Hauptspeicher entzippt, verkleinert und als gezipptes, datengeringeres CSV-File zurück in den AWS S3 Bucket abgelegt werden. Danach soll eine Mail mit einem Download Link an den Controlling Kollegen gesendet werden. Die Abläufe sollen mithilfe von Jenkins automatisiert werden.
Meine Aufgabe besteht nun darin, einen AWS S3 Bucket zu konfigurieren, der bei Ablage eines Dokuments ein Lambda Skript anstößt und diverse Berechtigungen innerhalb der Virtual Private Cloud hat. Dieses Lambda Skript, welches in Python geschrieben werden soll, um die Datenanalysedatenbank Pandas nutzen zu können, da es sich um Big Data handelt, soll ebenfalls Bestandteil der Aufgabe sein. Ebenso das zweite, deutlich kleinere Skript, welches den Downloadlink für den Kollegen bereitstellt. Die Architekturen sollen in einer Cloudumgebung mithilfe einer Beschreibungssprache orchestriert werden. Alle erwähnten Architekturelemente, wie der AWS S3 Bucket, das Event und AWS Lambda sollen in AWS Cloudformation beschrieben und automatisiert werden mit dem CI-Tool Jenkins.
4 Projektumfeld
xxxxxxxxxx Firma und Team und so.
5 Projektstrukturplan
1. Analyse
1.1. Durchführung der Ist-Analyse
1.2. Erstellung des Lastenheftes
1.3. Erstellung des Soll-Konzepts
2. Planung
2.1. Erstellung eines Projektplans
2.2. Entwurf einer Systemarchitektur
2.3. Erstellung eines Deploymentkonzeptes
2.4. Erstellung des Pflichtenheftes
3. Implementierung
3.1. Beschreibung der AWS Cloudformation
3.1.1. Konfiguration des AWS S3 Buckets
3.1.2. Konfiguration des AWS Events
3.1.3. Entwicklung von AWS Lambda
3.2. Automatisieren der Abläufe
4. Abnahme und Einführung
4.1. Erstellen und Testen des AWS Cloudformation Stacks
4.2. Nach erfolgreichem Test: Transport auf Produktivumgebung
4.3. Soll-Ist-Vergleich
4.4. Kosten- und Zeitvergleich
5. Dokumentation
5.1. Erstellung der Projektdokumentation
5.2. Erstellung des Benutzerhandbuchs
5.1 tabellarische Darstellung
Phase
Dauer in Stunden
Analyse
2
Planung
3
Implementierung
18
Abnahme und Einführung
3
Dokumentation
9
Summe
35
5.2 Auflistung der Zeitplanung
Analyse
2h
§ Durchführung der Ist-Analyse
0,5h
§ Erstellung des Lastenhefts
1h
§ Erstellung des Soll-Konzepts
0,5h
Planung
3h
§ Erstellung eines Projektplans
0,6h
§ Entwurf einer Systemarchitektur
1h
§ Erstellung eines Deploymentkonzeptes
0,3h
§ Erstellung des Pflichtenheftes
1h
Implementierung
18h
§ Beschreiben der AWS Cloudformation
13h
o Konfiguration des AWS S3 Buckets
2h
o Konfiguration des AWS Events
1h
o Entwicklung von AWS Lambda
10h
§ Automatisieren der Abläufe
5h
Abnahme und Einführung
3h
§ Erstellen und Testen des AWS Cloudformation Stacks
1,5h
§ Nach erfolgreichem Test: Transport auf Produktivumgebung
0,5h
§ Soll-Ist Vergleich
0,5h
§ Kosten- und Zeitvergleich
0,5h
Dokumentation
9h
§ Erstellung der Projektdokumentation
7h
§ Erstellung des Benutzerhandbuchs
2h
Summe
35h