Add logging.conf files to enabled loggers/handlers/formatters

This introduces a mechanism for generating the logging.conf
file for the openstack services via the values. This allows us to
define loggers, handlers, and formatters for the services and the
modules they're composed of.

This also allows us to take advantage of the oslo fluent handler
and formatter. The fluent handler and formatter give us the
following benefits: sending logs directly to fluentd instead of
routed to stdout/stderr and then through fluentbit to fluentd,
project specific tags on the logged events (enables us to define
more robust filters in fluentd for aggregation if required),
full traceback support, and additional metadata (modules that
created logged event, etc)

Depends-On: https://review.openstack.org/577796

Change-Id: I63340ce6b03191d93a74d9ac6947f0b49b8a1a39
This commit is contained in:
Steve Wilkerson 2018-06-17 16:12:25 -05:00
parent fe4275d151
commit da7bc575ec
95 changed files with 1309 additions and 24 deletions

View File

@ -72,6 +72,18 @@ limitations under the License.
{{- $_ := printf ":%s" ( tuple "key_manager" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" ) | set .Values.conf.barbican_api.uwsgi "socket" -}} {{- $_ := printf ":%s" ( tuple "key_manager" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" ) | set .Values.conf.barbican_api.uwsgi "socket" -}}
{{- end -}} {{- end -}}
{{- if and (empty .Values.conf.logging.handler_fluent) (has "fluent" .Values.conf.logging.handlers.keys) -}}
{{- $fluentd_host := tuple "fluentd" "internal" $envAll | include "helm-toolkit.endpoints.hostname_namespaced_endpoint_lookup" }}
{{- $fluentd_port := tuple "fluentd" "internal" "service" $envAll | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
{{- $fluent_args := printf "('openstack.barbican', '%s', %s)" $fluentd_host $fluentd_port }}
{{- $handler_fluent := dict "class" "fluent.handler.FluentHandler" "formatter" "fluent" "args" $fluent_args -}}
{{- $_ := set .Values.conf.logging "handler_fluent" $handler_fluent -}}
{{- end -}}
{{- if and (empty .Values.conf.logging.formatter_fluent) (has "fluent" .Values.conf.logging.formatters.keys) -}}
{{- $formatter_fluent := dict "class" "oslo_log.formatters.FluentFormatter" -}}
{{- $_ := set .Values.conf.logging "formatter_fluent" $formatter_fluent -}}
{{- end -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: ConfigMap kind: ConfigMap
@ -80,6 +92,8 @@ metadata:
data: data:
barbican.conf: | barbican.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.barbican | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.barbican | indent 4 }}
logging.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.logging | indent 4 }}
barbican-api-paste.ini: | barbican-api-paste.ini: |
{{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }} {{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }}
api_audit_map.conf: | api_audit_map.conf: |

View File

@ -82,6 +82,10 @@ spec:
mountPath: /etc/barbican/barbican.conf mountPath: /etc/barbican/barbican.conf
subPath: barbican.conf subPath: barbican.conf
readOnly: true readOnly: true
- name: barbican-etc
mountPath: {{ .Values.conf.barbican.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.barbican.DEFAULT.log_config_append }}
readOnly: true
- name: barbican-etc - name: barbican-etc
mountPath: /etc/barbican/api_audit_map.conf mountPath: /etc/barbican/api_audit_map.conf
subPath: api_audit_map.conf subPath: api_audit_map.conf

View File

@ -15,6 +15,6 @@ limitations under the License.
*/}} */}}
{{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }} {{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }}
{{- $bootstrapJob := dict "envAll" . "serviceName" "barbican" "keystoneUser" .Values.bootstrap.ks_user -}} {{- $bootstrapJob := dict "envAll" . "serviceName" "barbican" "keystoneUser" .Values.bootstrap.ks_user "logConfigFile" .Values.conf.barbican.DEFAULT.log_config_append -}}
{{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }} {{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }}
{{- end }} {{- end }}

View File

@ -16,7 +16,7 @@ limitations under the License.
{{- if .Values.manifests.job_db_drop }} {{- if .Values.manifests.job_db_drop }}
{{- $serviceName := "barbican" -}} {{- $serviceName := "barbican" -}}
{{- $dbToDrop := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "configDbSection" "DEFAULT" "configDbKey" "sql_connection" -}} {{- $dbToDrop := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "logConfigFile" (printf "/etc/%s/logging.conf" $serviceName ) "configDbSection" "DEFAULT" "configDbKey" "sql_connection" -}}
{{- $dbDropJob := dict "envAll" . "serviceName" $serviceName "dbToDrop" $dbToDrop -}} {{- $dbDropJob := dict "envAll" . "serviceName" $serviceName "dbToDrop" $dbToDrop -}}
{{ $dbDropJob | include "helm-toolkit.manifests.job_db_drop_mysql" }} {{ $dbDropJob | include "helm-toolkit.manifests.job_db_drop_mysql" }}
{{- end }} {{- end }}

View File

@ -16,7 +16,7 @@ limitations under the License.
{{- if .Values.manifests.job_db_init }} {{- if .Values.manifests.job_db_init }}
{{- $serviceName := "barbican" -}} {{- $serviceName := "barbican" -}}
{{- $dbToInit := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "configDbSection" "DEFAULT" "configDbKey" "sql_connection" -}} {{- $dbToInit := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "logConfigFile" (printf "/etc/%s/logging.conf" $serviceName ) "configDbSection" "DEFAULT" "configDbKey" "sql_connection" -}}
{{- $dbInitJob := dict "envAll" . "serviceName" $serviceName "dbToInit" $dbToInit -}} {{- $dbInitJob := dict "envAll" . "serviceName" $serviceName "dbToInit" $dbToInit -}}
{{ $dbInitJob | include "helm-toolkit.manifests.job_db_init_mysql" }} {{ $dbInitJob | include "helm-toolkit.manifests.job_db_init_mysql" }}
{{- end }} {{- end }}

View File

@ -415,6 +415,7 @@ conf:
barbican: barbican:
DEFAULT: DEFAULT:
transport_url: null transport_url: null
log_config_append: /etc/barbican/logging.conf
keystone_authtoken: keystone_authtoken:
auth_type: password auth_type: password
auth_version: v3 auth_version: v3
@ -426,6 +427,65 @@ conf:
#NOTE(portdirect): the bind port should not be defined, and is manipulated #NOTE(portdirect): the bind port should not be defined, and is manipulated
# via the endpoints section. # via the endpoints section.
bind_port: null bind_port: null
logging:
loggers:
keys:
- root
- barbican
handlers:
keys:
- stdout
- stderr
- "null"
formatters:
keys:
- context
- default
logger_root:
level: WARNING
handlers: null
logger_barbican:
level: INFO
handlers:
- stdout
- stderr
qualname: barbican
logger_amqp:
level: WARNING
handlers: stderr
qualname: amqp
logger_amqplib:
level: WARNING
handlers: stderr
qualname: amqplib
logger_eventletwsgi:
level: WARNING
handlers: stderr
qualname: eventlet.wsgi.server
logger_sqlalchemy:
level: WARNING
handlers: stderr
qualname: sqlalchemy
logger_boto:
level: WARNING
handlers: stderr
qualname: boto
handler_null:
class: logging.NullHandler
formatter: default
args: ()
handler_stdout:
class: StreamHandler
args: (sys.stdout,)
formatter: context
handler_stderr:
class: StreamHandler
args: (sys.stderr,)
formatter: context
formatter_context:
class: oslo_log.formatters.ContextFormatter
formatter_default:
format: "%(message)s"
# Names of secrets used by bootstrap and environmental checks # Names of secrets used by bootstrap and environmental checks
secrets: secrets:
@ -551,6 +611,21 @@ endpoints:
port: port:
memcache: memcache:
default: 11211 default: 11211
fluentd:
namespace: null
name: fluentd
hosts:
default: fluentd-logging
host_fqdn_override:
default: null
path:
default: null
scheme: 'http'
port:
service:
default: 24224
metrics:
default: 24220
manifests: manifests:
configmap_bin: true configmap_bin: true

View File

@ -93,6 +93,19 @@ limitations under the License.
{{- if empty .Values.conf.cinder.DEFAULT.osapi_volume_listen_port -}} {{- if empty .Values.conf.cinder.DEFAULT.osapi_volume_listen_port -}}
{{- $_ := tuple "volume" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.cinder.DEFAULT "osapi_volume_listen_port" -}} {{- $_ := tuple "volume" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.cinder.DEFAULT "osapi_volume_listen_port" -}}
{{- end -}} {{- end -}}
{{- if and (empty .Values.conf.logging.handler_fluent) (has "fluent" .Values.conf.logging.handlers.keys) -}}
{{- $fluentd_host := tuple "fluentd" "internal" $envAll | include "helm-toolkit.endpoints.hostname_namespaced_endpoint_lookup" }}
{{- $fluentd_port := tuple "fluentd" "internal" "service" $envAll | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
{{- $fluent_args := printf "('openstack.cinder', '%s', %s)" $fluentd_host $fluentd_port }}
{{- $handler_fluent := dict "class" "fluent.handler.FluentHandler" "formatter" "fluent" "args" $fluent_args -}}
{{- $_ := set .Values.conf.logging "handler_fluent" $handler_fluent -}}
{{- end -}}
{{- if and (empty .Values.conf.logging.formatter_fluent) (has "fluent" .Values.conf.logging.formatters.keys) -}}
{{- $formatter_fluent := dict "class" "oslo_log.formatters.FluentFormatter" -}}
{{- $_ := set .Values.conf.logging "formatter_fluent" $formatter_fluent -}}
{{- end -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: ConfigMap kind: ConfigMap
@ -103,6 +116,8 @@ data:
{{ toYaml .Values.conf.rally_tests.tests | indent 4 }} {{ toYaml .Values.conf.rally_tests.tests | indent 4 }}
cinder.conf: | cinder.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.cinder | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.cinder | indent 4 }}
logging.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.logging | indent 4 }}
backends.conf: | backends.conf: |
{{ include "helm-toolkit.utils.to_ini" .Values.conf.backends | indent 4 }} {{ include "helm-toolkit.utils.to_ini" .Values.conf.backends | indent 4 }}
api-paste.ini: | api-paste.ini: |

View File

@ -58,6 +58,10 @@ spec:
mountPath: /etc/cinder/cinder.conf mountPath: /etc/cinder/cinder.conf
subPath: cinder.conf subPath: cinder.conf
readOnly: true readOnly: true
- name: cinder-etc
mountPath: {{ .Values.conf.cinder.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.cinder.DEFAULT.log_config_append }}
readOnly: true
- name: cinder-bin - name: cinder-bin
mountPath: /tmp/volume-usage-audit.sh mountPath: /tmp/volume-usage-audit.sh
subPath: volume-usage-audit.sh subPath: volume-usage-audit.sh

View File

@ -95,6 +95,10 @@ spec:
mountPath: /etc/cinder/cinder.conf mountPath: /etc/cinder/cinder.conf
subPath: cinder.conf subPath: cinder.conf
readOnly: true readOnly: true
- name: cinder-etc
mountPath: {{ .Values.conf.cinder.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.cinder.DEFAULT.log_config_append }}
readOnly: true
- name: cinder-etc - name: cinder-etc
mountPath: /etc/cinder/api-paste.ini mountPath: /etc/cinder/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -142,6 +142,10 @@ spec:
mountPath: /etc/cinder/cinder.conf mountPath: /etc/cinder/cinder.conf
subPath: cinder.conf subPath: cinder.conf
readOnly: true readOnly: true
- name: cinder-etc
mountPath: {{ .Values.conf.cinder.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.cinder.DEFAULT.log_config_append }}
readOnly: true
{{ if or (eq .Values.conf.cinder.DEFAULT.backup_driver "cinder.backup.drivers.ceph") (include "cinder.utils.is_ceph_volume_configured" $envAll) }} {{ if or (eq .Values.conf.cinder.DEFAULT.backup_driver "cinder.backup.drivers.ceph") (include "cinder.utils.is_ceph_volume_configured" $envAll) }}
- name: etcceph - name: etcceph
mountPath: /etc/ceph mountPath: /etc/ceph

