-
Notifications
You must be signed in to change notification settings - Fork 0
/
playbook_demo_master.yml
161 lines (142 loc) · 5.51 KB
/
playbook_demo_master.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
---
#
# EECS 4287/5287: Principles of Cloud Computing
# Author: Team 4 and 5 Final Project
#
# Final Project Playbook
# # ####################################################
# # ## Play 1: Get facts from all our VMs
# # # Here I show the use of import_tasks from child playbooks
# ####################################################
# - name: "Play 1: Install packages on local VMs"
# hosts:
# MyLocalVMs # specified in the MyInventory file
# remote_user:
# ubuntu # note that the user is ubuntu for
# # vagrant-created VM else use the
# # appropriate user name
# # gather_facts: yes # We ask Ansible to collect all facts
# # become: yes
# # become_user: ubuntu # No need for sudo as we are not installing anything
# tasks: # the task to be performed (here I am showing the effect of include_)
# - include_tasks: tasks/playbook_local_vm_packages.yml
# ####################################################
# ## Play 2: Create Chameleon VMs
# ####################################################
# - name: "Play 2: Create Chameleon instances"
# hosts:
# MyLocalVMs
# connection: local
# collections:
# - openstack.cloud
# tasks: # the task to be performed (here I am showing the effect of include_)
# - include_tasks: tasks/playbook_chameleon_creation.yml
- name: "Add host to VMs"
hosts:
MyLocalVMs
connection: local
tasks:
- name: "Add VM2 to MyChameleonVMs dynamically"
add_host:
hostname: 129.114.26.3
ansible_connection: ssh
ansible_ssh_private_key_file: "/home/vagrant/.ssh/jh_ku_chameleon.key"
groups: MyChameleonVMs
- name: "Add VM3 to MyChameleonVMs dynamically"
add_host:
hostname: 129.114.27.157
ansible_connection: ssh
ansible_ssh_private_key_file: "/home/vagrant/.ssh/jh_ku_chameleon.key"
groups: MyChameleonVMs
# ####################################################
# ## Play 3: Install Packages on Chameleon VMs
# ####################################################
# - name: "Play 3: Installing packages on the VMs"
# hosts: MyChameleonVMs # remember, the requestor is the local machine
# #update ubuntu machine
# remote_user:
# cc
# tasks:
# - include_tasks: tasks/playbook_install_packages_cloud.yml
# ####################################################
# ## Play 4: Configure cloud files
# ####################################################
# - name: "Play 4: Configuring cloud firewall settings"
# hosts: MyChameleonVMs # remember, the requestor is the local machine
# #update ubuntu machine
# remote_user: cc
# become: yes
# tasks:
# - include_tasks: tasks/playbook_cloud_configuration.yml
# ####################################################
# ## Play 5: Installing docker and kubernetes
# ####################################################
# - name: "Play 5: Install Packages, Docker, and Kubernetes"
# hosts: MyChameleonVMs # remember, the requestor is the local machine
# remote_user: cc
# become: yes
# tasks:
# - include_tasks: tasks/playbook_chameleon_docker_kb_install.yml
# ####################################################
# ## Play 6: Start Kubernetes and taint master on VM2
# ####################################################
# - name: "Play 6: Start Kubernetes and taint master on VM2"
# hosts: MyChameleonVMs[0]
# remote_user: cc
# become: yes
# tasks:
# - include_tasks: tasks/playbook_chameleon_VM2_KB_start.yml
# ####################################################
# ## Play 7: Start Kubernetes on VM3
# ####################################################
# - name: "Play 7: Start Kubernetes and taint master on VM2"
# hosts: MyChameleonVMs[1]
# remote_user: cc
# become: yes
# tasks:
# - include_tasks: tasks/playbook_chameleon_VM3_KB_start.yml
# ####################################################
# ## Play 8: Start docker image and create registry
# ####################################################
# - name: "Play 8: Run docker pipeline for zookeeper, kafka"
# hosts: MyChameleonVMs[0]
# remote_user: cc
# become: yes
# tasks:
# - include_tasks: tasks/playbook_docker_img_reg.yml
# - include_tasks: tasks/playbook_zookeeper_service_start.yml
# - include_tasks: tasks/playbook_kafka_service_start.yml
# - include_tasks: tasks/playbook_couchdb_img.yml
# - include_tasks: tasks/playbook_couchdb_run.yml
# ####################################################
# ## Play 10: Run Spark Pipeline
# ####################################################
# - name: "Play 10: Run Spark Pipeline"
# hosts: MyChameleonVMs[0]
# remote_user: cc
# become: yes
# tasks:
# - include_tasks: tasks/playbook_spark_img.yml
# - include_tasks: tasks/playbook_spark_master.yml
# - include_tasks: tasks/playbook_spark_driver_worker.yml
################## RUN THIS AFTER MODEL TRAINING ####################
# ####################################################
# ## Play 12: Run Consumer
# ####################################################
# - name: "Play 12: Run Consumer"
# hosts: MyChameleonVMs[0]
# remote_user: cc
# become: yes
# tasks:
# - include_tasks: tasks/playbook_consumer_img_run.yml
####################################################
## Play 11: Run Nginx Pipeline
####################################################
- name: "Play 11: Run Nginx Pipeline and Flask"
hosts: MyChameleonVMs[0]
remote_user: cc
become: yes
tasks:
- include_tasks: tasks/playbook_nginx_deployment.yml
- include_tasks: tasks/playbook_flask_deployment.yml
...