Ceilometer don't colleting Swift Proxy Medadata Headers
Issue
- The proxy-server.conf is configured with metadata_headers configuration but, the ceilometer don't collecting metadata_headers configures.
[root@brlp-osp-stg-controller-0 ~]# source ~/overcloudrc
[root@brlp-osp-stg-controller-0 ~]# openstack role list --project service --user ceilometer
+----------------------------------+---------------+---------+------------+
| ID | Name | Project | User |
+----------------------------------+---------------+---------+------------+
| 4018072818754e22823e4e2792ea167e | ResellerAdmin | service | ceilometer |
| 9fe2ff9ee4384b1894a90878d3e92bab | _member_ | service | ceilometer |
| 39793ba1084d4a84a58132bd96083f11 | admin | service | ceilometer |
+----------------------------------+---------------+---------+------------+
[root@brlp-osp-stg-controller-0 ~]# cat /etc/swift/proxy-server.conf
# This file is managed by puppet. Do not edit
#
[DEFAULT]
bind_port = 8080
bind_ip = 172.25.66.207
workers = 8
user = swift
log_name = proxy-server
log_facility = LOG_LOCAL1
log_level = INFO
log_headers = False
log_address = /dev/log
[pipeline:main]
#pipeline = catch_errors healthcheck cache ratelimit tempurl formpost ceilometer authtoken keystone staticweb proxy-logging proxy-server
#pipeline = catch_errors gatekeeper healthcheck proxy-logging cache swift3 s3token authtoken keystone slo dlo account_quotas container_quotas ceilometer proxy-logging proxy-server
pipeline = catch_errors gatekeeper healthcheck proxy-logging cache ratelimit tempurl formpost swift3 s3token authtoken keystone staticweb slo dlo account_quotas container_quotas proxy-logging ceilometer proxy-server
[app:proxy-server]
use = egg:swift#proxy
set log_name = proxy-server
set log_facility = LOG_LOCAL1
set log_level = INFO
set log_address = /dev/log
log_handoffs = true
allow_account_management = true
account_autocreate = true
[filter:authtoken]
log_name = swift
signing_dir = /var/cache/swift
paste.filter_factory = keystonemiddleware.auth_token:filter_factory
#auth_uri = http://172.25.60.202:5000/v2.0
#identity_uri = http://172.25.0.202:35357
auth_uri = http://172.25.60.202:5000/
identity_uri = http://172.25.0.202:35357/
# if its defined
admin_tenant_name = service
admin_user = swift
admin_password = XbNnA84K7F8jTstj4asXcKsyK
delay_auth_decision = 1
auth_host = localhost
cache = swift.cache
include_service_catalog = False
[filter:cache]
use = egg:swift#memcache
memcache_servers = 172.25.60.208:11211,172.25.60.210:11211,172.25.60.209:11211
[filter:catch_errors]
use = egg:swift#catch_errors
[filter:proxy-logging]
use = egg:swift#proxy_logging
#
# Note: The double proxy-logging in the pipeline is not a mistake. The
# left-most proxy-logging is there to log requests that were handled in
# middleware and never made it through to the right-most middleware (and
# proxy server). Double logging is prevented for normal requests. See
# proxy-logging docs.
[filter:healthcheck]
use = egg:swift#healthcheck
[filter:ratelimit]
use = egg:swift#ratelimit
clock_accuracy = 1000
max_sleep_time_seconds = 60
log_sleep_time_seconds = 0
rate_buffer_seconds = 5
account_ratelimit = 0
[filter:proxy-logging]
use = egg:swift#proxy_logging
[filter:tempurl]
use = egg:swift#tempurl
[filter:formpost]
use = egg:swift#formpost
[filter:staticweb]
use = egg:swift#staticweb
[filter:ceilometer]
paste.filter_factory = ceilometermiddleware.swift:filter_factory
use = egg:ceilometer#swift
metadata_headers = X-Client,X-Service,X-Host
control_exchange = swift
#url = rabbit://guest:guest@172.25.60.208:5672,172.25.60.210:5672,172.25.60.209:5672
url = rabbit://guest:guest@172.25.60.208:5672/
driver = messagingv2
topic = notifications
log_level = WARN
[filter:keystone]
use = egg:swift#keystoneauth
operator_roles = admin, swiftoperator, ResellerAdmin
#is_admin = true
reseller_prefix = AUTH_
cache = swift.cache
# Note: Put after auth and staticweb in the pipeline.
[filter:slo]
use = egg:swift#slo
# Note: Put after auth and staticweb in the pipeline.
[filter:dlo]
use = egg:swift#dlo
[filter:gatekeeper]
use = egg:swift#gatekeeper
[filter:account_quotas]
use = egg:swift#account_quotas
[filter:container_quotas]
use = egg:swift#container_quotas
[filter:swift3]
use = egg:swift3#swift3
[filter:s3token]
paste.filter_factory = keystonemiddleware.s3_token:filter_factory
auth_port = 35357
auth_host = 172.25.0.202
auth_protocol = http
[root@brlp-osp-stg-controller-0 ~]# cat /etc/haproxy/haproxy.cfg
# This file managed by Puppet
global
daemon
group haproxy
log /dev/log local0
maxconn 20480
pidfile /var/run/haproxy.pid
user haproxy
stats socket /var/lib/haproxy/stats
defaults
log global
maxconn 4096
mode tcp
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout check 10s
listen ceilometer
bind 172.25.60.202:8777 transparent
bind 189.43.94.150:8777 transparent
server brlp-osp-stg-controller-0 172.25.60.208:8777 check fall 5 inter 2000 rise 2
server brlp-osp-stg-controller-1 172.25.60.210:8777 check fall 5 inter 2000 rise 2
server brlp-osp-stg-controller-2 172.25.60.209:8777 check fall 5 inter 2000 rise 2
...
listen swift_proxy_server
bind 172.25.66.201:8080 transparent
bind 189.43.94.151:8080 transparent
bind 189.43.94.150:8080 transparent
bind 189.43.94.151:80 transparent
bind 189.43.94.151:443 transparent ssl crt /etc/pki/tls/private/overcloud_endpoint.pem
mode http
option forwardfor header X-Client
http-request set-header X-Service %[dst]
http-request set-header X-Host %[hdr(host)]
http-request set-header X-Forwarded-Proto https if { ssl_fc }
server brlp-osp-stg-controller-0 172.25.66.207:8080 check fall 5 inter 2000 rise 2
server brlp-osp-stg-controller-1 172.25.66.209:8080 check fall 5 inter 2000 rise 2
server brlp-osp-stg-controller-2 172.25.66.208:8080 check fall 5 inter 2000 rise 2
...
Environment
Red Hat OpenStack Platform 7.0
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.