View File

@ -81,6 +81,10 @@ spec:
mountPath: /etc/cinder/cinder.conf mountPath: /etc/cinder/cinder.conf
subPath: cinder.conf subPath: cinder.conf
readOnly: true readOnly: true
- name: cinder-etc
mountPath: {{ .Values.conf.cinder.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.cinder.DEFAULT.log_config_append }}
readOnly: true
- name: cinder-etc - name: cinder-etc
mountPath: /etc/cinder/api-paste.ini mountPath: /etc/cinder/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -103,6 +103,10 @@ spec:
mountPath: /etc/cinder/cinder.conf mountPath: /etc/cinder/cinder.conf
subPath: cinder.conf subPath: cinder.conf
readOnly: true readOnly: true
- name: cinder-etc
mountPath: {{ .Values.conf.cinder.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.cinder.DEFAULT.log_config_append }}
readOnly: true
- name: cinder-etc - name: cinder-etc
mountPath: /etc/cinder/conf/backends.conf mountPath: /etc/cinder/conf/backends.conf
subPath: backends.conf subPath: backends.conf

View File

@ -15,6 +15,6 @@ limitations under the License.
*/}} */}}
{{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }} {{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }}
{{- $bootstrapJob := dict "envAll" . "serviceName" "cinder" "keystoneUser" .Values.bootstrap.ks_user -}} {{- $bootstrapJob := dict "envAll" . "serviceName" "cinder" "keystoneUser" .Values.bootstrap.ks_user "logConfigFile" .Values.conf.cinder.DEFAULT.log_config_append -}}
{{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }} {{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }}
{{- end }} {{- end }}

View File

@ -716,6 +716,7 @@ conf:
chunk_size: 8 chunk_size: 8
cinder: cinder:
DEFAULT: DEFAULT:
log_config_append: /etc/cinder/logging.conf
use_syslog: false use_syslog: false
use_stderr: true use_stderr: true
enable_v1_api: false enable_v1_api: false
@ -749,6 +750,65 @@ conf:
driver: messagingv2 driver: messagingv2
coordination: coordination:
backend_url: file:///var/lib/cinder/coordination backend_url: file:///var/lib/cinder/coordination
logging:
loggers:
keys:
- root
- cinder
handlers:
keys:
- stdout
- stderr
- "null"
formatters:
keys:
- context
- default
logger_root:
level: WARNING
handlers: null
logger_cinder:
level: INFO
handlers:
- stdout
- stderr
qualname: cinder
logger_amqp:
level: WARNING
handlers: stderr
qualname: amqp
logger_amqplib:
level: WARNING
handlers: stderr
qualname: amqplib
logger_eventletwsgi:
level: WARNING
handlers: stderr
qualname: eventlet.wsgi.server
logger_sqlalchemy:
level: WARNING
handlers: stderr
qualname: sqlalchemy
logger_boto:
level: WARNING
handlers: stderr
qualname: boto
handler_null:
class: logging.NullHandler
formatter: default
args: ()
handler_stdout:
class: StreamHandler
args: (sys.stdout,)
formatter: context
handler_stderr:
class: StreamHandler
args: (sys.stderr,)
formatter: context
formatter_context:
class: oslo_log.formatters.ContextFormatter
formatter_default:
format: "%(message)s"
backends: backends:
# Those options will be written to backends.conf as-is. # Those options will be written to backends.conf as-is.
rbd1: rbd1:
@ -1118,6 +1178,21 @@ endpoints:
port: port:
memcache: memcache:
default: 11211 default: 11211
fluentd:
namespace: null
name: fluentd
hosts:
default: fluentd-logging
host_fqdn_override:
default: null
path:
default: null
scheme: 'http'
port:
service:
default: 24224
metrics:
default: 24220
manifests: manifests:
configmap_bin: true configmap_bin: true

View File

@ -63,6 +63,18 @@ limitations under the License.
{{- $_ := tuple "policy" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.congress.DEFAULT "bind_port" -}} {{- $_ := tuple "policy" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.congress.DEFAULT "bind_port" -}}
{{- end -}} {{- end -}}
{{- if and (empty .Values.conf.logging.handler_fluent) (has "fluent" .Values.conf.logging.handlers.keys) -}}
{{- $fluentd_host := tuple "fluentd" "internal" $envAll | include "helm-toolkit.endpoints.hostname_namespaced_endpoint_lookup" }}
{{- $fluentd_port := tuple "fluentd" "internal" "service" $envAll | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
{{- $fluent_args := printf "('openstack.congress', '%s', %s)" $fluentd_host $fluentd_port }}
{{- $handler_fluent := dict "class" "fluent.handler.FluentHandler" "formatter" "fluent" "args" $fluent_args -}}
{{- $_ := set .Values.conf.logging "handler_fluent" $handler_fluent -}}
{{- end -}}
{{- if and (empty .Values.conf.logging.formatter_fluent) (has "fluent" .Values.conf.logging.formatters.keys) -}}
{{- $formatter_fluent := dict "class" "oslo_log.formatters.FluentFormatter" -}}
{{- $_ := set .Values.conf.logging "formatter_fluent" $formatter_fluent -}}
{{- end -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: ConfigMap kind: ConfigMap
@ -71,6 +83,8 @@ metadata:
data: data:
congress.conf: | congress.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.congress | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.congress | indent 4 }}
logging.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.logging | indent 4 }}
api-paste.ini: | api-paste.ini: |
{{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }} {{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }}
policy.json: | policy.json: |

View File

@ -69,6 +69,10 @@ spec:
mountPath: /etc/congress/congress.conf mountPath: /etc/congress/congress.conf
subPath: congress.conf subPath: congress.conf
readOnly: true readOnly: true
- name: congress-etc
mountPath: {{ .Values.conf.congress.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.congress.DEFAULT.log_config_append }}
readOnly: true
- name: congress-etc - name: congress-etc
mountPath: /etc/congress/api-paste.ini mountPath: /etc/congress/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -63,6 +63,10 @@ spec:
mountPath: /etc/congress/congress.conf mountPath: /etc/congress/congress.conf
subPath: congress.conf subPath: congress.conf
readOnly: true readOnly: true
- name: congress-etc
mountPath: {{ .Values.conf.congress.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.congress.DEFAULT.log_config_append }}
readOnly: true
- name: congress-etc - name: congress-etc
mountPath: /etc/congress/api-paste.ini mountPath: /etc/congress/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -63,6 +63,10 @@ spec:
mountPath: /etc/congress/congress.conf mountPath: /etc/congress/congress.conf
subPath: congress.conf subPath: congress.conf
readOnly: true readOnly: true
- name: congress-etc
mountPath: {{ .Values.conf.congress.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.congress.DEFAULT.log_config_append }}
readOnly: true
- name: congress-etc - name: congress-etc
mountPath: /etc/congress/api-paste.ini mountPath: /etc/congress/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -15,6 +15,6 @@ limitations under the License.
*/}} */}}
{{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }} {{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }}
{{- $bootstrapJob := dict "envAll" . "serviceName" "congress" "keystoneUser" .Values.bootstrap.ks_user -}} {{- $bootstrapJob := dict "envAll" . "serviceName" "congress" "keystoneUser" .Values.bootstrap.ks_user "logConfigFile" .Values.conf.congress.DEFAULT.log_config_append -}}
{{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }} {{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }}
{{- end }} {{- end }}

View File

@ -315,6 +315,21 @@ endpoints:
default: 5672 default: 5672
http: http:
default: 15672 default: 15672
fluentd:
namespace: null
name: fluentd
hosts:
default: fluentd-logging
host_fqdn_override:
default: null
path:
default: null
scheme: 'http'
port:
service:
default: 24224
metrics:
default: 24220
policy: policy:
datasource_services: datasource_services:
@ -329,6 +344,7 @@ policy:
conf: conf:
congress: congress:
DEFAULT: DEFAULT:
log_config_append: /etc/congress/logging.conf
#NOTE(portdirect): the bind port should not be defined, and is manipulated #NOTE(portdirect): the bind port should not be defined, and is manipulated
# via the endpoints section. # via the endpoints section.
bind_port: null bind_port: null
@ -347,6 +363,65 @@ conf:
max_retries: -1 max_retries: -1
keystone_authtoken: keystone_authtoken:
auth_type: password auth_type: password
logging:
loggers:
keys:
- root
- congress
handlers:
keys:
- stdout
- stderr
- "null"
formatters:
keys:
- context
- default
logger_root:
level: WARNING
handlers: null
logger_congress:
level: INFO
handlers:
- stdout
- stderr
qualname: congress
logger_amqp:
level: WARNING
handlers: stderr
qualname: amqp
logger_amqplib:
level: WARNING
handlers: stderr
qualname: amqplib
logger_eventletwsgi:
level: WARNING
handlers: stderr
qualname: eventlet.wsgi.server
logger_sqlalchemy:
level: WARNING
handlers: stderr
qualname: sqlalchemy
logger_boto:
level: WARNING
handlers: stderr
qualname: boto
handler_null:
class: logging.NullHandler
formatter: default
args: ()
handler_stdout:
class: StreamHandler
args: (sys.stdout,)
formatter: context
handler_stderr:
class: StreamHandler
args: (sys.stderr,)
formatter: context
formatter_context:
class: oslo_log.formatters.ContextFormatter
formatter_default:
format: "%(message)s"
paste: paste:
composite:congress: composite:congress:
use: egg:Paste#urlmap use: egg:Paste#urlmap

View File

@ -144,6 +144,18 @@ limitations under the License.
{{- $_ := tuple "image_registry" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.glance_registry.DEFAULT "bind_port" -}} {{- $_ := tuple "image_registry" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.glance_registry.DEFAULT "bind_port" -}}
{{- end -}} {{- end -}}
{{- if and (empty .Values.conf.logging.handler_fluent) (has "fluent" .Values.conf.logging.handlers.keys) -}}
{{- $fluentd_host := tuple "fluentd" "internal" $envAll | include "helm-toolkit.endpoints.hostname_namespaced_endpoint_lookup" }}
{{- $fluentd_port := tuple "fluentd" "internal" "service" $envAll | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
{{- $fluent_args := printf "('openstack.glance', '%s', %s)" $fluentd_host $fluentd_port }}
{{- $handler_fluent := dict "class" "fluent.handler.FluentHandler" "formatter" "fluent" "args" $fluent_args -}}
{{- $_ := set .Values.conf.logging "handler_fluent" $handler_fluent -}}
{{- end -}}
{{- if and (empty .Values.conf.logging.formatter_fluent) (has "fluent" .Values.conf.logging.formatters.keys) -}}
{{- $formatter_fluent := dict "class" "oslo_log.formatters.FluentFormatter" -}}
{{- $_ := set .Values.conf.logging "formatter_fluent" $formatter_fluent -}}
{{- end -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: ConfigMap kind: ConfigMap
@ -154,6 +166,8 @@ data:
{{ toYaml .Values.conf.rally_tests.tests | indent 4 }} {{ toYaml .Values.conf.rally_tests.tests | indent 4 }}
glance-api.conf: | glance-api.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.glance | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.glance | indent 4 }}
logging.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.logging | indent 4 }}
glance-api-paste.ini: | glance-api-paste.ini: |
{{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }} {{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }}
glance-registry.conf: | glance-registry.conf: |

