Partial FluxCD version of stx-openstack: telemetry
This is continuing previous work [1] of the openstack app migration to FluxCD, adding telemetry charts. This change includes the following charts: aodh, gnocchi, ceilometer Although these charts are currently disabled in metadata.yaml, they are being migrated to avoid future overhead. NOTE: The tests covering this change only included basic build and lifecycle operations. The charts were migrated to FluxCD but they are disabled by default since this feature is not being officially supported for a while. Tests here ensured that this migration did not affect the app. The telemetry specific k8s resources creation was not exhaustively tested now since this should be done whenever this feature is offically supported by this app again. Test Plan: PASS - build-helm-charts.sh builds a basic FluxCD app tarball PASS - application upload and overrides generated PASS - application apply/remove/delete [1] https://review.opendev.org/c/starlingx/openstack-armada-app/+/848192 Story: 2009138 Task: 45462 Signed-off-by: Thales Elero Cervi <thaleselero.cervi@windriver.com> Change-Id: I764e489f97071782e54a81597fccf9d91e243b63
This commit is contained in:
parent
17a94411fa
commit
5be062edb0
@ -0,0 +1,81 @@
|
||||
#
|
||||
# Copyright (c) 2022 Wind River Systems, Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
---
|
||||
release_group: osh-openstack-aodh
|
||||
images:
|
||||
tags:
|
||||
aodh_alarms_cleaner: docker.io/starlingx/stx-aodh:master-centos-stable-latest
|
||||
aodh_api: docker.io/starlingx/stx-aodh:master-centos-stable-latest
|
||||
aodh_db_sync: docker.io/starlingx/stx-aodh:master-centos-stable-latest
|
||||
aodh_evaluator: docker.io/starlingx/stx-aodh:master-centos-stable-latest
|
||||
aodh_listener: docker.io/starlingx/stx-aodh:master-centos-stable-latest
|
||||
aodh_notifier: docker.io/starlingx/stx-aodh:master-centos-stable-latest
|
||||
bootstrap: docker.io/starlingx/stx-heat:master-centos-stable-latest
|
||||
db_drop: docker.io/starlingx/stx-heat:master-centos-stable-latest
|
||||
db_init: docker.io/starlingx/stx-heat:master-centos-stable-latest
|
||||
image_repo_sync: null
|
||||
ks_endpoints: docker.io/starlingx/stx-heat:master-centos-stable-latest
|
||||
ks_service: docker.io/starlingx/stx-heat:master-centos-stable-latest
|
||||
ks_user: docker.io/starlingx/stx-heat:master-centos-stable-latest
|
||||
pod:
|
||||
affinity:
|
||||
anti:
|
||||
type:
|
||||
default: requiredDuringSchedulingIgnoredDuringExecution
|
||||
tolerations:
|
||||
aodh:
|
||||
enabled: true
|
||||
tolerations:
|
||||
- key: node-role.kubernetes.io/master
|
||||
operator: Exists
|
||||
effect: NoSchedule
|
||||
- key: openstack-compute-node
|
||||
operator: Exists
|
||||
effect: NoSchedule
|
||||
endpoints:
|
||||
oslo_messaging:
|
||||
statefulset:
|
||||
name: osh-openstack-rabbitmq-rabbitmq
|
||||
identity:
|
||||
force_public_endpoint: true
|
||||
jobs:
|
||||
alarms_cleaner:
|
||||
# daily at the 35 minute mark
|
||||
cron: "35 */24 * * *"
|
||||
conf:
|
||||
aodh:
|
||||
keystone_authtoken:
|
||||
auth_uri: http://keystone.openstack.svc.cluster.local:80/v3
|
||||
auth_url: http://keystone.openstack.svc.cluster.local:80/v3
|
||||
service_credentials:
|
||||
auth_url: http://keystone.openstack.svc.cluster.local:80/v3
|
||||
wsgi_aodh: |
|
||||
Listen :::{{ tuple "alarming" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
|
||||
|
||||
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
|
||||
LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" proxy
|
||||
|
||||
SetEnvIf X-Forwarded-For "^.*\..*\..*\..*" forwarded
|
||||
CustomLog /dev/stdout combined env=!forwarded
|
||||
CustomLog /dev/stdout proxy env=forwarded
|
||||
WSGISocketPrefix /var/run/httpd/wsgi
|
||||
|
||||
<VirtualHost *:{{ tuple "alarming" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" }}>
|
||||
WSGIDaemonProcess aodh processes=2 threads=1 user=aodh group=aodh display-name=%{GROUP} python-home=/var/lib/openstack socket-user=apache
|
||||
WSGIProcessGroup aodh
|
||||
WSGIScriptAlias / /var/www/cgi-bin/aodh/aodh-api
|
||||
WSGIApplicationGroup %{GLOBAL}
|
||||
<IfVersion >= 2.4>
|
||||
ErrorLogFormat "%{cu}t %M"
|
||||
</IfVersion>
|
||||
|
||||
ErrorLog /dev/stdout
|
||||
SetEnvIf X-Forwarded-For "^.*\..*\..*\..*" forwarded
|
||||
CustomLog /dev/stdout combined env=!forwarded
|
||||
CustomLog /dev/stdout proxy env=forwarded
|
||||
</VirtualHost>
|
||||
...
|
@ -0,0 +1,41 @@
|
||||
#
|
||||
# Copyright (c) 2022 Wind River Systems, Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
---
|
||||
apiVersion: "helm.toolkit.fluxcd.io/v2beta1"
|
||||
kind: HelmRelease
|
||||
metadata:
|
||||
name: aodh
|
||||
labels:
|
||||
chart_group: openstack-aodh
|
||||
spec:
|
||||
releaseName: osh-openstack-aodh
|
||||
chart:
|
||||
spec:
|
||||
chart: aodh
|
||||
version: 0.2.1
|
||||
sourceRef:
|
||||
kind: HelmRepository
|
||||
name: starlingx
|
||||
interval: 5m
|
||||
timeout: 30m
|
||||
test:
|
||||
enable: false
|
||||
install:
|
||||
disableHooks: false
|
||||
upgrade:
|
||||
disableHooks: false
|
||||
dependsOn:
|
||||
- name: horizon
|
||||
namespace: openstack
|
||||
valuesFrom:
|
||||
- kind: Secret
|
||||
name: aodh-static-overrides
|
||||
valuesKey: aodh-static-overrides.yaml
|
||||
- kind: Secret
|
||||
name: aodh-system-overrides
|
||||
valuesKey: aodh-system-overrides.yaml
|
||||
...
|
@ -0,0 +1,20 @@
|
||||
#
|
||||
# Copyright (c) 2022 Wind River Systems, Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
---
|
||||
namespace: openstack
|
||||
resources:
|
||||
- helmrelease.yaml
|
||||
secretGenerator:
|
||||
- name: aodh-static-overrides
|
||||
files:
|
||||
- aodh-static-overrides.yaml
|
||||
- name: aodh-system-overrides
|
||||
files:
|
||||
- aodh-system-overrides.yaml
|
||||
generatorOptions:
|
||||
disableNameSuffixHash: true
|
||||
...
|
@ -0,0 +1,538 @@
|
||||
#
|
||||
# Copyright (c) 2022 Wind River Systems, Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
---
|
||||
release_group: osh-openstack-ceilometer
|
||||
images:
|
||||
tags:
|
||||
ceilometer_api: docker.io/starlingx/stx-ceilometer:master-centos-stable-latest
|
||||
ceilometer_central: docker.io/starlingx/stx-ceilometer:master-centos-stable-latest
|
||||
ceilometer_collector: docker.io/starlingx/stx-ceilometer:master-centos-stable-latest
|
||||
ceilometer_compute: docker.io/starlingx/stx-ceilometer:master-centos-stable-latest
|
||||
ceilometer_db_sync: docker.io/starlingx/stx-ceilometer:master-centos-stable-latest
|
||||
ceilometer_ipmi: docker.io/starlingx/stx-ceilometer:master-centos-stable-latest
|
||||
ceilometer_notification: docker.io/starlingx/stx-ceilometer:master-centos-stable-latest
|
||||
db_init: docker.io/starlingx/stx-ceilometer:master-centos-stable-latest
|
||||
db_init_mongodb: docker.io/starlingx/stx-ceilometer:master-centos-stable-latest
|
||||
image_repo_sync: null
|
||||
ks_endpoints: docker.io/starlingx/stx-heat:master-centos-stable-latest
|
||||
ks_service: docker.io/starlingx/stx-heat:master-centos-stable-latest
|
||||
ks_user: docker.io/starlingx/stx-heat:master-centos-stable-latest
|
||||
test: null
|
||||
dependencies:
|
||||
static:
|
||||
central:
|
||||
jobs:
|
||||
- ceilometer-db-sync
|
||||
- ceilometer-rabbit-init
|
||||
services: null
|
||||
compute:
|
||||
jobs:
|
||||
- ceilometer-db-sync
|
||||
- ceilometer-rabbit-init
|
||||
services: null
|
||||
ipmi:
|
||||
jobs:
|
||||
- ceilometer-db-sync
|
||||
- ceilometer-rabbit-init
|
||||
services: null
|
||||
notification:
|
||||
jobs:
|
||||
- ceilometer-db-sync
|
||||
- ceilometer-rabbit-init
|
||||
services:
|
||||
- endpoint: internal
|
||||
service: event
|
||||
db_sync:
|
||||
jobs:
|
||||
- ceilometer-ks-user
|
||||
- ceilometer-ks-service
|
||||
services:
|
||||
- endpoint: internal
|
||||
service: identity
|
||||
- endpoint: internal
|
||||
service: metric
|
||||
manifests:
|
||||
deployment_api: false
|
||||
deployment_collector: false
|
||||
service_api: false
|
||||
job_db_init: false
|
||||
job_db_init_mongodb: false
|
||||
job_ks_endpoints: false
|
||||
secret_db: false
|
||||
secret_mongodb: false
|
||||
endpoints:
|
||||
identity:
|
||||
force_public_endpoint: true
|
||||
oslo_messaging:
|
||||
statefulset:
|
||||
name: osh-openstack-rabbitmq-rabbitmq
|
||||
oslo_cache:
|
||||
hosts:
|
||||
default: memcached
|
||||
conf:
|
||||
ceilometer:
|
||||
keystone_authtoken:
|
||||
auth_uri: http://keystone.openstack.svc.cluster.local:80/v3
|
||||
auth_url: http://keystone.openstack.svc.cluster.local:80/v3
|
||||
service_credentials:
|
||||
auth_url: http://keystone.openstack.svc.cluster.local:80/v3
|
||||
dispatcher_gnocchi:
|
||||
url: http://gnocchi.openstack.svc.cluster.local:80/
|
||||
api:
|
||||
aodh_url: http://aodh.openstack.svc.cluster.local:80/
|
||||
cache:
|
||||
expiration_time: 86400
|
||||
compute:
|
||||
resource_update_interval: 60
|
||||
instance_discovery_method: workload_partitioning
|
||||
oslo_messaging_notifications:
|
||||
topics:
|
||||
- notifications
|
||||
pipeline:
|
||||
sources:
|
||||
- name: meter_source
|
||||
meters:
|
||||
- "*"
|
||||
sinks:
|
||||
- meter_sink
|
||||
sinks:
|
||||
- name: meter_sink
|
||||
publishers:
|
||||
- gnocchi://
|
||||
event_pipeline:
|
||||
sources:
|
||||
- name: event_source
|
||||
events:
|
||||
- "*"
|
||||
sinks:
|
||||
- event_sink
|
||||
sinks:
|
||||
- name: event_sink
|
||||
publishers:
|
||||
- gnocchi://
|
||||
polling:
|
||||
sources:
|
||||
- name: instance_cpu_pollster
|
||||
interval: 30
|
||||
meters:
|
||||
- cpu
|
||||
- name: instance_disk_pollster
|
||||
interval: 600
|
||||
meters:
|
||||
- disk.capacity
|
||||
- disk.allocation
|
||||
- disk.usage
|
||||
- disk.device.read.requests
|
||||
- disk.device.write.requests
|
||||
- disk.device.read.bytes
|
||||
- disk.device.write.bytes
|
||||
- disk.device.capacity
|
||||
- disk.device.allocation
|
||||
- disk.device.usage
|
||||
- name: ipmi_pollster
|
||||
interval: 600
|
||||
meters:
|
||||
- hardware.ipmi.node.power
|
||||
- hardware.ipmi.node.temperature
|
||||
- hardware.ipmi.node.outlet_temperature
|
||||
- hardware.ipmi.node.airflow
|
||||
- hardware.ipmi.node.cups
|
||||
- hardware.ipmi.node.cpu_util
|
||||
- hardware.ipmi.node.mem_util
|
||||
- hardware.ipmi.node.io_util
|
||||
- hardware.ipmi.temperature
|
||||
- hardware.ipmi.voltage
|
||||
- hardware.ipmi.current
|
||||
- hardware.ipmi.fan
|
||||
- name: ceph_pollster
|
||||
interval: 600
|
||||
meters:
|
||||
- radosgw.objects
|
||||
- radosgw.objects.size
|
||||
- radosgw.objects.containers
|
||||
- radosgw.api.request
|
||||
- radosgw.containers.objects
|
||||
- radosgw.containers.objects.size
|
||||
- name: image_pollster
|
||||
interval: 600
|
||||
meters:
|
||||
- image.size
|
||||
- name: volume_pollster
|
||||
interval: 600
|
||||
meters:
|
||||
- volume.size
|
||||
- volume.snapshot.size
|
||||
- volume.backup.size
|
||||
gnocchi_resources:
|
||||
archive_policy_default: ceilometer-low
|
||||
archive_policies:
|
||||
- name: ceilometer-low
|
||||
aggregation_methods:
|
||||
- mean
|
||||
back_window: 0
|
||||
definition:
|
||||
- granularity: 5 minutes
|
||||
timespan: 7 days
|
||||
- name: ceilometer-low-rate
|
||||
aggregation_methods:
|
||||
- mean
|
||||
- rate:mean
|
||||
back_window: 0
|
||||
definition:
|
||||
- granularity: 5 minutes
|
||||
timespan: 7 days
|
||||
resources:
|
||||
- resource_type: identity
|
||||
metrics:
|
||||
identity.authenticate.success:
|
||||
identity.authenticate.pending:
|
||||
identity.authenticate.failure:
|
||||
identity.user.created:
|
||||
identity.user.deleted:
|
||||
identity.user.updated:
|
||||
identity.group.created:
|
||||
identity.group.deleted:
|
||||
identity.group.updated:
|
||||
identity.role.created:
|
||||
identity.role.deleted:
|
||||
identity.role.updated:
|
||||
identity.project.created:
|
||||
identity.project.deleted:
|
||||
identity.project.updated:
|
||||
identity.trust.created:
|
||||
identity.trust.deleted:
|
||||
identity.role_assignment.created:
|
||||
identity.role_assignment.deleted:
|
||||
- resource_type: ceph_account
|
||||
metrics:
|
||||
radosgw.objects:
|
||||
radosgw.objects.size:
|
||||
radosgw.objects.containers:
|
||||
radosgw.api.request:
|
||||
radosgw.containers.objects:
|
||||
radosgw.containers.objects.size:
|
||||
- resource_type: instance
|
||||
metrics:
|
||||
memory:
|
||||
memory.usage:
|
||||
memory.resident:
|
||||
memory.swap.in:
|
||||
memory.swap.out:
|
||||
memory.bandwidth.total:
|
||||
memory.bandwidth.local:
|
||||
vcpus:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
cpu:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
cpu_l3_cache:
|
||||
disk.root.size:
|
||||
disk.ephemeral.size:
|
||||
disk.latency:
|
||||
disk.iops:
|
||||
disk.capacity:
|
||||
disk.allocation:
|
||||
disk.usage:
|
||||
compute.instance.booting.time:
|
||||
perf.cpu.cycles:
|
||||
perf.instructions:
|
||||
perf.cache.references:
|
||||
perf.cache.misses:
|
||||
attributes:
|
||||
host: resource_metadata.(instance_host|host)
|
||||
image_ref: resource_metadata.image_ref
|
||||
launched_at: resource_metadata.launched_at
|
||||
created_at: resource_metadata.created_at
|
||||
deleted_at: resource_metadata.deleted_at
|
||||
display_name: resource_metadata.display_name
|
||||
flavor_id: resource_metadata.(instance_flavor_id|(flavor.id)|flavor_id)
|
||||
flavor_name: resource_metadata.(instance_type|(flavor.name)|flavor_name)
|
||||
server_group: resource_metadata.user_metadata.server_group
|
||||
event_delete: compute.instance.delete.start
|
||||
event_attributes:
|
||||
id: instance_id
|
||||
event_associated_resources:
|
||||
instance_network_interface: '{"=": {"instance_id": "%s"}}'
|
||||
instance_disk: '{"=": {"instance_id": "%s"}}'
|
||||
- resource_type: instance_network_interface
|
||||
metrics:
|
||||
network.outgoing.packets:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
network.incoming.packets:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
network.outgoing.packets.drop:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
network.incoming.packets.drop:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
network.outgoing.packets.error:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
network.incoming.packets.error:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
network.outgoing.bytes:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
network.incoming.bytes:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
attributes:
|
||||
name: resource_metadata.vnic_name
|
||||
instance_id: resource_metadata.instance_id
|
||||
- resource_type: instance_disk
|
||||
metrics:
|
||||
disk.device.read.requests:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
disk.device.write.requests:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
disk.device.read.bytes:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
disk.device.write.bytes:
|
||||
archive_policy_name: ceilometer-low-rate
|
||||
disk.device.latency:
|
||||
disk.device.read.latency:
|
||||
disk.device.write.latency:
|
||||
disk.device.iops:
|
||||
disk.device.capacity:
|
||||
disk.device.allocation:
|
||||
disk.device.usage:
|
||||
attributes:
|
||||
name: resource_metadata.disk_name
|
||||
instance_id: resource_metadata.instance_id
|
||||
- resource_type: image
|
||||
metrics:
|
||||
image.size:
|
||||
image.download:
|
||||
image.serve:
|
||||
attributes:
|
||||
name: resource_metadata.name
|
||||
container_format: resource_metadata.container_format
|
||||
disk_format: resource_metadata.disk_format
|
||||
event_delete: image.delete
|
||||
event_attributes:
|
||||
id: resource_id
|
||||
- resource_type: ipmi
|
||||
metrics:
|
||||
hardware.ipmi.node.power:
|
||||
hardware.ipmi.node.temperature:
|
||||
hardware.ipmi.node.inlet_temperature:
|
||||
hardware.ipmi.node.outlet_temperature:
|
||||
hardware.ipmi.node.fan:
|
||||
hardware.ipmi.node.current:
|
||||
hardware.ipmi.node.voltage:
|
||||
hardware.ipmi.node.airflow:
|
||||
hardware.ipmi.node.cups:
|
||||
hardware.ipmi.node.cpu_util:
|
||||
hardware.ipmi.node.mem_util:
|
||||
hardware.ipmi.node.io_util:
|
||||
- resource_type: ipmi_sensor
|
||||
metrics:
|
||||
hardware.ipmi.fan:
|
||||
hardware.ipmi.temperature:
|
||||
hardware.ipmi.current:
|
||||
hardware.ipmi.voltage:
|
||||
attributes:
|
||||
node: resource_metadata.node
|
||||
- resource_type: network
|
||||
metrics:
|
||||
bandwidth:
|
||||
ip.floating:
|
||||
event_delete: floatingip.delete.end
|
||||
event_attributes:
|
||||
id: resource_id
|
||||
- resource_type: stack
|
||||
metrics:
|
||||
stack.create:
|
||||
stack.update:
|
||||
stack.delete:
|
||||
stack.resume:
|
||||
stack.suspend:
|
||||
- resource_type: swift_account
|
||||
metrics:
|
||||
storage.objects.incoming.bytes:
|
||||
storage.objects.outgoing.bytes:
|
||||
storage.objects.size:
|
||||
storage.objects:
|
||||
storage.objects.containers:
|
||||
storage.containers.objects:
|
||||
storage.containers.objects.size:
|
||||
- resource_type: volume
|
||||
metrics:
|
||||
volume:
|
||||
volume.size:
|
||||
snapshot.size:
|
||||
volume.snapshot.size:
|
||||
volume.backup.size:
|
||||
attributes:
|
||||
display_name: resource_metadata.(display_name|name)
|
||||
volume_type: resource_metadata.volume_type
|
||||
image_id: resource_metadata.image_id
|
||||
instance_id: resource_metadata.instance_id
|
||||
event_delete: volume.delete.start
|
||||
event_attributes:
|
||||
id: resource_id
|
||||
- resource_type: volume_provider
|
||||
metrics:
|
||||
volume.provider.capacity.total:
|
||||
volume.provider.capacity.free:
|
||||
volume.provider.capacity.allocated:
|
||||
volume.provider.capacity.provisioned:
|
||||
volume.provider.capacity.virtual_free:
|
||||
- resource_type: volume_provider_pool
|
||||
metrics:
|
||||
volume.provider.pool.capacity.total:
|
||||
volume.provider.pool.capacity.free:
|
||||
volume.provider.pool.capacity.allocated:
|
||||
volume.provider.pool.capacity.provisioned:
|
||||
volume.provider.pool.capacity.virtual_free:
|
||||
attributes:
|
||||
provider: resource_metadata.provider
|
||||
- resource_type: host
|
||||
metrics:
|
||||
hardware.cpu.load.1min:
|
||||
hardware.cpu.load.5min:
|
||||
hardware.cpu.load.15min:
|
||||
hardware.cpu.util:
|
||||
hardware.memory.total:
|
||||
hardware.memory.used:
|
||||
hardware.memory.swap.total:
|
||||
hardware.memory.swap.avail:
|
||||
hardware.memory.buffer:
|
||||
hardware.memory.cached:
|
||||
hardware.network.ip.outgoing.datagrams:
|
||||
hardware.network.ip.incoming.datagrams:
|
||||
hardware.system_stats.cpu.idle:
|
||||
hardware.system_stats.io.outgoing.blocks:
|
||||
hardware.system_stats.io.incoming.blocks:
|
||||
attributes:
|
||||
host_name: resource_metadata.resource_url
|
||||
- resource_type: host_disk
|
||||
metrics:
|
||||
hardware.disk.size.total:
|
||||
hardware.disk.size.used:
|
||||
hardware.disk.read.bytes:
|
||||
hardware.disk.write.bytes:
|
||||
hardware.disk.read.requests:
|
||||
hardware.disk.write.requests:
|
||||
attributes:
|
||||
host_name: resource_metadata.resource_url
|
||||
device_name: resource_metadata.device
|
||||
- resource_type: host_network_interface
|
||||
metrics:
|
||||
hardware.network.incoming.bytes:
|
||||
hardware.network.outgoing.bytes:
|
||||
hardware.network.outgoing.errors:
|
||||
attributes:
|
||||
host_name: resource_metadata.resource_url
|
||||
device_name: resource_metadata.name
|
||||
- resource_type: nova_compute
|
||||
metrics:
|
||||
compute.node.cpu.frequency:
|
||||
compute.node.cpu.idle.percent:
|
||||
compute.node.cpu.idle.time:
|
||||
compute.node.cpu.iowait.percent:
|
||||
compute.node.cpu.iowait.time:
|
||||
compute.node.cpu.kernel.percent:
|
||||
compute.node.cpu.kernel.time:
|
||||
compute.node.cpu.percent:
|
||||
compute.node.cpu.user.percent:
|
||||
compute.node.cpu.user.time:
|
||||
attributes:
|
||||
host_name: resource_metadata.host
|
||||
- resource_type: manila_share
|
||||
metrics:
|
||||
manila.share.size:
|
||||
attributes:
|
||||
name: resource_metadata.name
|
||||
host: resource_metadata.host
|
||||
status: resource_metadata.status
|
||||
availability_zone: resource_metadata.availability_zone
|
||||
protocol: resource_metadata.protocol
|
||||
- resource_type: switch
|
||||
metrics:
|
||||
switch:
|
||||
switch.ports:
|
||||
attributes:
|
||||
controller: resource_metadata.controller
|
||||
- resource_type: switch_port
|
||||
metrics:
|
||||
switch.port:
|
||||
switch.port.uptime:
|
||||
switch.port.receive.packets:
|
||||
switch.port.transmit.packets:
|
||||
switch.port.receive.bytes:
|
||||
switch.port.transmit.bytes:
|
||||
switch.port.receive.drops:
|
||||
switch.port.transmit.drops:
|
||||
switch.port.receive.errors:
|
||||
switch.port.transmit.errors:
|
||||
switch.port.receive.frame_error:
|
||||
switch.port.receive.overrun_error:
|
||||
switch.port.receive.crc_error:
|
||||
switch.port.collision.count:
|
||||
attributes:
|
||||
switch: resource_metadata.switch
|
||||
port_number_on_switch: resource_metadata.port_number_on_switch
|
||||
neutron_port_id: resource_metadata.neutron_port_id
|
||||
controller: resource_metadata.controller
|
||||
- resource_type: port
|
||||
metrics:
|
||||
port:
|
||||
port.uptime:
|
||||
port.receive.packets:
|
||||
port.transmit.packets:
|
||||
port.receive.bytes:
|
||||
port.transmit.bytes:
|
||||
port.receive.drops:
|
||||
port.receive.errors:
|
||||
attributes:
|
||||
controller: resource_metadata.controller
|
||||
- resource_type: switch_table
|
||||
metrics:
|
||||
switch.table.active.entries:
|
||||
attributes:
|
||||
controller: resource_metadata.controller
|
||||
switch: resource_metadata.switch
|
||||
wsgi_ceilometer: |
|
||||
Listen :::{{ tuple "metering" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
|
||||
|
||||
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
|
||||
WSGISocketPrefix /var/run/httpd/wsgi
|
||||
|
||||
<VirtualHost *:{{ tuple "metering" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" }}>
|
||||
LogLevel info
|
||||
WSGIDaemonProcess ceilometer-api processes=2 threads=1 user=ceilometer group=ceilometer display-name=%{GROUP} python-home=/var/lib/openstack socket-user=apache
|
||||
WSGIProcessGroup ceilometer-api
|
||||
|
||||
WSGIScriptReloading On
|
||||
WSGIScriptAlias / /var/lib/kolla/venv/lib/python2.7/site-packages/ceilometer/api/app.wsgi
|
||||
|
||||
WSGIApplicationGroup %{GLOBAL}
|
||||
|
||||
<Directory "/var/lib/kolla/venv/lib/python2.7/site-packages/ceilometer/api">
|
||||
<IfVersion >= 2.4>
|
||||
Require all granted
|
||||
</IfVersion>
|
||||
<IfVersion < 2.4>
|
||||
Order allow,deny
|
||||
Allow from all
|
||||
</IfVersion>
|
||||
</Directory>
|
||||
ErrorLog /dev/stdout
|
||||
CustomLog /dev/stdout combined
|
||||
</VirtualHost>
|
||||
pod:
|
||||
affinity:
|
||||
anti:
|
||||
type:
|
||||
default: requiredDuringSchedulingIgnoredDuringExecution
|
||||
tolerations:
|
||||
ceilometer:
|
||||
enabled: true
|
||||
tolerations:
|
||||
- key: node-role.kubernetes.io/master
|
||||
operator: Exists
|
||||
effect: NoSchedule
|
||||
- key: openstack-compute-node
|
||||
operator: Exists
|
||||
effect: NoSchedule
|
||||
...
|
@ -0,0 +1,41 @@
|
||||
#
|
||||
# Copyright (c) 2022 Wind River Systems, Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
---
|
||||
apiVersion: "helm.toolkit.fluxcd.io/v2beta1"
|
||||
kind: HelmRelease
|
||||
metadata:
|
||||
name: ceilometer
|
||||
labels:
|
||||
chart_group: openstack-ceilometer
|
||||
spec:
|
||||
releaseName: osh-openstack-ceilometer
|
||||
chart:
|
||||
spec:
|
||||
chart: ceilometer
|
||||
version: 0.2.1
|
||||
sourceRef:
|
||||
kind: HelmRepository
|
||||
name: starlingx
|
||||
interval: 5m
|
||||
timeout: 30m
|
||||
test:
|
||||
enable: false
|
||||
install:
|
||||
disableHooks: false
|
||||
upgrade:
|
||||
disableHooks: false
|
||||
dependsOn:
|
||||
- name: horizon
|
||||
namespace: openstack
|
||||
valuesFrom:
|
||||
- kind: Secret
|
||||
name: ceilometer-static-overrides
|
||||
valuesKey: ceilometer-static-overrides.yaml
|
||||
- kind: Secret
|
||||
name: ceilometer-system-overrides
|
||||
valuesKey: ceilometer-system-overrides.yaml
|
||||
...
|
@ -0,0 +1,20 @@
|
||||
#
|
||||
# Copyright (c) 2022 Wind River Systems, Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
---
|
||||
namespace: openstack
|
||||
resources:
|
||||
- helmrelease.yaml
|
||||
secretGenerator:
|
||||
- name: ceilometer-static-overrides
|
||||
files:
|
||||
- ceilometer-static-overrides.yaml
|
||||
- name: ceilometer-system-overrides
|
||||
files:
|
||||
- ceilometer-system-overrides.yaml
|
||||
generatorOptions:
|
||||
disableNameSuffixHash: true
|
||||
...
|
@ -0,0 +1,139 @@
|
||||
#
|
||||
# Copyright (c) 2022 Wind River Systems, Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
---
|
||||
release_group: osh-openstack-gnocchi
|
||||
images:
|
||||
tags:
|
||||
db_init: docker.io/starlingx/stx-gnocchi:master-centos-stable-latest
|
||||
db_init_indexer: docker.io/starlingx/stx-gnocchi:master-centos-stable-latest
|
||||
db_sync: docker.io/starlingx/stx-gnocchi:master-centos-stable-latest
|
||||
gnocchi_api: docker.io/starlingx/stx-gnocchi:master-centos-stable-latest
|
||||
gnocchi_metricd: docker.io/starlingx/stx-gnocchi:master-centos-stable-latest
|
||||
gnocchi_resources_cleaner: docker.io/starlingx/stx-gnocchi:master-centos-stable-latest
|
||||
gnocchi_statsd: docker.io/starlingx/stx-gnocchi:master-centos-stable-latest
|
||||
gnocchi_storage_init: docker.io/openstackhelm/ceph-config-helper:ubuntu_bionic-20201223
|
||||
image_repo_sync: null
|
||||
ks_endpoints: docker.io/starlingx/stx-heat:master-centos-stable-latest
|
||||
ks_service: docker.io/starlingx/stx-heat:master-centos-stable-latest
|
||||
ks_user: docker.io/starlingx/stx-heat:master-centos-stable-latest
|
||||
conf:
|
||||
gnocchi:
|
||||
indexer:
|
||||
driver: mariadb
|
||||
keystone_authtoken:
|
||||
interface: internal
|
||||
auth_uri: http://keystone.openstack.svc.cluster.local:80/v3
|
||||
auth_url: http://keystone.openstack.svc.cluster.local:80/v3
|
||||
apache: |
|
||||
Listen :::{{ tuple "metric" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" }}
|
||||
|
||||
SetEnvIf X-Forwarded-For "^.*\..*\..*\..*" forwarded
|
||||
CustomLog /dev/stdout combined env=!forwarded
|
||||
CustomLog /dev/stdout proxy env=forwarded
|
||||
WSGISocketPrefix /var/run/httpd/wsgi
|
||||
|
||||
<VirtualHost *:{{ tuple "metric" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" }}>
|
||||
WSGIDaemonProcess gnocchi processes=1 threads=2 user=gnocchi group=gnocchi display-name=%{GROUP} python-home=/var/lib/openstack socket-user=apache
|
||||
WSGIProcessGroup gnocchi
|
||||
WSGIScriptAlias / "/var/lib/openstack/bin/gnocchi-api"
|
||||
WSGIApplicationGroup %{GLOBAL}
|
||||
|
||||
ErrorLog /dev/stdout
|
||||
SetEnvIf X-Forwarded-For "^.*\..*\..*\..*" forwarded
|
||||
CustomLog /dev/stdout combined env=!forwarded
|
||||
CustomLog /dev/stdout proxy env=forwarded
|
||||
|
||||
<Directory "/var/lib/openstack/bin">
|
||||
Require all granted
|
||||
</Directory>
|
||||
</VirtualHost>
|
||||
paste:
|
||||
composite:gnocchi+basic:
|
||||
use: egg:Paste#urlmap
|
||||
/: gnocchiversions_pipeline
|
||||
/v1: gnocchiv1+noauth
|
||||
/healthcheck: healthcheck
|
||||
composite:gnocchi+keystone:
|
||||
use: egg:Paste#urlmap
|
||||
/: gnocchiversions_pipeline
|
||||
/v1: gnocchiv1+keystone
|
||||
/healthcheck: healthcheck
|
||||
composite:gnocchi+remoteuser:
|
||||
use: egg:Paste#urlmap
|
||||
/: gnocchiversions_pipeline
|
||||
/v1: gnocchiv1+noauth
|
||||
/healthcheck: healthcheck
|
||||
pipeline:gnocchiv1+noauth:
|
||||
pipeline: gnocchiv1
|
||||
pipeline:gnocchiv1+keystone:
|
||||
pipeline: keystone_authtoken gnocchiv1
|
||||
pipeline:gnocchiversions_pipeline:
|
||||
pipeline: gnocchiversions
|
||||
app:gnocchiversions:
|
||||
paste.app_factory: gnocchi.rest.app:app_factory
|
||||
root: gnocchi.rest.api.VersionsController
|
||||
app:gnocchiv1:
|
||||
paste.app_factory: gnocchi.rest.app:app_factory
|
||||
root: gnocchi.rest.api.V1Controller
|
||||
filter:keystone_authtoken:
|
||||
use: egg:keystonemiddleware#auth_token
|
||||
oslo_config_project: gnocchi
|
||||
app:healthcheck:
|
||||
use: egg:oslo.middleware#healthcheck
|
||||
oslo_config_project: gnocchi
|
||||
pod:
|
||||
affinity:
|
||||
anti:
|
||||
type:
|
||||
default: requiredDuringSchedulingIgnoredDuringExecution
|
||||
tolerations:
|
||||
gnocchi:
|
||||
enabled: true
|
||||
tolerations:
|
||||
- key: node-role.kubernetes.io/master
|
||||
operator: Exists
|
||||
effect: NoSchedule
|
||||
- key: openstack-compute-node
|
||||
operator: Exists
|
||||
effect: NoSchedule
|
||||
dependencies:
|
||||
static:
|
||||
db_sync:
|
||||
jobs:
|
||||
- gnocchi-storage-init
|
||||
- gnocchi-db-init
|
||||
services:
|
||||
- endpoint: internal
|
||||
service: oslo_db
|
||||
metricd:
|
||||
services:
|
||||
- endpoint: internal
|
||||
service: oslo_db
|
||||
- endpoint: internal
|
||||
service: oslo_cache
|
||||
- endpoint: internal
|
||||
service: metric
|
||||
tests:
|
||||
services:
|
||||
- endpoint: internal
|
||||
service: identity
|
||||
- endpoint: internal
|
||||
service: oslo_db
|
||||
- endpoint: internal
|
||||
service: metric
|
||||
manifests:
|
||||
daemonset_statsd: false
|
||||
job_db_init_indexer: false
|
||||
secret_db_indexer: false
|
||||
service_statsd: false
|
||||
endpoints:
|
||||
oslo_cache:
|
||||
hosts:
|
||||
default: memcached
|
||||
identity:
|
||||
force_public_endpoint: true
|
||||
...
|
@ -0,0 +1,41 @@
|
||||
#
|
||||
# Copyright (c) 2022 Wind River Systems, Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
---
|
||||
apiVersion: "helm.toolkit.fluxcd.io/v2beta1"
|
||||
kind: HelmRelease
|
||||
metadata:
|
||||
name: gnocchi
|
||||
labels:
|
||||
chart_group: openstack-gnocchi
|
||||
spec:
|
||||
releaseName: osh-openstack-gnocchi
|
||||
chart:
|
||||
spec:
|
||||
chart: gnocchi
|
||||
version: 0.1.2
|
||||
sourceRef:
|
||||
kind: HelmRepository
|
||||
name: starlingx
|
||||
interval: 5m
|
||||
timeout: 30m
|
||||
test:
|
||||
enable: false
|
||||
install:
|
||||
disableHooks: false
|
||||
upgrade:
|
||||
disableHooks: false
|
||||
dependsOn:
|
||||
- name: horizon
|
||||
namespace: openstack
|
||||
valuesFrom:
|
||||
- kind: Secret
|
||||
name: gnocchi-static-overrides
|
||||
valuesKey: gnocchi-static-overrides.yaml
|
||||
- kind: Secret
|
||||
name: gnocchi-system-overrides
|
||||
valuesKey: gnocchi-system-overrides.yaml
|
||||
...
|
@ -0,0 +1,20 @@
|
||||
#
|
||||
# Copyright (c) 2022 Wind River Systems, Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
---
|
||||
namespace: openstack
|
||||
resources:
|
||||
- helmrelease.yaml
|
||||
secretGenerator:
|
||||
- name: gnocchi-static-overrides
|
||||
files:
|
||||
- gnocchi-static-overrides.yaml
|
||||
- name: gnocchi-system-overrides
|
||||
files:
|
||||
- gnocchi-system-overrides.yaml
|
||||
generatorOptions:
|
||||
disableNameSuffixHash: true
|
||||
...
|
@ -35,4 +35,7 @@ resources:
|
||||
- horizon
|
||||
- dcdbsync
|
||||
- ironic
|
||||
- aodh
|
||||
- ceilometer
|
||||
- gnocchi
|
||||
...
|
||||
|
Loading…
x
Reference in New Issue
Block a user