Skip to content

Commit 01bc2c0

Browse files
committed
Updated Links and Pictures
1 parent 33c35bd commit 01bc2c0

28 files changed

+1004
-998
lines changed

Project12.md

+30-30
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# ANSIBLE REFACTORING AND STATIC ASSIGNMENT (IMPORTS AND ROLES)
22
## INTRODUCTION
33

4-
In continuation of [project 11](https://github.com/somex6/Darey.io-Projects/blob/main/project11.md), the ansible code in my ansible-config-mgt repository is refactored into making use of the import functionality– which allows us to effectively re-use previously created playbooks in a new playbook, and assigning task in the playbook with role functionality.
4+
In continuation of [project 11](./project11.md), the ansible code in my ansible-config-mgt repository is refactored into making use of the import functionality– which allows us to effectively re-use previously created playbooks in a new playbook, and assigning task in the playbook with role functionality.
55

66
The following outlines the steps taken:
77

@@ -11,44 +11,44 @@ The following outlines the steps taken:
1111
- Creating a new directory on the Jenkins-ansible server where the artifacts will be copied to:`$ sudo mkdir /home/ubuntu/ansible-config-artifact`
1212
- Changing the permissions: `$ chmod -R 0777 /home/ubuntu/ansible-config-artifact`
1313

14-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/11-creating%20ansible-config%20dir%20and%20changing%20permission.png)
14+
![](./img/project12/11-creating%20ansible-config%20dir%20and%20changing%20permission.png)
1515

1616
- From the Jenkins web console, onto the manage plugin, then on the available tab, searching for copy-artifact plugin and installing the plugin
1717

18-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/installing%20copy_artifacts%20plugin.png)
18+
![](./img/project12/installing%20copy_artifacts%20plugin.png)
1919

2020
- Creating a new freestyle job ‘save-artifact’ and configuring it to be triggered on the completion of the existing ‘ansible’ job:
2121

22-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/creating%20save_artifacts%20job.png)
22+
![](./img/project12/creating%20save_artifacts%20job.png)
2323

2424
**On the general tab**
2525

26-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/setting%20save_artifacts%20job.png)
26+
![](./img/project12/setting%20save_artifacts%20job.png)
2727

2828
**On the build trigger tab**
2929

30-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/setting%20save_artifacts%20job-2.png)
30+
![](./img/project12/setting%20save_artifacts%20job-2.png)
3131

3232
**On the build tab**
3333

34-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/setting%20save_artifacts%20job-3.png)
34+
![](./img/project12/setting%20save_artifacts%20job-3.png)
3535

3636
- Testing the configuration by making a change in the README.md file:
3737

3838
**Ansible build triggered with save_artifacts**
3939

40-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/ansible%20build%20with%20save_artifact.png)
40+
![](./img/project12/ansible%20build%20with%20save_artifact.png)
4141

4242
**Artifacts successfully saved on the /home/ubuntu/ansible-config-artifact**
4343

44-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/artifacts%20copied%20to%20the%20ansible-config-artifact%20dir.png)
44+
![](./img/project12/artifacts%20copied%20to%20the%20ansible-config-artifact%20dir.png)
4545

4646
## STEP 2: Refactoring Ansible Code
4747

4848
- Pulling the latest changes from the main branch: `git pull`
4949
Checkout to new branch ‘refactor’: `git checkout -b refactor`
5050

51-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/git%20checkout%20to%20refactored.png)
51+
![](./img/project12/git%20checkout%20to%20refactored.png)
5252

5353
- Creating site.yml file in the playbooks folder. The file will be considered as an entry point into the entire infrastructure, ie, site.yml will be the parent to all other playbook
5454
- Creating ‘static-assignments’ folder in the root of the repository. This is where all the children playbooks are stored
@@ -60,11 +60,11 @@ Checkout to new branch ‘refactor’: `git checkout -b refactor`
6060
- import_playbook: ../static-assignments/common.yml
6161
6262
```
63-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/site.yml.png)
63+
![](./img/project12/site.yml.png)
6464

6565
**The ansible-config-mgt folder structure**
6666

67-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/ansible-config-mgt%20folder%20structure.png)
67+
![](./img/project12/ansible-config-mgt%20folder%20structure.png)
6868

6969
- Since the wireshark has been installed on the webservers, so common-del.yml is used instead of common.yml to uninstall wireshark
7070

@@ -97,7 +97,7 @@ Checkout to new branch ‘refactor’: `git checkout -b refactor`
9797
autoclean: yes
9898
9999
```
100-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/common-del%20file.png)
100+
![](./img/project12/common-del%20file.png)
101101