View File

@ -118,6 +118,10 @@ spec:
mountPath: /etc/glance/glance-api.conf mountPath: /etc/glance/glance-api.conf
subPath: glance-api.conf subPath: glance-api.conf
readOnly: true readOnly: true
- name: glance-etc
mountPath: {{ .Values.conf.glance.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.glance.DEFAULT.log_config_append }}
readOnly: true
- name: glance-etc - name: glance-etc
mountPath: /etc/glance/glance-api-paste.ini mountPath: /etc/glance/glance-api-paste.ini
subPath: glance-api-paste.ini subPath: glance-api-paste.ini

View File

@ -83,6 +83,10 @@ spec:
mountPath: /etc/glance/glance-registry.conf mountPath: /etc/glance/glance-registry.conf
subPath: glance-registry.conf subPath: glance-registry.conf
readOnly: true readOnly: true
- name: glance-etc
mountPath: {{ .Values.conf.glance.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.glance.DEFAULT.log_config_append }}
readOnly: true
- name: glance-etc - name: glance-etc
mountPath: /etc/glance/glance-registry-paste.ini mountPath: /etc/glance/glance-registry-paste.ini
subPath: glance-registry-paste.ini subPath: glance-registry-paste.ini

View File

@ -26,6 +26,6 @@ volumes:
{{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }} {{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }}
{{- $podVolumes := tuple . | include "glance.templates._job_bootstrap.pod_volumes" | toString | fromYaml }} {{- $podVolumes := tuple . | include "glance.templates._job_bootstrap.pod_volumes" | toString | fromYaml }}
{{- $bootstrapJob := dict "envAll" . "serviceName" "glance" "keystoneUser" .Values.bootstrap.ks_user "podVolMounts" $podVolumes.volumeMounts "podVols" $podVolumes.volumes -}} {{- $bootstrapJob := dict "envAll" . "serviceName" "glance" "keystoneUser" .Values.bootstrap.ks_user "logConfigFile" .Values.conf.glance.DEFAULT.log_config_append "podVolMounts" $podVolumes.volumeMounts "podVols" $podVolumes.volumes -}}
{{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }} {{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }}
{{- end }} {{- end }}

View File

@ -16,7 +16,7 @@ limitations under the License.
{{- if .Values.manifests.job_db_drop }} {{- if .Values.manifests.job_db_drop }}
{{- $serviceName := "glance" -}} {{- $serviceName := "glance" -}}
{{- $dbToDrop := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName "glance-api" ) "configDbSection" "database" "configDbKey" "connection" -}} {{- $dbToDrop := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName "glance-api" ) "logConfigFile" (printf "/etc/%s/logging.conf" $serviceName ) "configDbSection" "database" "configDbKey" "connection" -}}
{{- $dbDropJob := dict "envAll" . "serviceName" $serviceName "dbToDrop" $dbToDrop -}} {{- $dbDropJob := dict "envAll" . "serviceName" $serviceName "dbToDrop" $dbToDrop -}}
{{ $dbDropJob | include "helm-toolkit.manifests.job_db_drop_mysql" }} {{ $dbDropJob | include "helm-toolkit.manifests.job_db_drop_mysql" }}
{{- end }} {{- end }}

View File

@ -16,7 +16,7 @@ limitations under the License.
{{- if .Values.manifests.job_db_init }} {{- if .Values.manifests.job_db_init }}
{{- $serviceName := "glance" -}} {{- $serviceName := "glance" -}}
{{- $dbToInit := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName "glance-api" ) "configDbSection" "database" "configDbKey" "connection" -}} {{- $dbToInit := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName "glance-api" ) "logConfigFile" (printf "/etc/%s/logging.conf" $serviceName ) "configDbSection" "database" "configDbKey" "connection" -}}
{{- $dbInitJob := dict "envAll" . "serviceName" $serviceName "dbToInit" $dbToInit -}} {{- $dbInitJob := dict "envAll" . "serviceName" $serviceName "dbToInit" $dbToInit -}}
{{ $dbInitJob | include "helm-toolkit.manifests.job_db_init_mysql" }} {{ $dbInitJob | include "helm-toolkit.manifests.job_db_init_mysql" }}
{{- end }} {{- end }}

View File

@ -16,7 +16,7 @@ limitations under the License.
{{- if .Values.manifests.job_db_sync }} {{- if .Values.manifests.job_db_sync }}
{{- $serviceName := "glance" -}} {{- $serviceName := "glance" -}}
{{- $dbToSync := index . "dbToSync" | default ( dict "configFile" (printf "/etc/%s/%s.conf" $serviceName "glance-api" ) "image" ( index .Values.images.tags ( printf "%s_db_sync" $serviceName )) ) -}} {{- $dbToSync := index . "dbToSync" | default ( dict "configFile" (printf "/etc/%s/%s.conf" $serviceName "glance-api" ) "logConfigFile" (printf "/etc/%s/logging.conf" $serviceName ) "image" ( index .Values.images.tags ( printf "%s_db_sync" $serviceName )) ) -}}
{{- $dbSyncJob := dict "envAll" . "serviceName" $serviceName "dbToSync" $dbToSync -}} {{- $dbSyncJob := dict "envAll" . "serviceName" $serviceName "dbToSync" $dbToSync -}}
{{ $dbSyncJob | include "helm-toolkit.manifests.job_db_sync" }} {{ $dbSyncJob | include "helm-toolkit.manifests.job_db_sync" }}
{{- end }} {{- end }}

View File

@ -221,6 +221,7 @@ conf:
add_metadef_tags: '' add_metadef_tags: ''
glance: glance:
DEFAULT: DEFAULT:
log_config_append: /etc/glance/logging.conf
# NOTE(portdirect): the bind port should not be defined, and is manipulated # NOTE(portdirect): the bind port should not be defined, and is manipulated
# via the endpoints section. # via the endpoints section.
bind_port: null bind_port: null
@ -246,6 +247,65 @@ conf:
max_retries: -1 max_retries: -1
oslo_messaging_notifications: oslo_messaging_notifications:
driver: messagingv2 driver: messagingv2
logging:
loggers:
keys:
- root
- glance
handlers:
keys:
- stdout
- stderr
- "null"
formatters:
keys:
- context
- default
logger_root:
level: WARNING
handlers: null
logger_glance:
level: INFO
handlers:
- stdout
- stderr
qualname: glance
logger_amqp:
level: WARNING
handlers: stderr
qualname: amqp
logger_amqplib:
level: WARNING
handlers: stderr
qualname: amqplib
logger_eventletwsgi:
level: WARNING
handlers: stderr
qualname: eventlet.wsgi.server
logger_sqlalchemy:
level: WARNING
handlers: stderr
qualname: sqlalchemy
logger_boto:
level: WARNING
handlers: stderr
qualname: boto
handler_null:
class: logging.NullHandler
formatter: default
args: ()
handler_stdout:
class: StreamHandler
args: (sys.stdout,)
formatter: context
handler_stderr:
class: StreamHandler
args: (sys.stderr,)
formatter: context
formatter_context:
class: oslo_log.formatters.ContextFormatter
formatter_default:
format: "%(message)s"
paste_registry: paste_registry:
pipeline:glance-registry: pipeline:glance-registry:
pipeline: healthcheck osprofiler unauthenticated-context registryapp pipeline: healthcheck osprofiler unauthenticated-context registryapp
@ -621,6 +681,21 @@ endpoints:
api: api:
default: 8088 default: 8088
public: 80 public: 80
fluentd:
namespace: null
name: fluentd
hosts:
default: fluentd-logging
host_fqdn_override:
default: null
path:
default: null
scheme: 'http'
port:
service:
default: 24224
metrics:
default: 24220
pod: pod:
user: user:

View File

@ -120,6 +120,18 @@ limitations under the License.
{{- $_ := tuple "cloudformation" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.heat.heat_api_cfn "bind_port" -}} {{- $_ := tuple "cloudformation" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.heat.heat_api_cfn "bind_port" -}}
{{- end -}} {{- end -}}
{{- if and (empty .Values.conf.logging.handler_fluent) (has "fluent" .Values.conf.logging.handlers.keys) -}}
{{- $fluentd_host := tuple "fluentd" "internal" $envAll | include "helm-toolkit.endpoints.hostname_namespaced_endpoint_lookup" }}
{{- $fluentd_port := tuple "fluentd" "internal" "service" $envAll | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
{{- $fluent_args := printf "('openstack.heat', '%s', %s)" $fluentd_host $fluentd_port }}
{{- $handler_fluent := dict "class" "fluent.handler.FluentHandler" "formatter" "fluent" "args" $fluent_args -}}
{{- $_ := set .Values.conf.logging "handler_fluent" $handler_fluent -}}
{{- end -}}
{{- if and (empty .Values.conf.logging.formatter_fluent) (has "fluent" .Values.conf.logging.formatters.keys) -}}
{{- $formatter_fluent := dict "class" "oslo_log.formatters.FluentFormatter" -}}
{{- $_ := set .Values.conf.logging "formatter_fluent" $formatter_fluent -}}
{{- end -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: ConfigMap kind: ConfigMap
@ -130,6 +142,8 @@ data:
{{ toYaml .Values.conf.rally_tests.tests | indent 4 }} {{ toYaml .Values.conf.rally_tests.tests | indent 4 }}
heat.conf: | heat.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.heat | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.heat | indent 4 }}
logging.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.logging | indent 4 }}
api-paste.ini: | api-paste.ini: |
{{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }} {{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }}
policy.json: | policy.json: |

View File

@ -62,6 +62,10 @@ spec:
mountPath: /etc/heat/heat.conf mountPath: /etc/heat/heat.conf
subPath: heat.conf subPath: heat.conf
readOnly: true readOnly: true
- name: heat-etc
mountPath: {{ .Values.conf.heat.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.heat.DEFAULT.log_config_append }}
readOnly: true
{{ if $mounts_heat_engine_cleaner.volumeMounts }}{{ toYaml $mounts_heat_engine_cleaner.volumeMounts | indent 14 }}{{ end }} {{ if $mounts_heat_engine_cleaner.volumeMounts }}{{ toYaml $mounts_heat_engine_cleaner.volumeMounts | indent 14 }}{{ end }}
volumes: volumes:
- name: etcheat - name: etcheat

View File

@ -83,6 +83,10 @@ spec:
mountPath: /etc/heat/heat.conf mountPath: /etc/heat/heat.conf
subPath: heat.conf subPath: heat.conf
readOnly: true readOnly: true
- name: heat-etc
mountPath: {{ .Values.conf.heat.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.heat.DEFAULT.log_config_append }}
readOnly: true
- name: heat-etc - name: heat-etc
mountPath: /etc/heat/api-paste.ini mountPath: /etc/heat/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -83,6 +83,10 @@ spec:
mountPath: /etc/heat/heat.conf mountPath: /etc/heat/heat.conf
subPath: heat.conf subPath: heat.conf
readOnly: true readOnly: true
- name: heat-etc
mountPath: {{ .Values.conf.heat.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.heat.DEFAULT.log_config_append }}
readOnly: true
- name: heat-etc - name: heat-etc
mountPath: /etc/heat/api-paste.ini mountPath: /etc/heat/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -83,6 +83,10 @@ spec:
mountPath: /etc/heat/heat.conf mountPath: /etc/heat/heat.conf
subPath: heat.conf subPath: heat.conf
readOnly: true readOnly: true
- name: heat-etc
mountPath: {{ .Values.conf.heat.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.heat.DEFAULT.log_config_append }}
readOnly: true
- name: heat-etc - name: heat-etc
mountPath: /etc/heat/api-paste.ini mountPath: /etc/heat/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -85,6 +85,10 @@ spec:
mountPath: /etc/heat/heat.conf mountPath: /etc/heat/heat.conf
subPath: heat.conf subPath: heat.conf
readOnly: true readOnly: true
- name: heat-etc
mountPath: {{ .Values.conf.heat.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.heat.DEFAULT.log_config_append }}
readOnly: true
- name: heat-etc - name: heat-etc
mountPath: /etc/heat/policy.json mountPath: /etc/heat/policy.json
subPath: policy.json subPath: policy.json

