Student User преди 2 години
родител
ревизия
46f8c47ba9

+ 2 - 0
T2/guided/deploy-adhoc/ansible.cfg

@@ -0,0 +1,2 @@
+[defaults]
+inventory=inventory

+ 5 - 0
T2/guided/deploy-adhoc/inventory

@@ -0,0 +1,5 @@
+[control_node]
+localhost
+
+[intranetweb]
+servera.lab.example.com

+ 29 - 0
T2/guided/deploy-inventory/inventory

@@ -0,0 +1,29 @@
+[webservers]
+servera.lab.example.com
+serverb.lab.example.com
+serverc.lab.example.com
+serverd.lab.example.com
+
+[raleigh]
+servera.lab.example.com
+serverb.lab.example.com
+
+[mountainview]
+serverc.lab.example.com
+
+[london]
+serverd.lab.example.com
+
+[development]
+servera.lab.example.com
+
+[testing]
+serverb.lab.example.com
+
+[production]
+serverc.lab.example.com
+serverd.lab.example.com
+
+[us:children]
+raleigh
+mountainview

+ 6 - 0
T2/guided/deploy-manage/a.yaml

@@ -0,0 +1,6 @@
+df
+fgfdg
+  ffdgdf
+  sddfsg
+
+

+ 8 - 0
T2/guided/deploy-manage/ansible.cfg

@@ -0,0 +1,8 @@
+[defaults]
+inventory = ./inventory
+
+[privilege_escalation]
+become = true
+become_method = sudo
+become_user = root
+become_ask_pass = true

+ 2 - 0
T2/guided/deploy-manage/deploy-adhoc/ansible.cfg

@@ -0,0 +1,2 @@
+[defaults]
+inventory=inventory

+ 5 - 0
T2/guided/deploy-manage/deploy-adhoc/inventory

@@ -0,0 +1,5 @@
+[control_node]
+localhost
+
+[intranetweb]
+servera.lab.example.com

+ 29 - 0
T2/guided/deploy-manage/deploy-inventory/inventory

@@ -0,0 +1,29 @@
+[webservers]
+servera.lab.example.com
+serverb.lab.example.com
+serverc.lab.example.com
+serverd.lab.example.com
+
+[raleigh]
+servera.lab.example.com
+serverb.lab.example.com
+
+[mountainview]
+serverc.lab.example.com
+
+[london]
+serverd.lab.example.com
+
+[development]
+servera.lab.example.com
+
+[testing]
+serverb.lab.example.com
+
+[production]
+serverc.lab.example.com
+serverd.lab.example.com
+
+[us:children]
+raleigh
+mountainview

+ 9 - 0
T2/guided/deploy-manage/inventory

@@ -0,0 +1,9 @@
+[myself]
+localhost
+[intranetweb]
+servera.lab.example.com
+[internetweb]
+serverb.lab.example.com
+[web:children]
+intranetweb
+internetweb

+ 9 - 0
T2/guided/playbook-basic/ansible.cfg

@@ -0,0 +1,9 @@
+[defaults]
+inventory=inventory
+remote_user=devops
+
+[privilege_escalation]
+become=True
+become_method=sudo
+become_user=root
+become_ask_pass=False

+ 1 - 0
T2/guided/playbook-basic/files/index.html

@@ -0,0 +1 @@
+This is a test page.

+ 4 - 0
T2/guided/playbook-basic/inventory

@@ -0,0 +1,4 @@
+[web]
+serverc.lab.example.com
+serverd.lab.example.com
+

+ 16 - 0
T2/guided/playbook-basic/site.yml

@@ -0,0 +1,16 @@
+- name: Install and start Apache HHTPD
+  hosts: web
+  tasks:
+    - name: httpd package is present
+      yum:
+        name: httpd 
+        state: present
+    - name: correct html is present
+      copy:
+        src: files/index.html
+        dest: /var/www/html/index.html
+    - name: httpd is started
+      service:
+        name: httpd
+        state: started
+        enabled: true

+ 9 - 0
T2/guided/playbook-multi/ansible.cfg

@@ -0,0 +1,9 @@
+[defaults]
+inventory=inventory
+remote_user=devops
+
+[privilege_escalation]
+become=False
+become_method=sudo
+become_user=root
+become_ask_pass=False

+ 41 - 0
T2/guided/playbook-multi/intranet.yml

@@ -0,0 +1,41 @@
+---
+
+- name: Enable intranet services
+  hosts: servera.lab.example.com
+  become: true
+  tasks:
+    - name: latest version of httpd and firewalld installed
+      yum:
+        name: 
+          - httpd
+          - firewalld
+        state: latest
+    - name: test html page is installed
+      copy:
+        content: "Welcome to the example.com intranet!\n"
+        dest: /var/www/html/index.html
+    - name: firewalld enabled and running
+      service:
+        name: firewalld
+        state: started
+        enabled: true
+    - name: firewalld permits acccess to httpd service
+      firewalld:
+        service: http
+        permanent: true
+        state: enabled
+        immediate: true
+    - name: httpd enabled and running
+      service:
+        name: httpd
+        state: started
+        enabled: true
+- name: Test intranet web server
+  hosts: localhost
+  become: no
+  tasks:
+    - name: connect to the intranet service
+      uri:
+        url: http://servera.lab.example.com
+        return_content: yes
+        status_code: 200

