Remove rsyslog containers from swift-hosts
* Setup rsyslog configuration on the storage nodes * Removes the requirement for an 'lxc' VG on swift nodes * Adjust environment to not start rsyslog containers * Fix log names for error logs to ensure they are configured * Fix the container setup plays to allow an empty list of containers for a host Fixes: #522
This commit is contained in:
parent
c46b0f9eba
commit
14c668c2e8
@ -262,7 +262,6 @@ container_skel:
|
|||||||
- storage_containers
|
- storage_containers
|
||||||
- log_containers
|
- log_containers
|
||||||
- network_containers
|
- network_containers
|
||||||
- swift_containers
|
|
||||||
contains:
|
contains:
|
||||||
- rsyslog
|
- rsyslog
|
||||||
utility_container:
|
utility_container:
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
# This is the md5 of the environment file
|
# This is the md5 of the environment file
|
||||||
# this will ensure consistency when deploying.
|
# this will ensure consistency when deploying.
|
||||||
environment_version: dc4cd5fe9c07eee223e8bbb1c5bbaad5
|
environment_version: 3511a43b8e4cc39af4beaaa852b5f917
|
||||||
|
|
||||||
# User defined CIDR used for containers
|
# User defined CIDR used for containers
|
||||||
# Global cidr/s used for everything.
|
# Global cidr/s used for everything.
|
||||||
|
@ -18,6 +18,7 @@
|
|||||||
roles:
|
roles:
|
||||||
- swift_common
|
- swift_common
|
||||||
- swift_storage_setup
|
- swift_storage_setup
|
||||||
|
- rsyslog_config
|
||||||
vars_files:
|
vars_files:
|
||||||
- inventory/group_vars/swift_all.yml
|
- inventory/group_vars/swift_all.yml
|
||||||
|
|
||||||
|
@ -19,6 +19,6 @@
|
|||||||
- container_create
|
- container_create
|
||||||
vars:
|
vars:
|
||||||
default_container_groups: "{{ hostvars[inventory_hostname]['container_types'] }}"
|
default_container_groups: "{{ hostvars[inventory_hostname]['container_types'] }}"
|
||||||
container_groups: "{{ groups[container_group|default(default_container_groups)] }}"
|
container_groups: "{{ groups[container_group|default(default_container_groups)] | default('') }}"
|
||||||
|
|
||||||
- include: containers-setup.yml
|
- include: containers-setup.yml
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
- vars/config_vars/container_interfaces.yml
|
- vars/config_vars/container_interfaces.yml
|
||||||
vars:
|
vars:
|
||||||
default_container_groups: "{{ hostvars[inventory_hostname]['container_types'] }}"
|
default_container_groups: "{{ hostvars[inventory_hostname]['container_types'] }}"
|
||||||
container_groups: "{{ groups[container_group|default(default_container_groups)] }}"
|
container_groups: "{{ groups[container_group|default(default_container_groups)] | default('') }}"
|
||||||
required_container_config_options:
|
required_container_config_options:
|
||||||
- "lxc.mount.entry=/openstack/log/{{ hostvars[item]['container_name'] }} var/log/{{ hostvars[item]['service_name'] }} none defaults,bind,rw 0 0"
|
- "lxc.mount.entry=/openstack/log/{{ hostvars[item]['container_name'] }} var/log/{{ hostvars[item]['service_name'] }} none defaults,bind,rw 0 0"
|
||||||
- "lxc.mount.entry=/openstack/backup/{{ hostvars[item]['container_name'] }} var/backup none defaults,bind,rw 0 0"
|
- "lxc.mount.entry=/openstack/backup/{{ hostvars[item]['container_name'] }} var/backup none defaults,bind,rw 0 0"
|
||||||
|
@ -20,4 +20,4 @@
|
|||||||
- container_restart
|
- container_restart
|
||||||
vars:
|
vars:
|
||||||
default_container_groups: "{{ hostvars[inventory_hostname]['container_types'] }}"
|
default_container_groups: "{{ hostvars[inventory_hostname]['container_types'] }}"
|
||||||
container_groups: "{{ groups[container_group|default(default_container_groups)] }}"
|
container_groups: "{{ groups[container_group|default(default_container_groups)] | default('') }}"
|
||||||
|
@ -0,0 +1,58 @@
|
|||||||
|
---
|
||||||
|
# Copyright 2014, Rackspace US, Inc.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
# Create an LXC container.
|
||||||
|
|
||||||
|
- name: Check for lxc volume group
|
||||||
|
shell: >
|
||||||
|
(which vgs > /dev/null && vgs | grep -o "lxc") || false
|
||||||
|
register: vg_result
|
||||||
|
ignore_errors: True
|
||||||
|
|
||||||
|
- name: Create Container Local
|
||||||
|
lxc: >
|
||||||
|
name={{ hostvars[item]['container_name'] }}
|
||||||
|
template={{ container_template }}
|
||||||
|
config={{ hostvars[item]['container_config'] }}
|
||||||
|
command=create
|
||||||
|
state=running
|
||||||
|
template_options="
|
||||||
|
--release {{ container_release }}
|
||||||
|
"
|
||||||
|
when: vg_result.rc == 1
|
||||||
|
with_items: container_groups
|
||||||
|
|
||||||
|
- name: Check Container Bridge exists
|
||||||
|
file: >
|
||||||
|
state=file
|
||||||
|
path="/sys/class/net/{{ management_bridge }}/bridge/bridge_id"
|
||||||
|
|
||||||
|
- name: Create Container LVM
|
||||||
|
lxc: >
|
||||||
|
name={{ hostvars[item]['container_name'] }}
|
||||||
|
template={{ container_template }}
|
||||||
|
config={{ hostvars[item]['container_config'] }}
|
||||||
|
command=create
|
||||||
|
state=running
|
||||||
|
bdev=lvm
|
||||||
|
lvname={{ hostvars[item]['container_name'] }}
|
||||||
|
vgname=lxc
|
||||||
|
fstype={{ hostvars[item]['container_lvm_fstype'] }}
|
||||||
|
fssize={{ hostvars[item]['container_lvm_fssize'] }}
|
||||||
|
template_options="
|
||||||
|
--release {{ container_release }}
|
||||||
|
"
|
||||||
|
when: vg_result.rc == 0
|
||||||
|
with_items: container_groups
|
@ -13,46 +13,5 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
# Create an LXC container.
|
- include: container_create.yml
|
||||||
|
when: container_groups|length > 0
|
||||||
- name: Check for lxc volume group
|
|
||||||
shell: >
|
|
||||||
(which vgs > /dev/null && vgs | grep -o "lxc") || false
|
|
||||||
register: vg_result
|
|
||||||
ignore_errors: True
|
|
||||||
|
|
||||||
- name: Create Container Local
|
|
||||||
lxc: >
|
|
||||||
name={{ hostvars[item]['container_name'] }}
|
|
||||||
template={{ container_template }}
|
|
||||||
config={{ hostvars[item]['container_config'] }}
|
|
||||||
command=create
|
|
||||||
state=running
|
|
||||||
template_options="
|
|
||||||
--release {{ container_release }}
|
|
||||||
"
|
|
||||||
when: vg_result.rc == 1
|
|
||||||
with_items: container_groups
|
|
||||||
|
|
||||||
- name: Check Container Bridge exists
|
|
||||||
file: >
|
|
||||||
state=file
|
|
||||||
path="/sys/class/net/{{ management_bridge }}/bridge/bridge_id"
|
|
||||||
|
|
||||||
- name: Create Container LVM
|
|
||||||
lxc: >
|
|
||||||
name={{ hostvars[item]['container_name'] }}
|
|
||||||
template={{ container_template }}
|
|
||||||
config={{ hostvars[item]['container_config'] }}
|
|
||||||
command=create
|
|
||||||
state=running
|
|
||||||
bdev=lvm
|
|
||||||
lvname={{ hostvars[item]['container_name'] }}
|
|
||||||
vgname=lxc
|
|
||||||
fstype={{ hostvars[item]['container_lvm_fstype'] }}
|
|
||||||
fssize={{ hostvars[item]['container_lvm_fssize'] }}
|
|
||||||
template_options="
|
|
||||||
--release {{ container_release }}
|
|
||||||
"
|
|
||||||
when: vg_result.rc == 0
|
|
||||||
with_items: container_groups
|
|
||||||
|
@ -0,0 +1,43 @@
|
|||||||
|
---
|
||||||
|
# Copyright 2014, Rackspace US, Inc.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
- name: Test Container Networking
|
||||||
|
wait_for: >
|
||||||
|
port=22
|
||||||
|
timeout=20
|
||||||
|
search_regex=OpenSSH
|
||||||
|
host={{ hostvars[item]['container_address'] }}
|
||||||
|
with_items: container_groups
|
||||||
|
delegate_to: localhost
|
||||||
|
register: network_check
|
||||||
|
ignore_errors: yes
|
||||||
|
|
||||||
|
- name: Restart containers
|
||||||
|
lxc: >
|
||||||
|
name={{ hostvars[item]['container_name'] }}
|
||||||
|
command=restart
|
||||||
|
with_items: container_groups
|
||||||
|
when: network_check|failed
|
||||||
|
|
||||||
|
- name: Check Networking After Restart
|
||||||
|
wait_for: >
|
||||||
|
port=22
|
||||||
|
timeout={{ container_start_timeout }}
|
||||||
|
search_regex=OpenSSH
|
||||||
|
host={{ hostvars[item]['container_address'] }}
|
||||||
|
with_items: container_groups
|
||||||
|
delegate_to: localhost
|
||||||
|
when: network_check|failed
|
||||||
|
|
@ -13,31 +13,5 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
- name: Test Container Networking
|
- include: container_restart.yml
|
||||||
wait_for: >
|
when: container_groups|length > 0
|
||||||
port=22
|
|
||||||
timeout=20
|
|
||||||
search_regex=OpenSSH
|
|
||||||
host={{ hostvars[item]['container_address'] }}
|
|
||||||
with_items: container_groups
|
|
||||||
delegate_to: localhost
|
|
||||||
register: network_check
|
|
||||||
ignore_errors: yes
|
|
||||||
|
|
||||||
- name: Restart containers
|
|
||||||
lxc: >
|
|
||||||
name={{ hostvars[item]['container_name'] }}
|
|
||||||
command=restart
|
|
||||||
with_items: container_groups
|
|
||||||
when: network_check|failed
|
|
||||||
|
|
||||||
- name: Check Networking After Restart
|
|
||||||
wait_for: >
|
|
||||||
port=22
|
|
||||||
timeout={{ container_start_timeout }}
|
|
||||||
search_regex=OpenSSH
|
|
||||||
host={{ hostvars[item]['container_address'] }}
|
|
||||||
with_items: container_groups
|
|
||||||
delegate_to: localhost
|
|
||||||
when: network_check|failed
|
|
||||||
|
|
||||||
|
124
rpc_deployment/roles/container_setup/tasks/container_setup.yml
Normal file
124
rpc_deployment/roles/container_setup/tasks/container_setup.yml
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
---
|
||||||
|
# Copyright 2014, Rackspace US, Inc.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
- name: Obtain the Systems SSH-Key
|
||||||
|
set_fact:
|
||||||
|
container_ssh_key: "{{ lookup('file', '~/.ssh/id_rsa.pub') }}"
|
||||||
|
|
||||||
|
- name: Fail when empty or non-existent SSH pub key
|
||||||
|
fail: >
|
||||||
|
msg="Failing - ~/.ssh/id_rsa.pub file doesn't exist or is empty"
|
||||||
|
when: container_ssh_key == ""
|
||||||
|
|
||||||
|
- name: Set the SSH key in place
|
||||||
|
lxc: >
|
||||||
|
name={{ hostvars[item]['container_name'] }}
|
||||||
|
command=attach
|
||||||
|
container_command="
|
||||||
|
mkdir -p ~/.ssh/;
|
||||||
|
if [ ! -f \"~/.ssh/authorized_keys\" ];then
|
||||||
|
touch ~/.ssh/authorized_keys;
|
||||||
|
fi;
|
||||||
|
grep '{{ container_ssh_key }}' ~/.ssh/authorized_keys ||
|
||||||
|
echo '{{ container_ssh_key }}' | tee -a ~/.ssh/authorized_keys;
|
||||||
|
"
|
||||||
|
with_items: container_groups
|
||||||
|
|
||||||
|
- name: Set base network interface
|
||||||
|
lxc: >
|
||||||
|
name={{ hostvars[item]['container_name'] }}
|
||||||
|
command=attach
|
||||||
|
container_command="
|
||||||
|
echo -e '{{ container_interface }}' | tee /etc/network/interfaces;
|
||||||
|
"
|
||||||
|
with_items: container_groups
|
||||||
|
|
||||||
|
- name: Set management network interface
|
||||||
|
lxc: >
|
||||||
|
name={{ hostvars[item]['container_name'] }}
|
||||||
|
command=attach
|
||||||
|
container_command="
|
||||||
|
echo -e '{{ management_interface }}' | tee /etc/network/interfaces.d/management.cfg;
|
||||||
|
"
|
||||||
|
with_items: container_groups
|
||||||
|
|
||||||
|
- name: Ensure SSH is avail at boot
|
||||||
|
lxc: >
|
||||||
|
name={{ hostvars[item]['container_name'] }}
|
||||||
|
command=attach
|
||||||
|
container_command="update-rc.d ssh defaults"
|
||||||
|
with_items: container_groups
|
||||||
|
|
||||||
|
- name: Ensure SSH is available for root
|
||||||
|
lxc: >
|
||||||
|
name={{ hostvars[item]['container_name'] }}
|
||||||
|
command=attach
|
||||||
|
container_command="sed -i 's/PermitRootLogin.*/PermitRootLogin\ yes/g' /etc/ssh/sshd_config"
|
||||||
|
with_items: container_groups
|
||||||
|
|
||||||
|
- name: Ensure SSH started
|
||||||
|
lxc: >
|
||||||
|
name={{ hostvars[item]['container_name'] }}
|
||||||
|
command=attach
|
||||||
|
container_command="service ssh restart"
|
||||||
|
with_items: container_groups
|
||||||
|
|
||||||
|
- name: Ensure required inner directories
|
||||||
|
lxc: >
|
||||||
|
name={{ hostvars[item.1]['container_name'] }}
|
||||||
|
command=attach
|
||||||
|
container_command="mkdir -p {{ item.0 }}"
|
||||||
|
with_nested:
|
||||||
|
- [ "/monitoring", "/etc/network/interfaces.d", "/var/backup" ]
|
||||||
|
- container_groups
|
||||||
|
|
||||||
|
- name: Create Required local log directories
|
||||||
|
file: >
|
||||||
|
path="{{ item.0 }}/{{ hostvars[item.1]['container_name'] }}"
|
||||||
|
state=directory
|
||||||
|
with_nested:
|
||||||
|
- [ "/openstack/backup", "/openstack/log" ]
|
||||||
|
- container_groups
|
||||||
|
|
||||||
|
- name: Create Required local monitoring directories
|
||||||
|
file: >
|
||||||
|
path={{ item }}
|
||||||
|
state=directory
|
||||||
|
with_items:
|
||||||
|
- "/openstack/monitoring"
|
||||||
|
|
||||||
|
- name: Ensure required inner service directories
|
||||||
|
lxc: >
|
||||||
|
name={{ hostvars[item.1]['container_name'] }}
|
||||||
|
command=attach
|
||||||
|
container_command="mkdir -p {{ item.0 }}/{{ hostvars[item.1]['service_name'] }}"
|
||||||
|
with_nested:
|
||||||
|
- [ "/etc", "/var/log" ]
|
||||||
|
- container_groups
|
||||||
|
|
||||||
|
- name: Ensure python2.7 installed
|
||||||
|
lxc: >
|
||||||
|
name={{ hostvars[item]['container_name'] }}
|
||||||
|
command=attach
|
||||||
|
container_command="apt-get -y install python2.7; rm /usr/bin/python; ln -s /usr/bin/python2.7 /usr/bin/python"
|
||||||
|
with_items: container_groups
|
||||||
|
|
||||||
|
- name: Ensure Required container config options
|
||||||
|
lxc: >
|
||||||
|
name={{ hostvars[item]['container_name'] }}
|
||||||
|
command=config
|
||||||
|
options="{{ required_container_config_options }}"
|
||||||
|
state=running
|
||||||
|
with_items: container_groups
|
@ -13,112 +13,5 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
- name: Obtain the Systems SSH-Key
|
- include: container_setup.yml
|
||||||
set_fact:
|
when: container_groups|length > 0
|
||||||
container_ssh_key: "{{ lookup('file', '~/.ssh/id_rsa.pub') }}"
|
|
||||||
|
|
||||||
- name: Fail when empty or non-existent SSH pub key
|
|
||||||
fail: >
|
|
||||||
msg="Failing - ~/.ssh/id_rsa.pub file doesn't exist or is empty"
|
|
||||||
when: container_ssh_key == ""
|
|
||||||
|
|
||||||
- name: Set the SSH key in place
|
|
||||||
lxc: >
|
|
||||||
name={{ hostvars[item]['container_name'] }}
|
|
||||||
command=attach
|
|
||||||
container_command="
|
|
||||||
mkdir -p ~/.ssh/;
|
|
||||||
if [ ! -f \"~/.ssh/authorized_keys\" ];then
|
|
||||||
touch ~/.ssh/authorized_keys;
|
|
||||||
fi;
|
|
||||||
grep '{{ container_ssh_key }}' ~/.ssh/authorized_keys ||
|
|
||||||
echo '{{ container_ssh_key }}' | tee -a ~/.ssh/authorized_keys;
|
|
||||||
"
|
|
||||||
with_items: container_groups
|
|
||||||
|
|
||||||
- name: Set base network interface
|
|
||||||
lxc: >
|
|
||||||
name={{ hostvars[item]['container_name'] }}
|
|
||||||
command=attach
|
|
||||||
container_command="
|
|
||||||
echo -e '{{ container_interface }}' | tee /etc/network/interfaces;
|
|
||||||
"
|
|
||||||
with_items: container_groups
|
|
||||||
|
|
||||||
- name: Set management network interface
|
|
||||||
lxc: >
|
|
||||||
name={{ hostvars[item]['container_name'] }}
|
|
||||||
command=attach
|
|
||||||
container_command="
|
|
||||||
echo -e '{{ management_interface }}' | tee /etc/network/interfaces.d/management.cfg;
|
|
||||||
"
|
|
||||||
with_items: container_groups
|
|
||||||
|
|
||||||
- name: Ensure SSH is avail at boot
|
|
||||||
lxc: >
|
|
||||||
name={{ hostvars[item]['container_name'] }}
|
|
||||||
command=attach
|
|
||||||
container_command="update-rc.d ssh defaults"
|
|
||||||
with_items: container_groups
|
|
||||||
|
|
||||||
- name: Ensure SSH is available for root
|
|
||||||
lxc: >
|
|
||||||
name={{ hostvars[item]['container_name'] }}
|
|
||||||
command=attach
|
|
||||||
container_command="sed -i 's/PermitRootLogin.*/PermitRootLogin\ yes/g' /etc/ssh/sshd_config"
|
|
||||||
with_items: container_groups
|
|
||||||
|
|
||||||
- name: Ensure SSH started
|
|
||||||
lxc: >
|
|
||||||
name={{ hostvars[item]['container_name'] }}
|
|
||||||
command=attach
|
|
||||||
container_command="service ssh restart"
|
|
||||||
with_items: container_groups
|
|
||||||
|
|
||||||
- name: Ensure required inner directories
|
|
||||||
lxc: >
|
|
||||||
name={{ hostvars[item.1]['container_name'] }}
|
|
||||||
command=attach
|
|
||||||
container_command="mkdir -p {{ item.0 }}"
|
|
||||||
with_nested:
|
|
||||||
- [ "/monitoring", "/etc/network/interfaces.d", "/var/backup" ]
|
|
||||||
- container_groups
|
|
||||||
|
|
||||||
- name: Create Required local log directories
|
|
||||||
file: >
|
|
||||||
path="{{ item.0 }}/{{ hostvars[item.1]['container_name'] }}"
|
|
||||||
state=directory
|
|
||||||
with_nested:
|
|
||||||
- [ "/openstack/backup", "/openstack/log" ]
|
|
||||||
- container_groups
|
|
||||||
|
|
||||||
- name: Create Required local monitoring directories
|
|
||||||
file: >
|
|
||||||
path={{ item }}
|
|
||||||
state=directory
|
|
||||||
with_items:
|
|
||||||
- "/openstack/monitoring"
|
|
||||||
|
|
||||||
- name: Ensure required inner service directories
|
|
||||||
lxc: >
|
|
||||||
name={{ hostvars[item.1]['container_name'] }}
|
|
||||||
command=attach
|
|
||||||
container_command="mkdir -p {{ item.0 }}/{{ hostvars[item.1]['service_name'] }}"
|
|
||||||
with_nested:
|
|
||||||
- [ "/etc", "/var/log" ]
|
|
||||||
- container_groups
|
|
||||||
|
|
||||||
- name: Ensure python2.7 installed
|
|
||||||
lxc: >
|
|
||||||
name={{ hostvars[item]['container_name'] }}
|
|
||||||
command=attach
|
|
||||||
container_command="apt-get -y install python2.7; rm /usr/bin/python; ln -s /usr/bin/python2.7 /usr/bin/python"
|
|
||||||
with_items: container_groups
|
|
||||||
|
|
||||||
- name: Ensure Required container config options
|
|
||||||
lxc: >
|
|
||||||
name={{ hostvars[item]['container_name'] }}
|
|
||||||
command=config
|
|
||||||
options="{{ required_container_config_options }}"
|
|
||||||
state=running
|
|
||||||
with_items: container_groups
|
|
||||||
|
@ -6,17 +6,17 @@
|
|||||||
#local1.*;local1.!notice ?HourlyProxyLog
|
#local1.*;local1.!notice ?HourlyProxyLog
|
||||||
|
|
||||||
local1.*;local1.!notice /var/log/swift/proxy.log
|
local1.*;local1.!notice /var/log/swift/proxy.log
|
||||||
local1.notice /var/log/swift/proxy.error
|
local1.notice /var/log/swift/proxy-error.log
|
||||||
local1.* ~
|
local1.* ~
|
||||||
|
|
||||||
local2.*;local2.!notice /openstack/log/{{ inventory_hostname }}/account.log
|
local2.*;local2.!notice /openstack/log/{{ inventory_hostname }}/account.log
|
||||||
local2.notice /openstack/log/{{ inventory_hostname }}/account.error
|
local2.notice /openstack/log/{{ inventory_hostname }}/account-error.log
|
||||||
local2.* ~
|
local2.* ~
|
||||||
|
|
||||||
local3.*;local3.!notice /openstack/log/{{ inventory_hostname }}/container.log
|
local3.*;local3.!notice /openstack/log/{{ inventory_hostname }}/container.log
|
||||||
local3.notice /openstack/log/{{ inventory_hostname }}/container.error
|
local3.notice /openstack/log/{{ inventory_hostname }}/container-error.log
|
||||||
local3.* ~
|
local3.* ~
|
||||||
|
|
||||||
local4.*;local4.!notice /openstack/log/{{ inventory_hostname }}/object.log
|
local4.*;local4.!notice /openstack/log/{{ inventory_hostname }}/object.log
|
||||||
local4.notice /openstack/log/{{ inventory_hostname }}/object.error
|
local4.notice /openstack/log/{{ inventory_hostname }}/object-error.log
|
||||||
local4.*
|
local4.*
|
||||||
|
Loading…
Reference in New Issue
Block a user