View File

@ -14,7 +14,8 @@ See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
*/}} */}}
{{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }} {{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }}
{{- $bootstrapJob := dict "envAll" . "serviceName" "heat" "keystoneUser" .Values.bootstrap.ks_user -}} {{- $bootstrapJob := dict "envAll" . "serviceName" "heat" "keystoneUser" .Values.bootstrap.ks_user "logConfigFile" .Values.conf.heat.DEFAULT.log_config_append -}}
{{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }} {{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }}
{{- end }} {{- end }}

View File

@ -430,6 +430,7 @@ conf:
resource_types:OS::Cinder::QoSSpecs: rule:project_admin resource_types:OS::Cinder::QoSSpecs: rule:project_admin
heat: heat:
DEFAULT: DEFAULT:
log_config_append: /etc/heat/logging.conf
num_engine_workers: 1 num_engine_workers: 1
trusts_delegated_roles: "" trusts_delegated_roles: ""
host: heat-engine host: heat-engine
@ -465,6 +466,65 @@ conf:
endpoint_type: internalURL endpoint_type: internalURL
oslo_messaging_notifications: oslo_messaging_notifications:
driver: messagingv2 driver: messagingv2
logging:
loggers:
keys:
- root
- heat
handlers:
keys:
- stdout
- stderr
- "null"
formatters:
keys:
- context
- default
logger_root:
level: WARNING
handlers: null
logger_heat:
level: INFO
handlers:
- stdout
- stderr
qualname: heat
logger_amqp:
level: WARNING
handlers: stderr
qualname: amqp
logger_amqplib:
level: WARNING
handlers: stderr
qualname: amqplib
logger_eventletwsgi:
level: WARNING
handlers: stderr
qualname: eventlet.wsgi.server
logger_sqlalchemy:
level: WARNING
handlers: stderr
qualname: sqlalchemy
logger_boto:
level: WARNING
handlers: stderr
qualname: boto
handler_null:
class: logging.NullHandler
formatter: default
args: ()
handler_stdout:
class: StreamHandler
args: (sys.stdout,)
formatter: context
handler_stderr:
class: StreamHandler
args: (sys.stderr,)
formatter: context
formatter_context:
class: oslo_log.formatters.ContextFormatter
formatter_default:
format: "%(message)s"
network: network:
api: api:
@ -836,6 +896,21 @@ endpoints:
default: 5672 default: 5672
http: http:
default: 15672 default: 15672
fluentd:
namespace: null
name: fluentd
hosts:
default: fluentd-logging
host_fqdn_override:
default: null
path:
default: null
scheme: 'http'
port:
service:
default: 24224
metrics:
default: 24220
pod: pod:
user: user:

View File

@ -184,6 +184,18 @@ limitations under the License.
{{- $_ := set .Values.conf.ironic.api "port" (tuple "baremetal" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup") -}} {{- $_ := set .Values.conf.ironic.api "port" (tuple "baremetal" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup") -}}
{{- end -}} {{- end -}}
{{- if and (empty .Values.conf.logging.handler_fluent) (has "fluent" .Values.conf.logging.handlers.keys) -}}
{{- $fluentd_host := tuple "fluentd" "internal" $envAll | include "helm-toolkit.endpoints.hostname_namespaced_endpoint_lookup" }}
{{- $fluentd_port := tuple "fluentd" "internal" "service" $envAll | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
{{- $fluent_args := printf "('openstack.ironic', '%s', %s)" $fluentd_host $fluentd_port }}
{{- $handler_fluent := dict "class" "fluent.handler.FluentHandler" "formatter" "fluent" "args" $fluent_args -}}
{{- $_ := set .Values.conf.logging "handler_fluent" $handler_fluent -}}
{{- end -}}
{{- if and (empty .Values.conf.logging.formatter_fluent) (has "fluent" .Values.conf.logging.formatters.keys) -}}
{{- $formatter_fluent := dict "class" "oslo_log.formatters.FluentFormatter" -}}
{{- $_ := set .Values.conf.logging "formatter_fluent" $formatter_fluent -}}
{{- end -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: ConfigMap kind: ConfigMap
@ -192,6 +204,8 @@ metadata:
data: data:
ironic.conf: | ironic.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.ironic | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.ironic | indent 4 }}
logging.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.logging | indent 4 }}
policy.json: | policy.json: |
{{ toJson .Values.conf.policy | indent 4 }} {{ toJson .Values.conf.policy | indent 4 }}
{{- include "helm-toolkit.snippets.values_template_renderer" (dict "envAll" $envAll "template" .Values.conf.tftp_map_file "key" "tftp-map-file") | indent 2 }} {{- include "helm-toolkit.snippets.values_template_renderer" (dict "envAll" $envAll "template" .Values.conf.tftp_map_file "key" "tftp-map-file") | indent 2 }}

View File

@ -113,6 +113,10 @@ spec:
mountPath: /etc/ironic/ironic.conf mountPath: /etc/ironic/ironic.conf
subPath: ironic.conf subPath: ironic.conf
readOnly: true readOnly: true
- name: ironic-etc
mountPath: {{ .Values.conf.ironic.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.ironic.DEFAULT.log_config_append }}
readOnly: true
- name: ironic-etc - name: ironic-etc
mountPath: /etc/ironic/policy.json mountPath: /etc/ironic/policy.json
subPath: policy.json subPath: policy.json

View File

@ -15,6 +15,6 @@ limitations under the License.
*/}} */}}
{{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }} {{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }}
{{- $bootstrapJob := dict "envAll" . "serviceName" "ironic" "keystoneUser" .Values.bootstrap.ks_user -}} {{- $bootstrapJob := dict "envAll" . "serviceName" "ironic" "keystoneUser" .Values.bootstrap.ks_user "logConfigFile" .Values.conf.ironic.DEFAULT.log_config_append -}}
{{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }} {{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }}
{{- end }} {{- end }}

View File

@ -154,6 +154,10 @@ spec:
mountPath: /etc/ironic/ironic.conf mountPath: /etc/ironic/ironic.conf
subPath: ironic.conf subPath: ironic.conf
readOnly: true readOnly: true
- name: ironic-etc
mountPath: {{ .Values.conf.ironic.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.ironic.DEFAULT.log_config_append }}
readOnly: true
- name: ironic-etc - name: ironic-etc
mountPath: /etc/ironic/policy.json mountPath: /etc/ironic/policy.json
subPath: policy.json subPath: policy.json

View File

@ -98,6 +98,7 @@ conf:
} }
ironic: ironic:
DEFAULT: DEFAULT:
log_config_append: /etc/ironic/logging.conf
enabled_drivers: agent_ipmitool enabled_drivers: agent_ipmitool
api: api:
port: null port: null
@ -136,6 +137,65 @@ conf:
auth_type: password auth_type: password
swift: swift:
auth_url: null auth_url: null
logging:
loggers:
keys:
- root
- ironic
handlers:
keys:
- stdout
- stderr
- "null"
formatters:
keys:
- context
- default
logger_root:
level: WARNING
handlers: null
logger_ironic:
level: INFO
handlers:
- stdout
- stderr
qualname: ironic
logger_amqp:
level: WARNING
handlers: stderr
qualname: amqp
logger_amqplib:
level: WARNING
handlers: stderr
qualname: amqplib
logger_eventletwsgi:
level: WARNING
handlers: stderr
qualname: eventlet.wsgi.server
logger_sqlalchemy:
level: WARNING
handlers: stderr
qualname: sqlalchemy
logger_boto:
level: WARNING
handlers: stderr
qualname: boto
handler_null:
class: logging.NullHandler
formatter: default
args: ()
handler_stdout:
class: StreamHandler
args: (sys.stdout,)
formatter: context
handler_stderr:
class: StreamHandler
args: (sys.stderr,)
formatter: context
formatter_context:
class: oslo_log.formatters.ContextFormatter
formatter_default:
format: "%(message)s"
network: network:
pxe: pxe:
@ -463,6 +523,21 @@ endpoints:
port: port:
api: api:
default: 8088 default: 8088
fluentd:
namespace: null
name: fluentd
hosts:
default: fluentd-logging
host_fqdn_override:
default: null
path:
default: null
scheme: 'http'
port:
service:
default: 24224
metrics:
default: 24220
pod: pod:
affinity: affinity:

View File

@ -29,6 +29,18 @@ limitations under the License.
{{- $_ := tuple "oslo_cache" "internal" "memcache" . | include "helm-toolkit.endpoints.host_and_port_endpoint_uri_lookup" | set .Values.conf.keystone.cache "memcache_servers" -}} {{- $_ := tuple "oslo_cache" "internal" "memcache" . | include "helm-toolkit.endpoints.host_and_port_endpoint_uri_lookup" | set .Values.conf.keystone.cache "memcache_servers" -}}
{{- end -}} {{- end -}}
{{- if and (empty .Values.conf.logging.handler_fluent) (has "fluent" .Values.conf.logging.handlers.keys) -}}
{{- $fluentd_host := tuple "fluentd" "internal" $envAll | include "helm-toolkit.endpoints.hostname_namespaced_endpoint_lookup" }}
{{- $fluentd_port := tuple "fluentd" "internal" "service" $envAll | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
{{- $fluent_args := printf "('openstack.keystone', '%s', %s)" $fluentd_host $fluentd_port }}
{{- $handler_fluent := dict "class" "fluent.handler.FluentHandler" "formatter" "fluent" "args" $fluent_args -}}
{{- $_ := set .Values.conf.logging "handler_fluent" $handler_fluent -}}
{{- end -}}
{{- if and (empty .Values.conf.logging.formatter_fluent) (has "fluent" .Values.conf.logging.formatters.keys) -}}
{{- $formatter_fluent := dict "class" "oslo_log.formatters.FluentFormatter" -}}
{{- $_ := set .Values.conf.logging "formatter_fluent" $formatter_fluent -}}
{{- end -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: ConfigMap kind: ConfigMap
@ -39,6 +51,8 @@ data:
{{ toYaml .Values.conf.rally_tests.tests | indent 4 }} {{ toYaml .Values.conf.rally_tests.tests | indent 4 }}
keystone.conf: | keystone.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.keystone | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.keystone | indent 4 }}
logging.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" $envAll.Values.conf.logging | indent 4 }}
keystone-paste.ini: | keystone-paste.ini: |
{{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }} {{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }}
policy.json: | policy.json: |

View File

@ -99,6 +99,10 @@ spec:
mountPath: /etc/keystone/keystone.conf mountPath: /etc/keystone/keystone.conf
subPath: keystone.conf subPath: keystone.conf
readOnly: true readOnly: true
- name: keystone-etc
mountPath: {{ .Values.conf.keystone.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.keystone.DEFAULT.log_config_append }}
readOnly: true
- name: keystone-bin - name: keystone-bin
mountPath: /tmp/fernet-manage.py mountPath: /tmp/fernet-manage.py
subPath: fernet-manage.py subPath: fernet-manage.py

View File

@ -98,6 +98,10 @@ spec:
mountPath: /etc/keystone/keystone.conf mountPath: /etc/keystone/keystone.conf
subPath: keystone.conf subPath: keystone.conf
readOnly: true readOnly: true
- name: keystone-etc
mountPath: {{ .Values.conf.keystone.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.keystone.DEFAULT.log_config_append }}
readOnly: true
- name: keystone-bin - name: keystone-bin
mountPath: /tmp/fernet-manage.py mountPath: /tmp/fernet-manage.py
subPath: fernet-manage.py subPath: fernet-manage.py

View File

@ -85,6 +85,10 @@ spec:
mountPath: /etc/keystone/keystone.conf mountPath: /etc/keystone/keystone.conf
subPath: keystone.conf subPath: keystone.conf
readOnly: true readOnly: true
- name: keystone-etc
mountPath: {{ .Values.conf.keystone.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.keystone.DEFAULT.log_config_append }}
readOnly: true
- name: keystone-etc - name: keystone-etc
mountPath: /etc/keystone/keystone-paste.ini mountPath: /etc/keystone/keystone-paste.ini
subPath: keystone-paste.ini subPath: keystone-paste.ini

View File

@ -15,6 +15,6 @@ limitations under the License.
*/}} */}}
{{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }} {{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }}
{{- $bootstrapJob := dict "envAll" . "serviceName" "keystone" "keystoneUser" .Values.bootstrap.ks_user -}} {{- $bootstrapJob := dict "envAll" . "serviceName" "keystone" "keystoneUser" .Values.bootstrap.ks_user "logConfigFile" .Values.conf.keystone.DEFAULT.log_config_append -}}
{{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }} {{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }}
{{- end }} {{- end }}

