blob: 4ed2da2858b24ded881e4029def563465f662e02 [file] [log] [blame]
rdudyalab086cf32016-08-11 00:07:45 -04001---
2- name: Install Standalone ceilometer
3 hosts: local
4 vars:
5 mysql_root_password: "password"
6 sudo: yes
7 tasks:
8 # Adding cloud repo and update,upgrade
9 - name: install repository
10 apt: name=software-properties-common state=present
11 - name: Adding package to repository list
12 shell: add-apt-repository cloud-archive:mitaka
13 - name: apt update
14 apt: update_cache=yes
15 - name: apt dist-upgrade
16 apt: upgrade=dist
17 - name: installing openstack clients
18 apt: name=python-openstackclient state=present
19 #Installing Mysql Service
20 - name: Install Mysql Service
21 apt: name={{ item }} state=installed update_cache=yes
22 with_items:
23 - mariadb-server
24 - python-pymysql
25 - python-mysqldb
26
27 - name: Copy cnf file
28 template: src=openstack.cnf.j2 dest=/etc/mysql/conf.d/openstack.cnf owner=root group=root mode=0644
29 - name: Start the MySQL service
30 service: name=mysql state=restarted enabled=true
31
32 # Mysql secure installation
33 # Note: Please comment this section if this playbook is not excuting first time(fix me)
34 - name: delete anonymous MySQL server user for localhost
35 action: mysql_user user="" host="localhost" state="absent"
36 - name: delete anonymous MySQL server user for localhost
37 action: mysql_user user="" state="absent"
38 - name: remove the MySQL test database
39 action: mysql_db db=test state=absent
40
41 #Updating root permissions
42 - name: update mysql root password for all root accounts
43 sudo: yes
44 mysql_user:
45 name: root
46 host: "{{ item }}"
47 login_user: root
48 #password: "{{ mysql_root_password }}"
49 password: "password"
50 login_password: "{{ mysql_root_password }}"
51 check_implicit_admin: yes
52 priv: "*.*:ALL,GRANT"
53 with_items:
54 - "{{ ansible_hostname }}"
55 - 127.0.0.1
56 - ::1
57 - localhost
58 #Installing rabbitmq service
59 - name: rabbitmq-server
60 apt: name=rabbitmq-server state=present
61 - name : Adding Rabbitmq user
62 shell : rabbitmqctl add_user openstack "password";rabbitmqctl set_permissions openstack ".*" ".*" ".*"
63
64 # Installing Keystone Service
65 - name: Creating keystone.override file
66 template: src=keystone.override.j2 dest=/etc/init/keystone.override owner=root group=root mode=0644
67
68 - name: Install Keystone
69 apt: name={{ item }} state=installed update_cache=yes
70 with_items:
71 - keystone
72 - apache2
73 - libapache2-mod-wsgi
74
75 # installing memcached
76 - name : installing memcached service
77 apt: name={{ item }} state=present
78 with_items:
79 - memcached
80 - python-memcache
81 - name: reStart the memcached service
82 service: name=memcached state=restarted enabled=true
83 #editing memcache conf file
84 - name: Adding new line
85 lineinfile: dest=/etc/memcached.conf line="-l 127.0.0.1"
86 - name: Restart memcached service
87 service: name=memcached state=restarted enabled=true
88 - name: Keystone create DB for service
89 mysql_db:
90 login_user: "root"
91 login_password: "password"
92 login_host: "localhost"
93 name: "keystone"
94 state: "present"
95 - name: Keystone grant access to the DB for the service
96 mysql_user:
97 login_user: "root"
98 login_password: "password"
99 login_host: "localhost"
100 name: "keystone"
101 password: "password"
102 host: "{{ item }}"
103 state: "present"
104 priv: "keystone.*:ALL"
105 with_items:
106 - "localhost"
107 - "%"
108 # Installing Keystone Service
109 - name: Creating keystone.override file
110 template: src=keystone.override.j2 dest=/etc/init/keystone.override owner=root group=root mode=0644
111
112 - name: Install Keystone
113 apt: name={{ item }} state=installed update_cache=yes
114 with_items:
115 - keystone
116 - apache2
117 - libapache2-mod-wsgi
118 - name: Creating keystone.conf
119 template: src=keystone.conf.j2 dest=/etc/keystone/keystone.conf owner=root group=root mode=0644
120 - name: Running sync database
121 shell: /bin/sh -c "keystone-manage db_sync" keystone
122 - name: initializing fernet keystone
123 shell: keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
124 # Configuring apache server
125 - name: Adding new line
126 lineinfile: dest=/etc/apache2/apache2.conf line="ServerName localhost"
127
128 - name: Creating wsgi-keystone.conf
129 template: src=wsgi-keystone.conf.j2 dest=/etc/apache2/sites-available/wsgi-keystone.conf owner=root group=root mode=0644
130 - name : Configuring apache2
131 shell: ln -s /etc/apache2/sites-available/wsgi-keystone.conf /etc/apache2/sites-enabled
132 ignore_errors: yes
133 - name: Restart apache2 service
134 service: name=apache2 state=restarted enabled=true
135 - name : removing previous databases
136 shell: rm -f /var/lib/keystone/keystone.db
137 #Installing mongod db server
138 - name: Install the Mongo db server
139 apt: name={{ item }} state=installed update_cache=yes
140 with_items:
141 - mongodb-server
142 - mongodb-clients
143 - python-pymongo
144 - name: Creating mongodb.conf
145 template: src=mongodb.conf.j2 dest=/etc/mongodb.conf owner=root group=root mode=0644
146 - name: Stopping mongodb service
147 service: name=mongodb state=stopped
148 - name: Removing mongodb files
149 shell: rm -rf /var/lib/mongodb/journal/prealloc.*
150 - name: starting mongodb service
151 service: name=mongodb state=started
152 - name : Configuring users
153 script: configure_users_mitaka.sh
154 - name: Adding ceilometer database
155 script: mongo_user.sh
156 #mongodb_user: database=ceilometer name=ceilometer password=password roles='readWrite,userAdmin' state=present
157 #Installing Ceilometer Services
158 - name : Install Ceilometer services
159 apt: name={{ item }} state=installed update_cache=yes
160 with_items:
161 - ceilometer-api
162 - ceilometer-collector
163 - ceilometer-agent-central
164 - ceilometer-agent-notification
165 - python-ceilometerclient
166
167 - name: Creating Ceilometer.conf
168 template: src=ceilometer.conf.j2 dest=/etc/ceilometer/ceilometer.conf owner=root group=root mode=0644
169
170 - name: Restarting ceilometer-agent-central
171 service: name=ceilometer-agent-central state=restarted
172
173 - name: Restarting ceilometer-agent-notification
174 service: name=ceilometer-agent-notification state=restarted
175
176 - name: Restarting Celometer API
177 service: name=ceilometer-api state=restarted
178
179 - name: Restarting ceilometer-collector
180 service: name=ceilometer-collector state=restarted