102102
**updating site.yml playbook file**
103103

@@ -107,11 +107,11 @@ Checkout to new branch ‘refactor’: `git checkout -b refactor`
107107
- import_playbook: ../static-assignments/common-del.yml
108108
109109
```
110-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/updating%20site.yml-2.png)
110+
![](./img/project12/updating%20site.yml-2.png)
111111

112112
- Running the ansible-playbook command against dev.yml inventory file: `$ sudo ansible-playbook -i /home/ubuntu/ansible-config-artifact/inventory/dev.yml /home/ubuntu/ansible-config-artifact/playbooks/site.yml`
113113

114-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/running%20playbook%20against%20dev.yml%20for%20common-del.png)
114+
![](./img/project12/running%20playbook%20against%20dev.yml%20for%20common-del.png)
115115

116116
## STEP 3: Making Use Of Role Functionalities
117117

@@ -124,20 +124,20 @@ Checkout to new branch ‘refactor’: `git checkout -b refactor`
124124
<Web2-UAT-Server-Private-IP-Address> ansible_ssh_user='ec2-user' ansible_ssh_private_key_file=<path-to-.pem-private-key>
125125
126126
```
127-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/uat.yml.png)
127+
![](./img/project12/uat.yml.png)
128128

129129
- To create a role for the UAT webservers, the folder ‘role’ is created in the playbooks directory
130130
- Creating a dummy role structure ‘webserver’ with ansible-galaxy command: `$ sudo ansible-galaxy init webserver`
131131

132-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/creating%20webserver%20role.png)
132+
![](./img/project12/creating%20webserver%20role.png)
133133

134134
**webserver role folder structure**
135135

136-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/webserver%20folder%20structure.png)
136+
![](./img/project12/webserver%20folder%20structure.png)
137137

138138
- Inorder to make ansible locate the role directory, editing the role section and specifying the role path in the ansible.cfg file: `$ sudo vi /etc/ansible/ansible.cfg`
139139

140-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/configuring%20the%20role%20path.png)
140+
![](./img/project12/configuring%20the%20role%20path.png)
141141

142142
- Configuring the task file of the webserver role and adding the following task in the main.yml: `$ sudo vi ansible-config-artifact/playbooks/role/webserver/task/main.yml`
143143

@@ -158,7 +158,7 @@ Checkout to new branch ‘refactor’: `git checkout -b refactor`
158158
- name: clone a repo
159159
become: true
160160
ansible.builtin.git:
161-
repo: https://github.com/somex6/tooling.git
161+
repo: https://github.com/apotitech/tooling.git
162162
dest: /var/www/html
163163
force: yes
164164
@@ -179,11 +179,11 @@ Checkout to new branch ‘refactor’: `git checkout -b refactor`
179179
state: absent
180180
181181
```
182-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/webserver%20task%20file.png)
182+
![](./img/project12/webserver%20task%20file.png)
183183

184184
The task file does the following:
185185
1) Install and configure Apache (httpd service)
186-
2) Clone Tooling website from GitHub https://github.com/somex6/tooling.git.
186+
2) Clone Tooling website from GitHub https://github.com/apotitech/tooling.git.
187187
3) Ensuring the tooling website code is deployed to /var/www/html on each of 2 UAT Web servers.
188188
4) Ensuring httpd service is started
189189

@@ -198,7 +198,7 @@ The task file does the following:
198198
199199
```
200200

201-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/uat-webserver.yml.png)
201+
![](./img/project12/uat-webserver.yml.png)
202202

203203
- Updating the site.yml file to be able to import uat-webservers role
204204