View File

@ -91,6 +91,10 @@ spec:
mountPath: /etc/keystone/keystone.conf mountPath: /etc/keystone/keystone.conf
subPath: keystone.conf subPath: keystone.conf
readOnly: true readOnly: true
- name: keystone-etc
mountPath: {{ .Values.conf.keystone.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.keystone.DEFAULT.log_config_append }}
readOnly: true
- name: keystone-bin - name: keystone-bin
mountPath: /tmp/fernet-manage.py mountPath: /tmp/fernet-manage.py
subPath: fernet-manage.py subPath: fernet-manage.py

View File

@ -80,6 +80,10 @@ spec:
mountPath: /etc/keystone/keystone.conf mountPath: /etc/keystone/keystone.conf
subPath: keystone.conf subPath: keystone.conf
readOnly: true readOnly: true
- name: keystone-etc
mountPath: {{ .Values.conf.keystone.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.keystone.DEFAULT.log_config_append }}
readOnly: true
{{- range $k, $v := .Values.conf.ks_domains }} {{- range $k, $v := .Values.conf.ks_domains }}
- name: keystone-etc - name: keystone-etc
mountPath: {{ $envAll.Values.conf.keystone.identity.domain_config_dir | default "/etc/keystonedomains" }}/keystone.{{ $k }}.json mountPath: {{ $envAll.Values.conf.keystone.identity.domain_config_dir | default "/etc/keystonedomains" }}/keystone.{{ $k }}.json

View File

@ -92,6 +92,10 @@ spec:
mountPath: /etc/keystone/keystone.conf mountPath: /etc/keystone/keystone.conf
subPath: keystone.conf subPath: keystone.conf
readOnly: true readOnly: true
- name: keystone-etc
mountPath: {{ .Values.conf.keystone.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.keystone.DEFAULT.log_config_append }}
readOnly: true
- name: keystone-bin - name: keystone-bin
mountPath: /tmp/fernet-manage.py mountPath: /tmp/fernet-manage.py
subPath: fernet-manage.py subPath: fernet-manage.py

View File

@ -337,6 +337,7 @@ jobs:
conf: conf:
keystone: keystone:
DEFAULT: DEFAULT:
log_config_append: /etc/keystone/logging.conf
max_token_size: 255 max_token_size: 255
token: token:
provider: fernet provider: fernet
@ -775,6 +776,65 @@ conf:
sso_callback_template: sso_callback_template:
override: override:
append: append:
logging:
loggers:
keys:
- root
- keystone
handlers:
keys:
- stdout
- stderr
- "null"
formatters:
keys:
- context
- default
logger_root:
level: WARNING
handlers: null
logger_keystone:
level: INFO
handlers:
- stdout
- stderr
qualname: keystone
logger_amqp:
level: WARNING
handlers: stderr
qualname: amqp
logger_amqplib:
level: WARNING
handlers: stderr
qualname: amqplib
logger_eventletwsgi:
level: WARNING
handlers: stderr
qualname: eventlet.wsgi.server
logger_sqlalchemy:
level: WARNING
handlers: stderr
qualname: sqlalchemy
logger_boto:
level: WARNING
handlers: stderr
qualname: boto
handler_null:
class: logging.NullHandler
formatter: default
args: ()
handler_stdout:
class: StreamHandler
args: (sys.stdout,)
formatter: context
handler_stderr:
class: StreamHandler
args: (sys.stderr,)
formatter: context
formatter_context:
class: oslo_log.formatters.ContextFormatter
formatter_default:
format: "%(message)s"
# Names of secrets used by bootstrap and environmental checks # Names of secrets used by bootstrap and environmental checks
secrets: secrets:
@ -900,6 +960,21 @@ endpoints:
# tls_req_cert: allow # Valid values: demand, never, allow # tls_req_cert: allow # Valid values: demand, never, allow
# tls_cacertfile: /etc/certs/tls.ca # abs path to the CA cert # tls_cacertfile: /etc/certs/tls.ca # abs path to the CA cert
ca: null ca: null
fluentd:
namespace: null
name: fluentd
hosts:
default: fluentd-logging
host_fqdn_override:
default: null
path:
default: null
scheme: 'http'
port:
service:
default: 24224
metrics:
default: 24220
manifests: manifests:
configmap_bin: true configmap_bin: true

View File

@ -73,6 +73,18 @@ limitations under the License.
{{- $_ := set .Values.conf.magnum.trust "trustee_domain_admin_password" .Values.endpoints.identity.auth.magnum_stack_user.password -}} {{- $_ := set .Values.conf.magnum.trust "trustee_domain_admin_password" .Values.endpoints.identity.auth.magnum_stack_user.password -}}
{{- end -}} {{- end -}}
{{- if and (empty .Values.conf.logging.handler_fluent) (has "fluent" .Values.conf.logging.handlers.keys) -}}
{{- $fluentd_host := tuple "fluentd" "internal" $envAll | include "helm-toolkit.endpoints.hostname_namespaced_endpoint_lookup" }}
{{- $fluentd_port := tuple "fluentd" "internal" "service" $envAll | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
{{- $fluent_args := printf "('openstack.magnum', '%s', %s)" $fluentd_host $fluentd_port }}
{{- $handler_fluent := dict "class" "fluent.handler.FluentHandler" "formatter" "fluent" "args" $fluent_args -}}
{{- $_ := set .Values.conf.logging "handler_fluent" $handler_fluent -}}
{{- end -}}
{{- if and (empty .Values.conf.logging.formatter_fluent) (has "fluent" .Values.conf.logging.formatters.keys) -}}
{{- $formatter_fluent := dict "class" "oslo_log.formatters.FluentFormatter" -}}
{{- $_ := set .Values.conf.logging "formatter_fluent" $formatter_fluent -}}
{{- end -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: ConfigMap kind: ConfigMap
@ -81,6 +93,8 @@ metadata:
data: data:
magnum.conf: | magnum.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.magnum | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.magnum | indent 4 }}
logging.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.logging | indent 4 }}
api-paste.ini: | api-paste.ini: |
{{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }} {{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }}
policy.json: | policy.json: |

View File

@ -89,6 +89,10 @@ spec:
mountPath: /etc/magnum/magnum.conf mountPath: /etc/magnum/magnum.conf
subPath: magnum.conf subPath: magnum.conf
readOnly: true readOnly: true
- name: magnum-etc
mountPath: {{ .Values.conf.magnum.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.magnum.DEFAULT.log_config_append }}
readOnly: true
- name: magnum-etc - name: magnum-etc
mountPath: /etc/magnum/api-paste.ini mountPath: /etc/magnum/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -15,6 +15,6 @@ limitations under the License.
*/}} */}}
{{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }} {{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }}
{{- $bootstrapJob := dict "envAll" . "serviceName" "magnum" "keystoneUser" .Values.bootstrap.ks_user -}} {{- $bootstrapJob := dict "envAll" . "serviceName" "magnum" "keystoneUser" .Values.bootstrap.ks_user "logConfigFile" .Values.conf.magnum.DEFAULT.log_config_append -}}
{{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }} {{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }}
{{- end }} {{- end }}

View File

@ -86,6 +86,10 @@ spec:
mountPath: /etc/magnum/magnum.conf mountPath: /etc/magnum/magnum.conf
subPath: magnum.conf subPath: magnum.conf
readOnly: true readOnly: true
- name: magnum-etc
mountPath: {{ .Values.conf.magnum.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.magnum.DEFAULT.log_config_append }}
readOnly: true
- name: magnum-etc - name: magnum-etc
mountPath: /etc/magnum/policy.json mountPath: /etc/magnum/policy.json
subPath: policy.json subPath: policy.json

View File

@ -114,6 +114,7 @@ conf:
magnum-service:get_all: rule:admin_api magnum-service:get_all: rule:admin_api
magnum: magnum:
DEFAULT: DEFAULT:
log_config_append: /etc/magnum/logging.conf
transport_url: null transport_url: null
oslo_messaging_notifications: oslo_messaging_notifications:
driver: messaging driver: messaging
@ -134,6 +135,65 @@ conf:
# via the endpoints section. # via the endpoints section.
port: null port: null
host: 0.0.0.0 host: 0.0.0.0
logging:
loggers:
keys:
- root
- magnum
handlers:
keys:
- stdout
- stderr
- "null"
formatters:
keys:
- context
- default
logger_root:
level: WARNING
handlers: null
logger_magnum:
level: INFO
handlers:
- stdout
- stderr
qualname: magnum
logger_amqp:
level: WARNING
handlers: stderr
qualname: amqp
logger_amqplib:
level: WARNING
handlers: stderr
qualname: amqplib
logger_eventletwsgi:
level: WARNING
handlers: stderr
qualname: eventlet.wsgi.server
logger_sqlalchemy:
level: WARNING
handlers: stderr
qualname: sqlalchemy
logger_boto:
level: WARNING
handlers: stderr
qualname: boto
handler_null:
class: logging.NullHandler
formatter: default
args: ()
handler_stdout:
class: StreamHandler
args: (sys.stdout,)
formatter: context
handler_stderr:
class: StreamHandler
args: (sys.stderr,)
formatter: context
formatter_context:
class: oslo_log.formatters.ContextFormatter
formatter_default:
format: "%(message)s"
network: network:
api: api:
@ -402,6 +462,21 @@ endpoints:
default: 5672 default: 5672
http: http:
default: 15672 default: 15672
fluentd:
namespace: null
name: fluentd
hosts:
default: fluentd-logging
host_fqdn_override:
default: null
path:
default: null
scheme: 'http'
port:
service:
default: 24224
metrics:
default: 24220
pod: pod:
user: user:

View File

