Skip to content

Commit

Permalink
Update ansible.md
Browse files Browse the repository at this point in the history
  • Loading branch information
patrick-hermann-sva authored Oct 24, 2024
1 parent 7abf0f3 commit 05319d2
Showing 1 changed file with 58 additions and 89 deletions.
147 changes: 58 additions & 89 deletions presentations/ansible.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
# ANSIBLE

[<img src="https://lh4.googleusercontent.com/proxy/T1l-uRgNzFbx8DcZvsfUqpZ_0nqYCtPdVdymyGSCcynHlO69i6POvT-JVpruB6Hm1cdEXZM1r-0Nwg" width="700"/>](https://www.sva.de/index.html)
# ANSIBLE SPRECHSTUNDE

[<img src="https://artifacts.homerun-dev.sthings-vsphere.labul.sva.de/images/sprechstunde_4.jpeg" width="500"/>](https://www.sva.de/index.html)

<!-- .slide: data-transition="zoom" -->
---
/AGENDA
# /AGENDA
--
### /AGENDA
* Begrüßung und Zielsetzung <!-- .element: class="fragment fade-up" -->
* Einführung in Ansible <!-- .element: class="fragment fade-up" -->
* Was ist Ansible? <!-- .element: class="fragment fade-up" -->
Expand All @@ -14,59 +15,78 @@
* Beispiele aus der Sprechstunde <!-- .element: class="fragment fade-up" -->
* Fragen <!-- .element: class="fragment fade-up" -->
---
## /ANSIBLE SPRECHSTUNDE

* Jeden zweiten Donnerstag des Monats
* 14:00 bis 16:00
* Raum: ST M3 -01
* Wiki: https://wiki.sva.de/pages/viewpage.action?pageId=453482787

[<img src="https://raw.githubusercontent.com/stuttgart-things/docs/main/hugo/sthings-ansible.png" width="200"/>](https://www.sva.de/index.html)
---
# /Einführung in Ansible
--

### /Was ist Ansible?
* De facto Standard-Configuration-Management-Tool
* Cloud- und On-Premise
--
### /INFRASTRUCTURE AS CODE
[<img src="https://www.meme-arsenal.com/memes/cc44149278ca0067e7dd198911ef5553.jpg" width="700"/>](https://www.sva.de/index.html)
--

### /INFRASTRUCTURE AS CODE
* Infrastruktur eines Systems – Netzwerke, Server, Speicher, Datenbanken und andere Ressourcen – mittels Konfigurationsdateien definieren, bereitstellen und verwalten
* Statt manuell Hardware und Software zu konfigurieren, erfolgt dies durch Code.
* virtuelle Maschinen, Datenbanken und andere Ressourcen – mittels Konfigurationsdateien (=Code) definieren, bereitstellen und verwalten <!-- .element: class="fragment fade-up" -->
* automatisierbar, wiederholbar und versionierbar <!-- .element: class="fragment fade-up" -->
--
### /CICD

### /INFRASTRUCTURE AS CODE

* Bereitstellung von Infrastruktur wird automatisierbar, wiederholbar und versionierbar.
* IaC kann auf 2 Arten angegangen werden: deklarativ und imperativ.
--
### /IMPERATIV

### /DEKLARATIV VS. IMPERATIV
```
#!/bin/bash
* Deklarativ:
* Der gewünschte Zustand des Systems wird festgelegt.
* Ressourcen und Eigenschaften werden auf die Ressource angewendet, sobald der Benutzer den gewünschten Zustand angibt.
* Bsp: AWS CloudFormation
--
# Benutzer erstellen und Home-Verzeichnis festlegen
useradd -m -d /home/user1 -s /bin/bash user1
echo "Passwort1" | passwd --stdin user1
### /DEKLARATIV VS. IMPERATIV
* Imperativ:
* Befehle, die zum Erreichen der gewünschten Konfiguration erforderlich sind.
* Der Benutzer gibt die gewünschten Befehle an und die Befehle werden ausgeführt, um das System in den gewünschten Zustand zu bringen.
* Bsp: AWS CLI
useradd -m -d /home/user2 -s /bin/bash user2
echo "Passwort2" | passwd --stdin user2
```
<!-- .element: class="fragment fade-up" -->
* Befehle, die zum Erreichen der gewünschten Konfiguration erforderlich sind <!-- .element: class="fragment fade-up" -->
--
### /DEKLARATIV

### /Was ist Ansible?
* De facto Standard-Configuration-Management-Tool
* Cloud- und On-Premise
```
- hosts: all
become: true
tasks:
- name: Create users with home directories and bash shell
user:
name: "{{ item.name }}"
home: "{{ item.home }}"
shell: /bin/bash
state: present
create_home: yes
loop:
- { name: "user1", home: "/home/user1" }
- { name: "user2", home: "/home/user2" }
- { name: "user3", home: "/home/user3" }
```
<!-- .element: class="fragment fade-up" -->

* Der gewünschte Zustand des Systems wird festgelegt <!-- .element: class="fragment fade-up" -->
--
## /ANSIBLE SPRECHSTUNDE

* Jeden zweiten Donnerstag des Monats
* 14:00 bis 16:00
* Raum: ST M3 -01
* Wiki: https://wiki.sva.de/pages/viewpage.action?pageId=453482787

[<img src="https://raw.githubusercontent.com/stuttgart-things/docs/main/hugo/sthings-ansible.png" width="200"/>](https://www.sva.de/index.html)
--
[<img src="https://artifacts.homerun-dev.sthings-vsphere.labul.sva.de/images/sprechstunde_2.jpeg" width="600"/>](https://www.sva.de/index.html)
---
### /ANSIBLE ARCHITEKTUR

[<img src="https://k21academy.com/wp-content/uploads/2021/06/Ansible_Diagram2-16-1536x692.png" width="900"/>](https://www.sva.de/index.html)
--
### /ANSIBLE MODULE
* Skriptartige Programme, die geschrieben werden, um den gewünschten Zustand des Systems zu spezifizieren.
### /ANSIBLE CLI
*
--
### /ANSIBLE INVENTORY
* Ansible liest Informationen über die Maschinen, die es verwaltet, aus dem Inventory.
Expand All @@ -75,20 +95,6 @@
* Beschreiben die Aufgaben, die zu erledigen sind, indem sie Konfigurationen deklarieren, um einen verwalteten Knoten in den gewünschten Zustand zu bringen.
--

### /BEISPIEL ANSIBLE PLAYBOOK

```
- name: Update web servers
hosts: webservers
remote_user: root
tasks:
- name: Ensure apache is at the latest version
ansible.builtin.yum:
name: httpd
state: latest
```

--

### /ANSIBLE AUTOMATION PLATFORM
Expand Down Expand Up @@ -146,52 +152,15 @@
--
## /Beispiele aus der Sprechstunde

```
#!/bin/bash
# Benutzer erstellen und Home-Verzeichnis festlegen
useradd -m -d /home/user1 -s /bin/bash user1
echo "Passwort1" | passwd --stdin user1
useradd -m -d /home/user2 -s /bin/bash user2
echo "Passwort2" | passwd --stdin user2
```

--

```
- hosts: all
become: true
tasks:
- name: Create users with home directories and bash shell
user:
name: "{{ item.name }}"
home: "{{ item.home }}"
shell: /bin/bash
state: present
create_home: yes
loop:
- { name: "user1", home: "/home/user1" }
- { name: "user2", home: "/home/user2" }
- { name: "user3", home: "/home/user3" }
```
[<img src="https://miro.medium.com/v2/resize:fit:826/0*oZ6czP8_xU-amLfL.jpg" width="400"/>](https://www.sva.de/index.html)
[<img src="https://artifacts.homerun-dev.sthings-vsphere.labul.sva.de/images/sprechstunde_1.png" width="400"/>](https://www.sva.de/index.html)

--



[<img src="https://miro.medium.com/v2/resize:fit:826/0*oZ6czP8_xU-amLfL.jpg" width="400"/>](https://www.sva.de/index.html)
--

[<img src="https://artifacts.homerun-dev.sthings-vsphere.labul.sva.de/images/sprechstunde_1.png" width="200"/>](https://www.sva.de/index.html)
--

[<img src="https://artifacts.homerun-dev.sthings-vsphere.labul.sva.de/images/sprechstunde_2.jpeg" width="600"/>](https://www.sva.de/index.html)
--

[<img src="https://artifacts.homerun-dev.sthings-vsphere.labul.sva.de/images/sprechstunde_3.jpeg" width="600"/>](https://www.sva.de/index.html)
--

[<img src="https://artifacts.homerun-dev.sthings-vsphere.labul.sva.de/images/sprechstunde_4.jpeg" width="600"/>](https://www.sva.de/index.html)

Expand Down

0 comments on commit 05319d2

Please sign in to comment.