АС
Size: a a a
АС
АС
АС
I
АС
I
АС
I
JS
JS
JR
АС
--arg-name, либо читает их из переменных вида BRIDGE_ARG_NAME. Список аргументов можно получить зайдя в контейнер и сделав в нем /opt/bridge/bin/bridge --help.bearer-token режиме бридж ждет на вход строку с токеном SA, от имени которого он будет обращаться в API кубика. Невырвиглазного способа получить токен из секрета с рандомным именем, который создается при создании SA, не получилось. Ну да, @amatyhin предложил рабочий способ - обернуть запуск бриджа в sh, и спосооб рабочий, но выглядит костыль-костылём. По итогу я психанул и просто создаю для SA дополнительный секрет с токеном с заведомо известным именем, и вот из него уже токен подом читается отлично.АС
instance писать хостнейм ноды, а не IP-адрес (как это у меня), поэтому если вам тоже не повезло, то нодэкспортера нужно сделать релейблинг (у меня прометей деплоится через helm оператором, поэтому здесь и далее все примеры оттуда):nodeExporter:Так же, нужно запилить 4 правила для метрик, которые консоль пытается читать из прометеуса:
serviceMonitor:
relabelings:
- sourceLabels:
- __meta_kubernetes_pod_node_name
separator: ;
regex: ^(.*)$
targetLabel: instance
replacement: $1
action: replace
additionalPrometheusRulesMap:ВАЖНОЕ: прометеус и алертменеджер должны работать без опции
openshift-console:
groups:
- name: openshift-console
rules:
- expr: sum(rate(container_cpu_usage_seconds_total{pod=~".+", job="kubelet"}[1m])) by (pod, namespace)
record: pod:container_cpu_usage:sum
- expr: sum by(pod, namespace) (rate(container_fs_usage_bytes{job="kubelet",pod=~".+"}[1m]))
record: pod:container_fs_usage_bytes:sum
- expr: >-
sum by(label_beta_kubernetes_io_instance_type, label_node_role_kubernetes_io) (
(
cluster:master_nodes
* on(node) group_left() max by(node)
(
kube_node_status_capacity_cpu_cores
)
)
or on(node) (
max without(endpoint, instance, job, pod, service)
(
kube_node_labels
) * on(node) group_left() max by(node)
(
kube_node_status_capacity_cpu_cores
)
)
)
record: cluster:capacity_cpu_cores:sum
- expr: sum(1 - rate(node_cpu_seconds_total{mode="idle"}[2m]) * on(namespace, pod) group_left(node) node_namespace_pod:kube_pod_info:{pod=~".*node-exporter.+"})
record: cluster:cpu_usage_cores:sum
routePrefix, потому как если вы передадите бриджу эндпоинт прометеуса в виде http://prometheus-operated.monitoring:9090/prometheus например, то бридж его превратит в http://prometheus-operated.monitoring:9090/api - угу, я перелопатил весь этот GOвнокодАС
JR