@ -63,6 +63,18 @@ limitations under the License.
{{- $_ := tuple "workflowv2" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.mistral.api "port" -}} {{- $_ := tuple "workflowv2" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.mistral.api "port" -}}
{{- end -}} {{- end -}}
{{- if and (empty .Values.conf.logging.handler_fluent) (has "fluent" .Values.conf.logging.handlers.keys) -}}
{{- $fluentd_host := tuple "fluentd" "internal" $envAll | include "helm-toolkit.endpoints.hostname_namespaced_endpoint_lookup" }}
{{- $fluentd_port := tuple "fluentd" "internal" "service" $envAll | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
{{- $fluent_args := printf "('openstack.mistral', '%s', %s)" $fluentd_host $fluentd_port }}
{{- $handler_fluent := dict "class" "fluent.handler.FluentHandler" "formatter" "fluent" "args" $fluent_args -}}
{{- $_ := set .Values.conf.logging "handler_fluent" $handler_fluent -}}
{{- end -}}
{{- if and (empty .Values.conf.logging.formatter_fluent) (has "fluent" .Values.conf.logging.formatters.keys) -}}
{{- $formatter_fluent := dict "class" "oslo_log.formatters.FluentFormatter" -}}
{{- $_ := set .Values.conf.logging "formatter_fluent" $formatter_fluent -}}
{{- end -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: ConfigMap kind: ConfigMap
@ -73,6 +85,8 @@ data:
{{ toYaml .Values.conf.rally_tests.tests | indent 4 }} {{ toYaml .Values.conf.rally_tests.tests | indent 4 }}
mistral.conf: | mistral.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.mistral | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.mistral | indent 4 }}
logging.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.logging | indent 4 }}
policy.json: | policy.json: |
{{ toJson .Values.conf.policy | indent 4 }} {{ toJson .Values.conf.policy | indent 4 }}
{{- range $key, $value := $envAll.Values.conf.rally_tests.templates }} {{- range $key, $value := $envAll.Values.conf.rally_tests.templates }}

View File

@ -83,6 +83,10 @@ spec:
mountPath: /etc/mistral/mistral.conf mountPath: /etc/mistral/mistral.conf
subPath: mistral.conf subPath: mistral.conf
readOnly: true readOnly: true
- name: mistral-etc
mountPath: {{ .Values.conf.mistral.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.mistral.DEFAULT.log_config_append }}
readOnly: true
- name: mistral-etc - name: mistral-etc
mountPath: /etc/mistral/policy.json mountPath: /etc/mistral/policy.json
subPath: policy.json subPath: policy.json

View File

@ -69,6 +69,10 @@ spec:
mountPath: /etc/mistral/mistral.conf mountPath: /etc/mistral/mistral.conf
subPath: mistral.conf subPath: mistral.conf
readOnly: true readOnly: true
- name: mistral-etc
mountPath: {{ .Values.conf.mistral.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.mistral.DEFAULT.log_config_append }}
readOnly: true
{{ if $mounts_mistral_executor.volumeMounts }}{{ toYaml $mounts_mistral_executor.volumeMounts | indent 12 }}{{ end }} {{ if $mounts_mistral_executor.volumeMounts }}{{ toYaml $mounts_mistral_executor.volumeMounts | indent 12 }}{{ end }}
volumes: volumes:
- name: pod-etc-mistral - name: pod-etc-mistral

View File

@ -15,6 +15,6 @@ limitations under the License.
*/}} */}}
{{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }} {{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }}
{{- $bootstrapJob := dict "envAll" . "serviceName" "mistral" "keystoneUser" .Values.bootstrap.ks_user -}} {{- $bootstrapJob := dict "envAll" . "serviceName" "mistral" "keystoneUser" .Values.bootstrap.ks_user "logConfigFile" .Values.conf.mistral.DEFAULT.log_config_append -}}
{{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }} {{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }}
{{- end }} {{- end }}

View File

@ -66,6 +66,10 @@ spec:
mountPath: /etc/mistral/mistral.conf mountPath: /etc/mistral/mistral.conf
subPath: mistral.conf subPath: mistral.conf
readOnly: true readOnly: true
- name: mistral-etc
mountPath: {{ .Values.conf.mistral.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.mistral.DEFAULT.log_config_append }}
readOnly: true
{{ if $mounts_mistral_engine.volumeMounts }}{{ toYaml $mounts_mistral_engine.volumeMounts | indent 12 }}{{ end }} {{ if $mounts_mistral_engine.volumeMounts }}{{ toYaml $mounts_mistral_engine.volumeMounts | indent 12 }}{{ end }}
volumes: volumes:
- name: pod-etc-mistral - name: pod-etc-mistral

View File

@ -66,6 +66,10 @@ spec:
mountPath: /etc/mistral/mistral.conf mountPath: /etc/mistral/mistral.conf
subPath: mistral.conf subPath: mistral.conf
readOnly: true readOnly: true
- name: mistral-etc
mountPath: {{ .Values.conf.mistral.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.mistral.DEFAULT.log_config_append }}
readOnly: true
{{ if $mounts_mistral_event_engine.volumeMounts }}{{ toYaml $mounts_mistral_event_engine.volumeMounts | indent 12 }}{{ end }} {{ if $mounts_mistral_event_engine.volumeMounts }}{{ toYaml $mounts_mistral_event_engine.volumeMounts | indent 12 }}{{ end }}
volumes: volumes:
- name: pod-etc-mistral - name: pod-etc-mistral

View File

@ -315,6 +315,21 @@ endpoints:
port: port:
memcache: memcache:
default: 11211 default: 11211
fluentd:
namespace: null
name: fluentd
hosts:
default: fluentd-logging
host_fqdn_override:
default: null
path:
default: null
scheme: 'http'
port:
service:
default: 24224
metrics:
default: 24220
conf: conf:
rally_tests: rally_tests:
@ -437,6 +452,7 @@ conf:
event_triggers:update: rule:admin_or_owner event_triggers:update: rule:admin_or_owner
mistral: mistral:
DEFAULT: DEFAULT:
log_config_append: /etc/mistral/logging.conf
transport_url: null transport_url: null
api: api:
# NOTE(portdirect): the bind port should not be defined, and is manipulated # NOTE(portdirect): the bind port should not be defined, and is manipulated
@ -451,6 +467,65 @@ conf:
auth_type: password auth_type: password
auth_version: v3 auth_version: v3
memcache_security_strategy: ENCRYPT memcache_security_strategy: ENCRYPT
logging:
loggers:
keys:
- root
- mistral
handlers:
keys:
- stdout
- stderr
- "null"
formatters:
keys:
- context
- default
logger_root:
level: WARNING
handlers: null
logger_mistral:
level: INFO
handlers:
- stdout
- stderr
qualname: mistral
logger_amqp:
level: WARNING
handlers: stderr
qualname: amqp
logger_amqplib:
level: WARNING
handlers: stderr
qualname: amqplib
logger_eventletwsgi:
level: WARNING
handlers: stderr
qualname: eventlet.wsgi.server
logger_sqlalchemy:
level: WARNING
handlers: stderr
qualname: sqlalchemy
logger_boto:
level: WARNING
handlers: stderr
qualname: boto
handler_null:
class: logging.NullHandler
formatter: default
args: ()
handler_stdout:
class: StreamHandler
args: (sys.stdout,)
formatter: context
handler_stderr:
class: StreamHandler
args: (sys.stderr,)
formatter: context
formatter_context:
class: oslo_log.formatters.ContextFormatter
formatter_default:
format: "%(message)s"
pod: pod:
user: user:

View File

@ -157,6 +157,18 @@ just set it along with nova_metadata_host.
{{- $_ := tuple "network" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.neutron.DEFAULT "bind_port" -}} {{- $_ := tuple "network" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.neutron.DEFAULT "bind_port" -}}
{{- end -}} {{- end -}}
{{- if and (empty .Values.conf.logging.handler_fluent) (has "fluent" .Values.conf.logging.handlers.keys) -}}
{{- $fluentd_host := tuple "fluentd" "internal" $envAll | include "helm-toolkit.endpoints.hostname_namespaced_endpoint_lookup" }}
{{- $fluentd_port := tuple "fluentd" "internal" "service" $envAll | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
{{- $fluent_args := printf "('openstack.neutron', '%s', %s)" $fluentd_host $fluentd_port }}
{{- $handler_fluent := dict "class" "fluent.handler.FluentHandler" "formatter" "fluent" "args" $fluent_args -}}
{{- $_ := set .Values.conf.logging "handler_fluent" $handler_fluent -}}
{{- end -}}
{{- if and (empty .Values.conf.logging.formatter_fluent) (has "fluent" .Values.conf.logging.formatters.keys) -}}
{{- $formatter_fluent := dict "class" "oslo_log.formatters.FluentFormatter" -}}
{{- $_ := set .Values.conf.logging "formatter_fluent" $formatter_fluent -}}
{{- end -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: ConfigMap kind: ConfigMap
@ -171,6 +183,8 @@ data:
{{ toJson $envAll.Values.conf.policy | indent 4 }} {{ toJson $envAll.Values.conf.policy | indent 4 }}
neutron.conf: | neutron.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" $envAll.Values.conf.neutron | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" $envAll.Values.conf.neutron | indent 4 }}
logging.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.logging | indent 4 }}
dhcp_agent.ini: | dhcp_agent.ini: |
{{ include "helm-toolkit.utils.to_oslo_conf" $envAll.Values.conf.dhcp_agent | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" $envAll.Values.conf.dhcp_agent | indent 4 }}
l3_agent.ini: | l3_agent.ini: |

View File

@ -69,6 +69,10 @@ spec:
mountPath: /etc/neutron/neutron.conf mountPath: /etc/neutron/neutron.conf
subPath: neutron.conf subPath: neutron.conf
readOnly: true readOnly: true
- name: neutron-etc
mountPath: {{ .Values.conf.neutron.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.neutron.DEFAULT.log_config_append }}
readOnly: true
- name: neutron-etc - name: neutron-etc
mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini
subPath: ml2_conf.ini subPath: ml2_conf.ini

View File

@ -69,6 +69,10 @@ spec:
mountPath: /etc/neutron/neutron.conf mountPath: /etc/neutron/neutron.conf
subPath: neutron.conf subPath: neutron.conf
readOnly: true readOnly: true
- name: neutron-etc
mountPath: {{ .Values.conf.neutron.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.neutron.DEFAULT.log_config_append }}
readOnly: true
- name: neutron-etc - name: neutron-etc
mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini
subPath: ml2_conf.ini subPath: ml2_conf.ini

View File

@ -145,6 +145,10 @@ spec:
mountPath: /etc/neutron/neutron.conf mountPath: /etc/neutron/neutron.conf
subPath: neutron.conf subPath: neutron.conf
readOnly: true readOnly: true
- name: neutron-etc
mountPath: {{ .Values.conf.neutron.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.neutron.DEFAULT.log_config_append }}
readOnly: true
- name: neutron-etc - name: neutron-etc
mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini
subPath: ml2_conf.ini subPath: ml2_conf.ini

View File

@ -90,6 +90,10 @@ spec:
mountPath: /etc/neutron/neutron.conf mountPath: /etc/neutron/neutron.conf
subPath: neutron.conf subPath: neutron.conf
readOnly: true readOnly: true
- name: neutron-etc
mountPath: {{ .Values.conf.neutron.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.neutron.DEFAULT.log_config_append }}
readOnly: true
- name: neutron-etc - name: neutron-etc
mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini
subPath: ml2_conf.ini subPath: ml2_conf.ini

View File

@ -147,6 +147,10 @@ spec:
mountPath: /etc/neutron/neutron.conf mountPath: /etc/neutron/neutron.conf
subPath: neutron.conf subPath: neutron.conf
readOnly: true readOnly: true
- name: neutron-etc
mountPath: {{ .Values.conf.neutron.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.neutron.DEFAULT.log_config_append }}
readOnly: true
- name: neutron-etc - name: neutron-etc
mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini
subPath: ml2_conf.ini subPath: ml2_conf.ini

View File

@ -122,6 +122,10 @@ spec:
mountPath: /etc/neutron/neutron.conf mountPath: /etc/neutron/neutron.conf
subPath: neutron.conf subPath: neutron.conf
readOnly: true readOnly: true
- name: neutron-etc
mountPath: {{ .Values.conf.neutron.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.neutron.DEFAULT.log_config_append }}
readOnly: true
- name: neutron-etc - name: neutron-etc
mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini
subPath: ml2_conf.ini subPath: ml2_conf.ini

View File

@ -84,6 +84,10 @@ spec:
mountPath: /etc/neutron/neutron.conf mountPath: /etc/neutron/neutron.conf
subPath: neutron.conf subPath: neutron.conf
readOnly: true readOnly: true
- name: neutron-etc
mountPath: {{ .Values.conf.neutron.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.neutron.DEFAULT.log_config_append }}
readOnly: true
- name: neutron-etc - name: neutron-etc
mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini mountPath: /etc/neutron/plugins/ml2/ml2_conf.ini
subPath: ml2_conf.ini subPath: ml2_conf.ini

View File

@ -15,6 +15,6 @@ limitations under the License.
*/}} */}}
{{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }} {{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }}
{{- $bootstrapJob := dict "envAll" . "serviceName" "neutron" "keystoneUser" .Values.bootstrap.ks_user -}} {{- $bootstrapJob := dict "envAll" . "serviceName" "neutron" "keystoneUser" .Values.bootstrap.ks_user "logConfigFile" .Values.conf.neutron.DEFAULT.log_config_append -}}
{{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }} {{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }}
{{- end }} {{- end }}