+ 1 - 0
T2/guided/playbook-multi/inventory

@@ -0,0 +1 @@
+servera.lab.example.com

+ 9 - 0
T2/guided/playbook-review/ansible.cfg

@@ -0,0 +1,9 @@
+[defaults]
+inventory=inventory
+remote_user=devops
+
+[privilege_escalation]
+become=False
+become_method=sudo
+become_user=root
+become_ask_pass=False

+ 56 - 0
T2/guided/playbook-review/internet.yml

@@ -0,0 +1,56 @@
+---
+
+- name: setup servers
+  hosts: serverb.lab.example.com
+  become: true
+  tasks:
+    - name: install latest packages 
+      yum:
+        name:
+          - firewalld
+          - httpd
+          - mariadb-server
+          - php
+          - php-mysqlnd
+        state: latest
+  
+    - name: start and enable firewalld 
+      service:
+        name: firewalld
+        state: started
+        enabled: yes
+    
+    - name: start and enable http
+      service:
+        name: httpd
+        state: started
+        enabled: yes
+
+    - name: start and enable mariadb
+      service:
+        name: mariadb 
+        state: started
+        enabled: yes
+
+    - name: firewall access to http
+      firewalld:
+        service: http
+        permanent: true
+        state: enabled
+        immediate: true
+
+    - name: gen web content
+      get_url:
+        url: http://materials.example.com/labs/playbook-review/index.php
+        dest: /var/www/html/
+
+- name: Test intranet web server
+  hosts: localhost
+  become: no
+  tasks:
+    - name: connect to the intranet service
+      uri:
+        url: http://serverb.lab.example.com
+        return_content: yes
+        status_code: 200
+

+ 1 - 0
T2/guided/playbook-review/inventory

@@ -0,0 +1 @@
+serverb.lab.example.com

+ 2 - 0
T3/guided/data-secret/ansible.cfg

@@ -0,0 +1,2 @@
+[defaults]
+inventory = /home/student/data-secret/inventory/hosts

+ 11 - 0
T3/guided/data-secret/create_users.yml

@@ -0,0 +1,11 @@
+- name: create users acc 4 all servers
+  hosts: devservers
+  become: true
+  remote_user: devops
+  vars_files:
+    - secret.yml
+  tasks:
+    - name: Creating user from secret.yml
+      user:
+        name: "{{ username }}"
+        password: "{{ pwhash }}"

+ 2 - 0
T3/guided/data-secret/inventory/hosts

@@ -0,0 +1,2 @@
+[devservers]
+servera.lab.example.com

+ 1 - 0
T3/guided/data-secret/psswd

@@ -0,0 +1 @@
+redhat

+ 12 - 0
T3/guided/data-secret/secret.yml

@@ -0,0 +1,12 @@
+$ANSIBLE_VAULT;1.1;AES256
+61356537356635343638666235376532383138346335396661373038623865663233373662376637
+3035653764613863383531386332333439376535326239330a396362383934386162383838643634
+30613561663365376435333235613137633536386236623939386630373865323831623237636262
+3438313137306363310a303864663265353136613063633838346437623230633263633465396464
+36616566313336393433626132326334393533373430393037316239363638633365306662663466
+31363234623131646134313365626639626163326164636637363363363536666536623137373763
+37643239396162333232616630653366333131373233343138636433303234633130353263356339
+62396537343364373333383638666235336635303466393537303632363330383463353063306366
+30366532653135376163616163666330366564376331333066363965313666353332626133356563
+37663065633431633562643061383463356164373964326137626238343131323433366161663464
+366432356438396633366463386663396432

+ 6 - 0
T3/guided/data-variables/ansible.cfg

@@ -0,0 +1,6 @@
+[defaults]
+inventory   = inventory
+remote_user = devops
+
+[privilege_escalation]
+become      = true

+ 3 - 0
T3/guided/data-variables/inventory

@@ -0,0 +1,3 @@
+
+[webserver]
+servera.lab.example.com

+ 48 - 0
T3/guided/data-variables/playbook.yml

@@ -0,0 +1,48 @@
+---
+
+
+- name: Install & configure Apche
+  hosts: webserver
+  vars:
+    web_pkg: httpd
+    firewall_pkg: firewalld
+    web_service: httpd
+    firewall_service: firewalld
+    python_pkg: python3-PyMySQL
+    rule: http
+  tasks:
+    - name: Required Packages
+      yum:
+        name:
+          - "{{ web_pkg }}"
+          - "{{ firewall_pkg }}"
+          - "{{ python_pkg }}"
+        state: latest
+    - name: Start firewall service
+      service:
+        name: "{{ firewall_service }}"
+        enabled: true
+        state: started
+    - name: Start web service
+      service:
+        name: "{{ web_service }}"
+        enabled: true
+        state: started
+    - name: web content is in place
+      copy:
+        content: "Example web content"
+        dest: /var/www/html/index.html
+    - name: open firewall
+      firewalld:
+        service: "{{ rule }}"
+        permanent: true
+        immediate: true
+        state: enabled
+- name: Verify apache
+  hosts: localhost
+  become: false
+  tasks:
+    - name: Server reachable
+      uri:
+        url: http://servera.lab.example.com
+        status_code: 200