aboutsummaryrefslogtreecommitdiffstats
path: root/deploy/adapters/ansible/roles
diff options
context:
space:
mode:
authorYifei Xue <xueyifei@huawei.com>2018-01-30 01:03:47 +0000
committerGerrit Code Review <gerrit@opnfv.org>2018-01-30 01:03:47 +0000
commit7dfbe30d59e513da56fe34e3ffa44840a4c41ded (patch)
treefb3e6188baff221827a7e6c71c055de93f327e0a /deploy/adapters/ansible/roles
parent2c93fa28f1f1e78f4135f096f0c59e82963fd847 (diff)
parent8c52d2b68d656aef61baf8d092e40024f397c5ed (diff)
Merge "Change gnocchi storage and increase the capacity of ceph"
Diffstat (limited to 'deploy/adapters/ansible/roles')
-rw-r--r--deploy/adapters/ansible/roles/config-osa/files/polling.yaml6
-rw-r--r--deploy/adapters/ansible/roles/config-osa/files/user_ceph.yml10
-rw-r--r--deploy/adapters/ansible/roles/config-osa/tasks/meters.yml12
-rwxr-xr-xdeploy/adapters/ansible/roles/post-osa/handlers/main.yml14
-rwxr-xr-xdeploy/adapters/ansible/roles/post-osa/tasks/ceilometer-upgrade.yml28
-rw-r--r--deploy/adapters/ansible/roles/post-osa/tasks/main.yml4
-rw-r--r--deploy/adapters/ansible/roles/post-osa/vars/main.yml11
-rw-r--r--deploy/adapters/ansible/roles/storage/vars/main.yml2
8 files changed, 86 insertions, 1 deletions
diff --git a/deploy/adapters/ansible/roles/config-osa/files/polling.yaml b/deploy/adapters/ansible/roles/config-osa/files/polling.yaml
new file mode 100644
index 0000000..631e368
--- /dev/null
+++ b/deploy/adapters/ansible/roles/config-osa/files/polling.yaml
@@ -0,0 +1,6 @@
+---
+sources:
+ - name: all_pollsters
+ interval: 300
+ meters:
+ - "*"
diff --git a/deploy/adapters/ansible/roles/config-osa/files/user_ceph.yml b/deploy/adapters/ansible/roles/config-osa/files/user_ceph.yml
index 9d5f13a..6daa143 100644
--- a/deploy/adapters/ansible/roles/config-osa/files/user_ceph.yml
+++ b/deploy/adapters/ansible/roles/config-osa/files/user_ceph.yml
@@ -14,3 +14,13 @@ cinder_backends:
rbd_user: cinder
rbd_secret_uuid: "{{ cinder_ceph_client_uuid }}"
report_discard_supported: true
+
+gnocchi_storage_driver: ceph
+gnocchi_ceph_pool: "metrics"
+ceph_extra_components:
+ - component: gnocchi_api
+ package:
+ - "{{ python_ceph_package }}"
+ client:
+ - '{{ gnocchi_ceph_client }}'
+ service: '{{ ceph_gnocchi_service_names }}'
diff --git a/deploy/adapters/ansible/roles/config-osa/tasks/meters.yml b/deploy/adapters/ansible/roles/config-osa/tasks/meters.yml
index 8f06a88..2b3bce5 100644
--- a/deploy/adapters/ansible/roles/config-osa/tasks/meters.yml
+++ b/deploy/adapters/ansible/roles/config-osa/tasks/meters.yml
@@ -69,3 +69,15 @@
[database]{% raw %}
connection = mysql+pymysql://{{ ceilometer_galera_user }}:{{ ceilometer_container_db_password }}@{{ceilometer_galera_address }}/{{ ceilometer_galera_database }}?charset=utf86{% endraw %}
# yamllint enable rule:line-length
+
+- name: make sure the directory exist
+ file:
+ dest: /etc/openstack_deploy/ceilometer
+ state: directory
+ mode: 0755
+
+- name: copy the polling.yml
+ copy:
+ dest: /etc/openstack_deploy/ceilometer/polling.yaml
+ src: polling.yaml
+ mode: 0644
diff --git a/deploy/adapters/ansible/roles/post-osa/handlers/main.yml b/deploy/adapters/ansible/roles/post-osa/handlers/main.yml
index 3d979e6..d685edc 100755
--- a/deploy/adapters/ansible/roles/post-osa/handlers/main.yml
+++ b/deploy/adapters/ansible/roles/post-osa/handlers/main.yml
@@ -9,3 +9,17 @@
- name: restart network service
shell: "/sbin/ifconfig eth0 0 &&/sbin/ifdown -a && \
/sbin/ifup --ignore-errors -a"
+
+- name: Restart ceilometer services
+ service:
+ name: "{{ item.0.service_name }}"
+ enabled: "yes"
+ state: "restarted"
+ with_subelements:
+ - "{{ ceilometer_services }}"
+ - group
+ when: inventory_hostname in groups[item.1]
+ register: _restart
+ until: _restart | success
+ retries: 5
+ delay: 2
diff --git a/deploy/adapters/ansible/roles/post-osa/tasks/ceilometer-upgrade.yml b/deploy/adapters/ansible/roles/post-osa/tasks/ceilometer-upgrade.yml
new file mode 100755
index 0000000..3d991b7
--- /dev/null
+++ b/deploy/adapters/ansible/roles/post-osa/tasks/ceilometer-upgrade.yml
@@ -0,0 +1,28 @@
+#############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+---
+- name: check for gnocchi resource file
+ stat:
+ path: "/etc/ceilometer/gnocchi_resources.yaml"
+ register: gnocchi_resource_file
+
+- name: get the path of ceilometer-upgrade
+ shell: "find / -name ceilometer-upgrade 2>/dev/null || true"
+ register: ceilometer_upgrade_path
+
+- name: Initialize Gnocchi database by creating ceilometer resources
+ command: "{{ ceilometer_upgrade_path.stdout }} --skip-metering-database"
+ become: "yes"
+ when: gnocchi_resource_file.stat.exists
+ register: _upgrade
+ until: _upgrade | success
+ retries: 10
+ delay: 2
+ notify:
+ - Restart ceilometer services
diff --git a/deploy/adapters/ansible/roles/post-osa/tasks/main.yml b/deploy/adapters/ansible/roles/post-osa/tasks/main.yml
index bd83b50..205f339 100644
--- a/deploy/adapters/ansible/roles/post-osa/tasks/main.yml
+++ b/deploy/adapters/ansible/roles/post-osa/tasks/main.yml
@@ -23,3 +23,7 @@
when:
- ansible_os_family == 'RedHat' and ansible_distribution_major_version == '7'
- inventory_hostname in groups['compute']
+
+- include: ceilometer-upgrade.yml
+ when:
+ - inventory_hostname in groups['ceilometer_all']
diff --git a/deploy/adapters/ansible/roles/post-osa/vars/main.yml b/deploy/adapters/ansible/roles/post-osa/vars/main.yml
index da88602..1272815 100644
--- a/deploy/adapters/ansible/roles/post-osa/vars/main.yml
+++ b/deploy/adapters/ansible/roles/post-osa/vars/main.yml
@@ -24,3 +24,14 @@ intf_storage: |-
{%- set intf_storage = intf_storage + '.' + compu_sys_mappings["storage"]["vlan_tag"]|string %}
{%- endif %}
{{- intf_storage }}
+
+ceilometer_services:
+ ceilometer-agent-notification:
+ group:
+ - ceilometer_agent_notification
+ service_name: ceilometer-agent-notification
+ ceilometer-polling:
+ group:
+ - ceilometer_agent_central
+ - ceilometer_agent_compute
+ service_name: ceilometer-polling
diff --git a/deploy/adapters/ansible/roles/storage/vars/main.yml b/deploy/adapters/ansible/roles/storage/vars/main.yml
index cbee9c1..d6c5961 100644
--- a/deploy/adapters/ansible/roles/storage/vars/main.yml
+++ b/deploy/adapters/ansible/roles/storage/vars/main.yml
@@ -7,7 +7,7 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
---
-host_loopback_ceph_size: "100G"
+host_loopback_ceph_size: "500G"
rc_local_insert_before: "^exit 0$"
bootstrap_host_data_disk_device: null
bootstrap_host_data_disk_device_force: "no"