View File

@ -1435,6 +1435,7 @@ conf:
# Adjust to suit local requirements. # Adjust to suit local requirements.
neutron: neutron:
DEFAULT: DEFAULT:
log_config_append: /etc/neutron/logging.conf
#NOTE(portdirect): the bind port should not be defined, and is manipulated #NOTE(portdirect): the bind port should not be defined, and is manipulated
# via the endpoints section. # via the endpoints section.
bind_port: null bind_port: null
@ -1472,6 +1473,65 @@ conf:
memcache_security_strategy: ENCRYPT memcache_security_strategy: ENCRYPT
auth_type: password auth_type: password
auth_version: v3 auth_version: v3
logging:
loggers:
keys:
- root
- neutron
handlers:
keys:
- stdout
- stderr
- "null"
formatters:
keys:
- context
- default
logger_root:
level: WARNING
handlers: null
logger_neutron:
level: INFO
handlers:
- stdout
- stderr
qualname: neutron
logger_amqp:
level: WARNING
handlers: stderr
qualname: amqp
logger_amqplib:
level: WARNING
handlers: stderr
qualname: amqplib
logger_eventletwsgi:
level: WARNING
handlers: stderr
qualname: eventlet.wsgi.server
logger_sqlalchemy:
level: WARNING
handlers: stderr
qualname: sqlalchemy
logger_boto:
level: WARNING
handlers: stderr
qualname: boto
handler_null:
class: logging.NullHandler
formatter: default
args: ()
handler_stdout:
class: StreamHandler
args: (sys.stdout,)
formatter: context
handler_stderr:
class: StreamHandler
args: (sys.stderr,)
formatter: context
formatter_context:
class: oslo_log.formatters.ContextFormatter
formatter_default:
format: "%(message)s"
plugins: plugins:
ml2_conf: ml2_conf:
ml2: ml2:
@ -1720,6 +1780,21 @@ endpoints:
api: api:
default: 9696 default: 9696
public: 80 public: 80
fluentd:
namespace: osh-infra
name: fluentd
hosts:
default: fluentd-logging
host_fqdn_override:
default: null
path:
default: null
scheme: 'http'
port:
service:
default: 24224
metrics:
default: 24220
manifests: manifests:
configmap_bin: true configmap_bin: true

View File

@ -200,6 +200,18 @@ limitations under the License.
{{- $_ := tuple "compute" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.nova.DEFAULT "osapi_compute_listen_port" -}} {{- $_ := tuple "compute" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set .Values.conf.nova.DEFAULT "osapi_compute_listen_port" -}}
{{- end -}} {{- end -}}
{{- if and (empty .Values.conf.logging.handler_fluent) (has "fluent" .Values.conf.logging.handlers.keys) -}}
{{- $fluentd_host := tuple "fluentd" "internal" $envAll | include "helm-toolkit.endpoints.hostname_namespaced_endpoint_lookup" }}
{{- $fluentd_port := tuple "fluentd" "internal" "service" $envAll | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
{{- $fluent_args := printf "('openstack.nova', '%s', %s)" $fluentd_host $fluentd_port }}
{{- $handler_fluent := dict "class" "fluent.handler.FluentHandler" "formatter" "fluent" "args" $fluent_args -}}
{{- $_ := set .Values.conf.logging "handler_fluent" $handler_fluent -}}
{{- end -}}
{{- if and (empty .Values.conf.logging.formatter_fluent) (has "fluent" .Values.conf.logging.formatters.keys) -}}
{{- $formatter_fluent := dict "class" "oslo_log.formatters.FluentFormatter" -}}
{{- $_ := set .Values.conf.logging "formatter_fluent" $formatter_fluent -}}
{{- end -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: ConfigMap kind: ConfigMap
@ -224,6 +236,8 @@ data:
{{- tuple .Values.conf.rootwrap_filters.network "etc/rootwrap.d/_network.filters.tpl" . | include "helm-toolkit.utils.configmap_templater" }} {{- tuple .Values.conf.rootwrap_filters.network "etc/rootwrap.d/_network.filters.tpl" . | include "helm-toolkit.utils.configmap_templater" }}
nova.conf: | nova.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.nova | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.nova | indent 4 }}
logging.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.logging | indent 4 }}
nova-ironic.conf: | nova-ironic.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.nova_ironic | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.nova_ironic | indent 4 }}
wsgi-nova-placement.conf: | wsgi-nova-placement.conf: |

View File

@ -62,6 +62,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: {{ .Values.conf.nova.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.nova.DEFAULT.log_config_append }}
readOnly: true
- name: nova-etc - name: nova-etc
mountPath: /etc/nova/policy.yaml mountPath: /etc/nova/policy.yaml
subPath: policy.yaml subPath: policy.yaml

View File

@ -176,6 +176,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: {{ .Values.conf.nova.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.nova.DEFAULT.log_config_append }}
readOnly: true
- name: nova-etc - name: nova-etc
mountPath: /etc/nova/api-paste.ini mountPath: /etc/nova/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -110,6 +110,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: {{ .Values.conf.nova.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.nova.DEFAULT.log_config_append }}
readOnly: true
- name: nova-etc - name: nova-etc
mountPath: /etc/nova/api-paste.ini mountPath: /etc/nova/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -81,6 +81,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: {{ .Values.conf.nova.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.nova.DEFAULT.log_config_append }}
readOnly: true
- name: nova-etc - name: nova-etc
mountPath: /etc/nova/api-paste.ini mountPath: /etc/nova/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -67,6 +67,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: {{ .Values.conf.nova.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.nova.DEFAULT.log_config_append }}
readOnly: true
- name: nova-etc - name: nova-etc
mountPath: /etc/nova/policy.yaml mountPath: /etc/nova/policy.yaml
subPath: policy.yaml subPath: policy.yaml

View File

@ -67,6 +67,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: {{ .Values.conf.nova.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.nova.DEFAULT.log_config_append }}
readOnly: true
- name: nova-etc - name: nova-etc
mountPath: /etc/nova/policy.yaml mountPath: /etc/nova/policy.yaml
subPath: policy.yaml subPath: policy.yaml

View File

@ -68,6 +68,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: {{ .Values.conf.nova.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.nova.DEFAULT.log_config_append }}
readOnly: true
- name: pod-shared - name: pod-shared
mountPath: /tmp/pod-shared mountPath: /tmp/pod-shared
- name: nova-novncproxy-init-assets - name: nova-novncproxy-init-assets
@ -100,6 +104,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: /etc/nova/logging.conf
subPath: logging.conf
readOnly: true
- name: pod-usr-share-novnc - name: pod-usr-share-novnc
mountPath: /usr/share/novnc mountPath: /usr/share/novnc
readOnly: true readOnly: true

View File

@ -84,6 +84,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: {{ .Values.conf.nova.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.nova.DEFAULT.log_config_append }}
readOnly: true
- name: nova-etc - name: nova-etc
mountPath: /etc/nova/api-paste.ini mountPath: /etc/nova/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -67,6 +67,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: {{ .Values.conf.nova.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.nova.DEFAULT.log_config_append }}
readOnly: true
- name: nova-etc - name: nova-etc
mountPath: /etc/nova/policy.yaml mountPath: /etc/nova/policy.yaml
subPath: policy.yaml subPath: policy.yaml

View File

@ -68,6 +68,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: {{ .Values.conf.nova.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.nova.DEFAULT.log_config_append }}
readOnly: true
- name: pod-shared - name: pod-shared
mountPath: /tmp/pod-shared mountPath: /tmp/pod-shared
- name: nova-spiceproxy-init-assets - name: nova-spiceproxy-init-assets
@ -100,6 +104,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: {{ .Values.conf.nova.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.nova.DEFAULT.log_config_append }}
readOnly: true
- name: pod-usr-share-spice-html5 - name: pod-usr-share-spice-html5
mountPath: /usr/share/spice-html5 mountPath: /usr/share/spice-html5
readOnly: true readOnly: true

View File

@ -15,6 +15,6 @@ limitations under the License.
*/}} */}}
{{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }} {{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }}
{{- $bootstrapJob := dict "envAll" . "serviceName" "nova" "keystoneUser" .Values.bootstrap.ks_user -}} {{- $bootstrapJob := dict "envAll" . "serviceName" "nova" "keystoneUser" .Values.bootstrap.ks_user "logConfigFile" .Values.conf.nova.DEFAULT.log_config_append -}}
{{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }} {{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }}
{{- end }} {{- end }}

View File

@ -67,6 +67,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: {{ .Values.conf.nova.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.nova.DEFAULT.log_config_append }}
readOnly: true
- name: nova-etc - name: nova-etc
mountPath: /etc/nova/policy.yaml mountPath: /etc/nova/policy.yaml
subPath: policy.yaml subPath: policy.yaml

View File

@ -16,9 +16,9 @@ limitations under the License.
{{- if .Values.manifests.job_db_drop }} {{- if .Values.manifests.job_db_drop }}
{{- $serviceName := "nova" -}} {{- $serviceName := "nova" -}}
{{- $dbSvc := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "configDbSection" "database" "configDbKey" "connection" -}} {{- $dbSvc := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "logConfigFile" (printf "/etc/%s/logging.conf" $serviceName ) "configDbSection" "database" "configDbKey" "connection" -}}
{{- $dbApi := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "configDbSection" "api_database" "configDbKey" "connection" -}} {{- $dbApi := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "logConfigFile" (printf "/etc/%s/logging.conf" $serviceName ) "configDbSection" "api_database" "configDbKey" "connection" -}}
{{- $dbCell := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "configDbSection" "cell0_database" "configDbKey" "connection" -}} {{- $dbCell := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "logConfigFile" (printf "/etc/%s/logging.conf" $serviceName ) "configDbSection" "cell0_database" "configDbKey" "connection" -}}
{{- $dbsToDrop := list $dbSvc $dbApi $dbCell }} {{- $dbsToDrop := list $dbSvc $dbApi $dbCell }}
{{- $dbDropJob := dict "envAll" . "serviceName" $serviceName "dbsToDrop" $dbsToDrop -}} {{- $dbDropJob := dict "envAll" . "serviceName" $serviceName "dbsToDrop" $dbsToDrop -}}
{{ $dbDropJob | include "helm-toolkit.manifests.job_db_drop_mysql" }} {{ $dbDropJob | include "helm-toolkit.manifests.job_db_drop_mysql" }}

