aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉric Lemoine <elemoine@mirantis.com>2016-02-12 14:17:48 +0100
committerSamYaple <sam@yaple.net>2016-02-19 21:56:10 +0000
commit170b493d472be4c4e44f5a94a8e4a774a37e198c (patch)
tree30f803c62da3cace3e6b02154eda661206770a82
parent88633684a1e0335407472b6806637f14d1b6683e (diff)
downloadkolla-170b493d472be4c4e44f5a94a8e4a774a37e198c.tar.gz
kolla-170b493d472be4c4e44f5a94a8e4a774a37e198c.zip
Make Heka collect Cinder logs
Partially implements: blueprint heka Change-Id: I9dcb71a9cf063fb520fcf3485e0376f1e90d87ad
-rw-r--r--ansible/roles/cinder/tasks/bootstrap_service.yml4
-rw-r--r--ansible/roles/cinder/tasks/start.yml8
-rw-r--r--ansible/roles/cinder/templates/cinder.conf.j27
-rw-r--r--ansible/roles/common/templates/heka-openstack.toml.j22
-rw-r--r--ansible/roles/common/templates/rsyslog.conf.j212
-rw-r--r--docker/cinder/cinder-api/extend_start.sh7
-rw-r--r--docker/cinder/cinder-base/Dockerfile.j216
-rw-r--r--docker/cinder/cinder-base/extend_start.sh8
8 files changed, 37 insertions, 27 deletions
diff --git a/ansible/roles/cinder/tasks/bootstrap_service.yml b/ansible/roles/cinder/tasks/bootstrap_service.yml
index fa58ccfd9..fc97f91cf 100644
--- a/ansible/roles/cinder/tasks/bootstrap_service.yml
+++ b/ansible/roles/cinder/tasks/bootstrap_service.yml
@@ -12,6 +12,8 @@
BOOTSTRAP:
name: "bootstrap_cinder"
restart_policy: "never"
- volumes: "{{ node_config_directory }}/cinder-api/:{{ container_config_directory }}/:ro"
+ volumes:
+ - "{{ node_config_directory }}/cinder-api/:{{ container_config_directory }}/:ro"
+ - "kolla_logs:/var/log/kolla/"
run_once: True
delegate_to: "{{ groups['cinder-api'][0] }}"
diff --git a/ansible/roles/cinder/tasks/start.yml b/ansible/roles/cinder/tasks/start.yml
index edd08a19b..715695e9c 100644
--- a/ansible/roles/cinder/tasks/start.yml
+++ b/ansible/roles/cinder/tasks/start.yml
@@ -7,7 +7,7 @@
image: "{{ cinder_api_image_full }}"
volumes:
- "{{ node_config_directory }}/cinder-api/:{{ container_config_directory }}/:ro"
- - "rsyslog_socket:/var/lib/kolla/rsyslog/"
+ - "kolla_logs:/var/log/kolla/"
when: inventory_hostname in groups['cinder-api']
- name: Starting cinder-scheduler container
@@ -18,7 +18,7 @@
image: "{{ cinder_scheduler_image_full }}"
volumes:
- "{{ node_config_directory }}/cinder-scheduler/:{{ container_config_directory }}/:ro"
- - "rsyslog_socket:/var/lib/kolla/rsyslog/"
+ - "kolla_logs:/var/log/kolla/"
when: inventory_hostname in groups['cinder-scheduler']
- name: Starting cinder-volume container
@@ -32,7 +32,7 @@
- "{{ node_config_directory }}/cinder-volume/:{{ container_config_directory }}/:ro"
- "/dev/:/dev/"
- "/run/:/run/"
- - "rsyslog_socket:/var/lib/kolla/rsyslog/"
+ - "kolla_logs:/var/log/kolla/"
when: inventory_hostname in groups['cinder-volume']
- name: Starting cinder-backup container
@@ -44,6 +44,6 @@
privileged: True
volumes:
- "{{ node_config_directory }}/cinder-backup/:{{ container_config_directory }}/:ro"
- - "/run/kolla/log:/dev/log"
- "/dev/mapper/:/dev/mapper/"
+ - "kolla_logs:/var/log/kolla/"
when: inventory_hostname in groups['cinder-backup']
diff --git a/ansible/roles/cinder/templates/cinder.conf.j2 b/ansible/roles/cinder/templates/cinder.conf.j2
index f7d4463c7..91c9b6a30 100644
--- a/ansible/roles/cinder/templates/cinder.conf.j2
+++ b/ansible/roles/cinder/templates/cinder.conf.j2
@@ -1,8 +1,11 @@
[DEFAULT]
debug = {{ cinder_logging_debug }}
-use_syslog = True
-syslog_log_facility = LOG_LOCAL0
+log_dir = /var/log/kolla/cinder
+
+# Set use_stderr to False or the logs will also be sent to stderr
+# and collected by Docker
+use_stderr = False
enable_v1_api=false
volume_name_template = %s
diff --git a/ansible/roles/common/templates/heka-openstack.toml.j2 b/ansible/roles/common/templates/heka-openstack.toml.j2
index db642dd15..306904f79 100644
--- a/ansible/roles/common/templates/heka-openstack.toml.j2
+++ b/ansible/roles/common/templates/heka-openstack.toml.j2
@@ -6,5 +6,5 @@ filename = "lua_decoders/os_openstack_log.lua"
type = "LogstreamerInput"
decoder = "openstack_log_decoder"
log_directory = "/var/log/kolla"
-file_match = '(?P<Service>nova|glance|keystone|neutron)/(?P<Program>.*)\.log'
+file_match = '(?P<Service>nova|glance|keystone|neutron|cinder)/(?P<Program>.*)\.log'
differentiator = ["Service", "_", "Program"]
diff --git a/ansible/roles/common/templates/rsyslog.conf.j2 b/ansible/roles/common/templates/rsyslog.conf.j2
index 349861be4..7c7660024 100644
--- a/ansible/roles/common/templates/rsyslog.conf.j2
+++ b/ansible/roles/common/templates/rsyslog.conf.j2
@@ -16,18 +16,6 @@ $template HeatAPICfnFile,"/var/log/heat/heat-api-cfn.log"
$template HeatEngineFile,"/var/log/heat/heat-engine.log"
:syslogtag,contains,"heat-engine" ?HeatEngineFile
-$template CinderApiFile,"/var/log/cinder/cinder-api.log"
-:syslogtag,contains,"cinder-api" ?CinderApiFile
-
-$template CinderBackupFile,"/var/log/cinder/cinder-backup.log"
-:syslogtag,contains,"cinder-backup" ?CinderBackupFile
-
-$template CinderSchedulerFile,"/var/log/cinder/cinder-scheduler.log"
-:syslogtag,contains,"cinder-scheduler" ?CinderSchedulerFile
-
-$template CinderVolumeFile,"/var/log/cinder/cinder-volume.log"
-:syslogtag,contains,"cinder-volume" ?CinderVolumeFile
-
$template MuranoEngineFile,"/var/log/murano/murano-engine.log"
:syslogtag,contains,"murano-engine" ?MuranoEngineFile
diff --git a/docker/cinder/cinder-api/extend_start.sh b/docker/cinder/cinder-api/extend_start.sh
index 176515189..f6e2ddb20 100644
--- a/docker/cinder/cinder-api/extend_start.sh
+++ b/docker/cinder/cinder-api/extend_start.sh
@@ -1,6 +1,13 @@
#!/bin/bash
set -o errexit
+if [[ ! -d "/var/log/kolla/cinder" ]]; then
+ mkdir -p /var/log/kolla/cinder
+fi
+if [[ $(stat -c %a /var/log/kolla/cinder) != "755" ]]; then
+ chmod 755 /var/log/kolla/cinder
+fi
+
# Bootstrap and exit if KOLLA_BOOTSTRAP variable is set. This catches all cases
# of the KOLLA_BOOTSTRAP variable being set, including empty.
if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then
diff --git a/docker/cinder/cinder-base/Dockerfile.j2 b/docker/cinder/cinder-base/Dockerfile.j2
index 41b33922d..46e87198a 100644
--- a/docker/cinder/cinder-base/Dockerfile.j2
+++ b/docker/cinder/cinder-base/Dockerfile.j2
@@ -45,15 +45,17 @@ ADD cinder-base-archive /cinder-base-source
RUN ln -s cinder-base-source/* cinder \
&& useradd --user-group cinder \
&& /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade -c requirements/upper-constraints.txt /cinder \
- && mkdir -p /etc/cinder /var/log/cinder /var/lib/cinder /home/cinder \
+ && mkdir -p /etc/cinder /var/lib/cinder /home/cinder \
&& cp -r /cinder/etc/cinder/* /etc/cinder/ \
- && chown -R cinder: /etc/cinder /var/log/cinder /var/lib/cinder /home/cinder \
+ && chown -R cinder: /etc/cinder /var/lib/cinder /home/cinder \
&& sed -i 's|^exec_dirs.*|exec_dirs=/var/lib/kolla/venv/bin,/sbin,/usr/sbin,/bin,/usr/bin,/usr/local/bin,/usr/local/sbin|g' /etc/cinder/rootwrap.conf
-COPY cinder_sudoers /etc/sudoers.d/cinder_sudoers
-RUN chmod 750 /etc/sudoers.d \
- && chmod 440 /etc/sudoers.d/cinder_sudoers
-
{% endif %}
-RUN usermod -a -G kolla cinder
+COPY cinder_sudoers /etc/sudoers.d/cinder_sudoers
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+
+RUN usermod -a -G kolla cinder \
+ && chmod 750 /etc/sudoers.d \
+ && chmod 440 /etc/sudoers.d/cinder_sudoers \
+ && chmod 755 /usr/local/bin/kolla_extend_start
diff --git a/docker/cinder/cinder-base/extend_start.sh b/docker/cinder/cinder-base/extend_start.sh
new file mode 100644
index 000000000..2652bf264
--- /dev/null
+++ b/docker/cinder/cinder-base/extend_start.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+if [[ ! -d "/var/log/kolla/cinder" ]]; then
+ mkdir -p /var/log/kolla/cinder
+fi
+if [[ $(stat -c %a /var/log/kolla/cinder) != "755" ]]; then
+ chmod 755 /var/log/kolla/cinder
+fi