@@ -207,30 +207,30 @@ The task file does the following:
207207
- import_playbook: ../static-assignments/uat-webservers.yml
208208
209209
```
210-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/updating%20site.yml-3.png)
210+
![](./img/project12/updating%20site.yml-3.png)
211211

212212
## STEP 4: Commit And Running the playbook
213213

214214
- Commiting the changes and pushing the code to the main branch to create a merge request
215215

216-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/git%20add%20and%20push%20from%20refactored%20branch.png)
216+
![](./img/project12/git%20add%20and%20push%20from%20refactored%20branch.png)
217217

218218
- Merging the request
219219

220220
**Pull request created**
221221

222-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/pull%20request%20created.png)
222+
![](./img/project12/pull%20request%20created.png)
223223

224224
**Pull request merged**
225225

226-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/pull%20request%20merged.png)
226+
![](./img/project12/pull%20request%20merged.png)
227227

228228
- Ensuring that Jenkins build is triggered
229229

230-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/build%20job%20triggered.png)
230+
![](./img/project12/build%20job%20triggered.png)
231231

232232
- Running the ansible playbook: `sudo ansible-playbook -i /home/ubuntu/ansible-config-artifact/inventory/uat.yml /home/ubuntu/ansible-config-artifact/playbooks/site.yml`
233233

234-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/running%20the%20playbook.png)
235-
![](https://github.com/somex6/Darey.io-Projects/blob/main/img/project12/running%20the%20playbook-2.png)
234+
![](./img/project12/running%20the%20playbook.png)
235+
![](./img/project12/running%20the%20playbook-2.png)
236236

README.md

+31-27
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,59 @@
1-
# DEVOPS PROJECTS
1+
# DEVOPS RANDOM PROJECTS
22

3-
This repository contains most of the real-life projects I carried out during my DevOps career journey
3+
![random](./img/RANDOM.png)
4+
5+
This repository contains some random real-life projects I carried out during my DevOps career journey!
46

57
## Table Of Contents
68

7-
**Project 1:** [SETTING UP A LAMP STACK WEB SERVER IN THE AWS CLOUD](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project1.md)
9+
**Project 1:** [SETTING UP A LAMP STACK WEB SERVER IN THE AWS CLOUD](./project1.md)
10+
11+
**Project 2:** [SETTING UP A LEMP STACK WEB SERVER ON AWS CLOUD](./project2.md)
812

9-
**Project 2:** [SETTING UP A LEMP STACK WEB SERVER ON AWS CLOUD](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project2.md)
13+
**Project 3:** [SETTING UP A MERN STACK AND DEPLOYING A TODO APPLICATION ON AWS CLOUD](./project3.md)
1014

11-
**Project 3:** [SETTING UP A MERN STACK AND DEPLOYING A TODO APPLICATION ON AWS CLOUD](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project3.md)
15+
**Project 4:** [DEPLOYING A SIMPLE BOOK REGISTER APPLICATION WITH MEAN STACK IN AWS CLOUD](./project4.md)
1216

13-
**Project 4:** [DEPLOYING A SIMPLE BOOK REGISTER APPLICATION WITH MEAN STACK IN AWS CLOUD](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project4.md)
17+
**Project 5:** [IMPLEMENTING A CLIENT SERVER ARCHITECTURE USING MYSQL DATABASE MANAGEMENT SYSTEM (DBMS)](./project5.md)
1418

15-
**Project 5:** [IMPLEMENTING A CLIENT SERVER ARCHITECTURE USING MYSQL DATABASE MANAGEMENT SYSTEM (DBMS)](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project5.md)
19+
**Project 6:** [IMPLEMENTING LOGICAL VOLUME MANAGEMENT AND WORDPRESS WEB SOLUTION PROJECT](./project6.md)
1620

17-
**Project 6:** [IMPLEMENTING LOGICAL VOLUME MANAGEMENT AND WORDPRESS WEB SOLUTION PROJECT](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project6.md)
21+
**Project 7:** [IMPLEMENTATION OF WEB APPLICATION ARCHITECTURE WITH A SINGLE DATABASE AND NFS SERVER](./project7.md)
1822

19-
**Project 7:** [IMPLEMENTATION OF WEB APPLICATION ARCHITECTURE WITH A SINGLE DATABASE AND NFS SERVER](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project7.md)
23+
**Project 8:** [LOAD BALANCER SOLUTION WITH APACHE](./project8.md)
2024

21-
**Project 8:** [LOAD BALANCER SOLUTION WITH APACHE](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project8.md)
25+
**Project 9:** [WORKING WITH JENKINS - CI/CD PROJECT](./project9.md)
2226

23-
**Project 9:** [WORKING WITH JENKINS - CI/CD PROJECT](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project9.md)
27+
**Project 10:** [LOAD BALANCER SOLUTION WITH NGINX AND SSL/TLS](./project10.md)
2428

25-
**Project 10:** [LOAD BALANCER SOLUTION WITH NGINX AND SSL/TLS](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project10.md)
29+
**Project 11:** [AUTOMATING PROJECTS WITH ANSIBLE CONFIGURATION MANAGEMENT](./project11.md)
2630

27-
**Project 11:** [AUTOMATING PROJECTS WITH ANSIBLE CONFIGURATION MANAGEMENT](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project11.md)
31+
**Project 12:** [ANSIBLE REFACTORING AND STATIC ASSIGNMENT (IMPORTS AND ROLES)](./Project12.md)
2832

29-
**Project 12:** [ANSIBLE REFACTORING AND STATIC ASSIGNMENT (IMPORTS AND ROLES)](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/Project12.md)
33+
**Project 13:** [INTRODUCING ANSIBLE DYNAMIC ASSIGNMENTS(INCLUDE) AND COMMUNITY ROLES](./project13.md)
3034

31-
**Project 13:** [INTRODUCING ANSIBLE DYNAMIC ASSIGNMENTS(INCLUDE) AND COMMUNITY ROLES](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project13.md)
35+
**Project 14:** [CONTINOUS INTEGRATION WITH JENKINS, ANSIBLE, ARTIFACTORY SONARQUBE AND PHP](./project14.md)
3236

33-
**Project 14:** [CONTINOUS INTEGRATION WITH JENKINS, ANSIBLE, ARTIFACTORY SONARQUBE AND PHP](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project14.md)
37+
**Project 15:** [AWS CLOUD SOLUTION FOR 2 COMPANY WEBSITES USING A REVERSE PROXY TECHNOLOGY](./project15.md)
3438

35-
**Project 15:** [AWS CLOUD SOLUTION FOR 2 COMPANY WEBSITES USING A REVERSE PROXY TECHNOLOGY](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project15.md)
39+
**Project 16:** [AUTOMATING INFRASTRUCTURE WITH IAC USING TERRAFORM PART 1](./project16.md)
3640

37-
**Project 16:** [AUTOMATING INFRASTRUCTURE WITH IAC USING TERRAFORM PART 1](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project16.md)
41+
**Project 17:** [AUTOMATING INFRASTRUCTURE WITH IAC USING TERRAFORM PART 2](./project17.md)
3842

39-
**Project 17:** [AUTOMATING INFRASTRUCTURE WITH IAC USING TERRAFORM PART 2](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project17.md)
43+
**Project 18:** [AUTOMATING INFRASTRUCTURE WITH IAC USING TERRAFORM PART 3 – REFACTORING](./project18.md)
4044

41-
**Project 18:** [AUTOMATING INFRASTRUCTURE WITH IAC USING TERRAFORM PART 3REFACTORING](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project18.md)
45+
**Project 19:** [AUTOMATING INFRASTRUCTURE WITH IAC USING TERRAFORM PART 4TERRAFORM CLOUD](./project19.md)
4246

43-
**Project 19:** [AUTOMATING INFRASTRUCTURE WITH IAC USING TERRAFORM PART 4 – TERRAFORM CLOUD](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project19.md)
47+
**Project 20:** [MIGRATION TO THE CLOUD WITH CONTAINERIZATION - DOCKER](./project20.md)
4448

45-
**Project 20:** [MIGRATION TO THE CLOUD WITH CONTAINERIZATION - DOCKER](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project20.md)
49+
**Project 21:** [SETTING UP A KUBERNETES CLUSTER FROM GROUND UP (THE HARD WAY)](./project21.md)
4650

47-
**Project 21:** [SETTING UP A KUBERNETES CLUSTER FROM GROUND UP (THE HARD WAY)](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project21.md)
51+
**Project 22:** [DEPLOYING APPLICATIONS INTO KUBERNETES CLUSTER](./project22.md)
4852

49-
**Project 22:** [DEPLOYING APPLICATIONS INTO KUBERNETES CLUSTER](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project22.md)
53+
**Project 23:** [PERSISTING DATA IN KUBERNETES](./project23.md)
5054

51-
**Project 23:** [PERSISTING DATA IN KUBERNETES](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project23.md)
55+
**Project 24:** [BUILDING ELASTIC KUBERNETES SERVICE (EKS) WITH TERRAFORM](./project24.md)
5256

53-
**Project 24:** [BUILDING ELASTIC KUBERNETES SERVICE (EKS) WITH TERRAFORM](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/project24.md)
57+
**Aux Project:** [ONBOARDING NEW LINUX USERS ONTO A SERVER WITH SHELL SCRIPT](./auxillary-projects.md)
5458

55-
**Aux Project:** [ONBOARDING NEW LINUX USERS ONTO A SERVER WITH SHELL SCRIPT](https://github.com/apotitech/DevOps_Random_Projects_101/blob/main/auxillary-projects.md)
59+
![random](./img/THANKU.png)

0 commit comments

Comments
 (0)