View File

@ -16,9 +16,9 @@ limitations under the License.
{{- if .Values.manifests.job_db_init }} {{- if .Values.manifests.job_db_init }}
{{- $serviceName := "nova" -}} {{- $serviceName := "nova" -}}
{{- $dbSvc := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "configDbSection" "database" "configDbKey" "connection" -}} {{- $dbSvc := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "logConfigFile" (printf "/etc/%s/logging.conf" $serviceName ) "configDbSection" "database" "configDbKey" "connection" -}}
{{- $dbApi := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "configDbSection" "api_database" "configDbKey" "connection" -}} {{- $dbApi := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "logConfigFile" (printf "/etc/%s/logging.conf" $serviceName ) "configDbSection" "api_database" "configDbKey" "connection" -}}
{{- $dbCell := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "configDbSection" "cell0_database" "configDbKey" "connection" -}} {{- $dbCell := dict "adminSecret" .Values.secrets.oslo_db.admin "configFile" (printf "/etc/%s/%s.conf" $serviceName $serviceName ) "logConfigFile" (printf "/etc/%s/logging.conf" $serviceName ) "configDbSection" "cell0_database" "configDbKey" "connection" -}}
{{- $dbsToInit := list $dbSvc $dbApi $dbCell }} {{- $dbsToInit := list $dbSvc $dbApi $dbCell }}
{{- $dbInitJob := dict "envAll" . "serviceName" $serviceName "dbsToInit" $dbsToInit -}} {{- $dbInitJob := dict "envAll" . "serviceName" $serviceName "dbsToInit" $dbsToInit -}}
{{ $dbInitJob | include "helm-toolkit.manifests.job_db_init_mysql" }} {{ $dbInitJob | include "helm-toolkit.manifests.job_db_init_mysql" }}

View File

@ -70,6 +70,10 @@ spec:
mountPath: /etc/nova/nova.conf mountPath: /etc/nova/nova.conf
subPath: nova.conf subPath: nova.conf
readOnly: true readOnly: true
- name: nova-etc
mountPath: {{ .Values.conf.nova.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.nova.DEFAULT.log_config_append }}
readOnly: true
- name: nova-etc - name: nova-etc
mountPath: /etc/nova/nova-ironic.conf mountPath: /etc/nova/nova-ironic.conf
subPath: nova-ironic.conf subPath: nova-ironic.conf

View File

@ -1021,6 +1021,7 @@ conf:
compute_driver: ironic.IronicDriver compute_driver: ironic.IronicDriver
nova: nova:
DEFAULT: DEFAULT:
log_config_append: /etc/nova/logging.conf
default_ephemeral_format: ext4 default_ephemeral_format: ext4
ram_allocation_ratio: 1.0 ram_allocation_ratio: 1.0
disk_allocation_ratio: 1.0 disk_allocation_ratio: 1.0
@ -1101,6 +1102,65 @@ conf:
placement: placement:
auth_type: password auth_type: password
auth_version: v3 auth_version: v3
logging:
loggers:
keys:
- root
- nova
handlers:
keys:
- stdout
- stderr
- "null"
formatters:
keys:
- context
- default
logger_root:
level: WARNING
handlers: null
logger_nova:
level: INFO
handlers:
- stdout
- stderr
qualname: nova
logger_amqp:
level: WARNING
handlers: stderr
qualname: amqp
logger_amqplib:
level: WARNING
handlers: stderr
qualname: amqplib
logger_eventletwsgi:
level: WARNING
handlers: stderr
qualname: eventlet.wsgi.server
logger_sqlalchemy:
level: WARNING
handlers: stderr
qualname: sqlalchemy
logger_boto:
level: WARNING
handlers: stderr
qualname: boto
handler_null:
class: logging.NullHandler
formatter: default
args: ()
handler_stdout:
class: StreamHandler
args: (sys.stdout,)
formatter: context
handler_stderr:
class: StreamHandler
args: (sys.stderr,)
formatter: context
formatter_context:
class: oslo_log.formatters.ContextFormatter
formatter_default:
format: "%(message)s"
# Names of secrets used by bootstrap and environmental checks # Names of secrets used by bootstrap and environmental checks
secrets: secrets:
@ -1416,6 +1476,21 @@ endpoints:
api: api:
default: 6385 default: 6385
public: 80 public: 80
fluentd:
namespace: null
name: fluentd
hosts:
default: fluentd-logging
host_fqdn_override:
default: null
path:
default: null
scheme: 'http'
port:
service:
default: 24224
metrics:
default: 24220
pod: pod:
user: user:

View File

@ -83,6 +83,18 @@ limitations under the License.
{{- $_ := set .Values.conf.senlin.authentication "service_username" .Values.endpoints.identity.auth.senlin.username -}} {{- $_ := set .Values.conf.senlin.authentication "service_username" .Values.endpoints.identity.auth.senlin.username -}}
{{- end -}} {{- end -}}
{{- if and (empty .Values.conf.logging.handler_fluent) (has "fluent" .Values.conf.logging.handlers.keys) -}}
{{- $fluentd_host := tuple "fluentd" "internal" $envAll | include "helm-toolkit.endpoints.hostname_namespaced_endpoint_lookup" }}
{{- $fluentd_port := tuple "fluentd" "internal" "service" $envAll | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
{{- $fluent_args := printf "('openstack.senlin', '%s', %s)" $fluentd_host $fluentd_port }}
{{- $handler_fluent := dict "class" "fluent.handler.FluentHandler" "formatter" "fluent" "args" $fluent_args -}}
{{- $_ := set .Values.conf.logging "handler_fluent" $handler_fluent -}}
{{- end -}}
{{- if and (empty .Values.conf.logging.formatter_fluent) (has "fluent" .Values.conf.logging.formatters.keys) -}}
{{- $formatter_fluent := dict "class" "oslo_log.formatters.FluentFormatter" -}}
{{- $_ := set .Values.conf.logging "formatter_fluent" $formatter_fluent -}}
{{- end -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: ConfigMap kind: ConfigMap
@ -93,6 +105,8 @@ data:
{{ toYaml .Values.conf.rally_tests.tests | indent 4 }} {{ toYaml .Values.conf.rally_tests.tests | indent 4 }}
senlin.conf: | senlin.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.senlin | indent 4 }} {{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.senlin | indent 4 }}
logging.conf: |
{{ include "helm-toolkit.utils.to_oslo_conf" .Values.conf.logging | indent 4 }}
api-paste.ini: | api-paste.ini: |
{{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }} {{ include "helm-toolkit.utils.to_ini" .Values.conf.paste | indent 4 }}
policy.json: | policy.json: |

View File

@ -65,6 +65,10 @@ spec:
mountPath: /etc/senlin/senlin.conf mountPath: /etc/senlin/senlin.conf
subPath: senlin.conf subPath: senlin.conf
readOnly: true readOnly: true
- name: senlin-etc
mountPath: {{ .Values.conf.senlin.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.senlin.DEFAULT.log_config_append }}
readOnly: true
{{ if $mounts_senlin_engine_cleaner.volumeMounts }}{{ toYaml $mounts_senlin_engine_cleaner.volumeMounts | indent 14 }}{{ end }} {{ if $mounts_senlin_engine_cleaner.volumeMounts }}{{ toYaml $mounts_senlin_engine_cleaner.volumeMounts | indent 14 }}{{ end }}
volumes: volumes:
- name: etcsenlin - name: etcsenlin

View File

@ -89,6 +89,10 @@ spec:
mountPath: /etc/senlin/senlin.conf mountPath: /etc/senlin/senlin.conf
subPath: senlin.conf subPath: senlin.conf
readOnly: true readOnly: true
- name: senlin-etc
mountPath: {{ .Values.conf.senlin.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.senlin.DEFAULT.log_config_append }}
readOnly: true
- name: senlin-etc - name: senlin-etc
mountPath: /etc/senlin/api-paste.ini mountPath: /etc/senlin/api-paste.ini
subPath: api-paste.ini subPath: api-paste.ini

View File

@ -68,6 +68,10 @@ spec:
mountPath: /etc/senlin/senlin.conf mountPath: /etc/senlin/senlin.conf
subPath: senlin.conf subPath: senlin.conf
readOnly: true readOnly: true
- name: senlin-etc
mountPath: {{ .Values.conf.senlin.DEFAULT.log_config_append }}
subPath: {{ base .Values.conf.senlin.DEFAULT.log_config_append }}
readOnly: true
- name: senlin-etc - name: senlin-etc
mountPath: /etc/senlin/policy.json mountPath: /etc/senlin/policy.json
subPath: policy.json subPath: policy.json

View File

@ -15,6 +15,6 @@ limitations under the License.
*/}} */}}
{{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }} {{- if and .Values.manifests.job_bootstrap .Values.bootstrap.enabled }}
{{- $bootstrapJob := dict "envAll" . "serviceName" "senlin" "keystoneUser" .Values.bootstrap.ks_user -}} {{- $bootstrapJob := dict "envAll" . "serviceName" "senlin" "keystoneUser" .Values.bootstrap.ks_user "logConfigFile" .Values.conf.senlin.DEFAULT.log_config_append -}}
{{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }} {{ $bootstrapJob | include "helm-toolkit.manifests.job_bootstrap" }}
{{- end }} {{- end }}

View File

@ -165,6 +165,7 @@ conf:
webhooks:trigger: '' webhooks:trigger: ''
senlin: senlin:
DEFAULT: DEFAULT:
log_config_append: /etc/senlin/logging.conf
transport_url: null transport_url: null
host: senlin host: senlin
database: database:
@ -179,6 +180,65 @@ conf:
# NOTE(portdirect): the bind port should not be defined, and is manipulated # NOTE(portdirect): the bind port should not be defined, and is manipulated
# via the endpoints section. # via the endpoints section.
bind_port: null bind_port: null
logging:
loggers:
keys:
- root
- senlin
handlers:
keys:
- stdout
- stderr
- "null"
formatters:
keys:
- context
- default
logger_root:
level: WARNING
handlers: null
logger_senlin:
level: INFO
handlers:
- stdout
- stderr
qualname: senlin
logger_amqp:
level: WARNING
handlers: stderr
qualname: amqp
logger_amqplib:
level: WARNING
handlers: stderr
qualname: amqplib
logger_eventletwsgi:
level: WARNING
handlers: stderr
qualname: eventlet.wsgi.server
logger_sqlalchemy:
level: WARNING
handlers: stderr
qualname: sqlalchemy
logger_boto:
level: WARNING
handlers: stderr
qualname: boto
handler_null:
class: logging.NullHandler
formatter: default
args: ()
handler_stdout:
class: StreamHandler
args: (sys.stdout,)
formatter: context
handler_stderr:
class: StreamHandler
args: (sys.stderr,)
formatter: context
formatter_context:
class: oslo_log.formatters.ContextFormatter
formatter_default:
format: "%(message)s"
network: network:
api: api:
@ -286,7 +346,6 @@ dependencies:
- endpoint: internal - endpoint: internal
service: local_image_registry service: local_image_registry
# Names of secrets used by bootstrap and environmental checks # Names of secrets used by bootstrap and environmental checks
secrets: secrets:
identity: identity:
@ -422,6 +481,21 @@ endpoints:
default: 5672 default: 5672
http: http:
default: 15672 default: 15672
fluentd:
namespace: null
name: fluentd
hosts:
default: fluentd-logging
host_fqdn_override:
default: null
path:
default: null
scheme: 'http'
port:
service:
default: 24224
metrics:
default: 24220
pod: pod:
user: user: