Files
ipwhitelist-app/docs/cluster-cleanup-2026-06-01.md
T

4.0 KiB
Raw Blame History

Чистка кластеров — 01.06.2026

Кластер: iot-naeel (5.172.178.213)

Удалено

Группа Штук Причина
fission-test-* 27 Тестовые Fission namespace-ы с подами. Жрали ~24 CPU limits
fission-* (с хешами) 40 Остатки Fission environment-ов. Сначала удалились, потом воссоздались через CRD — потребовалось удалить CRD environments.fission.io
bench-func-* 6 Пустые bench namespace-ы
testns 1 Пустой тестовый namespace
fission (ядро, helm) 1 helm uninstall fission -n fission
fission-functions 1 Пустой
CRD Fission 8 canaryconfigs, environments, functions, httptriggers, kuberneteswatchtriggers, messagequeuetriggers, packages, timetriggers

Итого удалено: ~84 namespace-а + 8 CRD

Ресурсы после чистки

Нода CPU req CPU limits MEM limits
6f74n 19% 97% 36%
sc8p5 19% 115% 39%
v8zq4 20% 126% 55%

Свободно: ~19 ядер, ~41 Gi памяти


Кластер: naeel-test-3 (185.247.187.146)

Удалено

Группа Штук Причина
sless-fn-cmp-op-* 20 Пустые namespace-ы, 52 дня
sless-fn-test001 1 SQS test, воссоздавался через queueservice.sqs.kube5s.ru CRD — удалили CRD test-tenant-001
sless-fn-test002 1 Пустой
sless-16367aacb67a4a01 1 Пустой
sless-fn-timing-ts 1 SQS timing. Удалён CRD test-tenant-timing-ts + namespace
sless 1 IoT платформа (Kafka OOMKilled, 100 рестартов)
shared-sqs 1 SQS consumer
sqs-operator-system 1 SQS оператор
1dbfe9da-... 1 RabbitMQ managed

Починено: metrics-server

Проблема: 0/1 Ready 70 дней. Три бага платформы shturval:

  1. TLS: kubelet-сертификаты без IP SANs → --kubelet-insecure-tls
  2. readOnlyRootFilesystem: не может создать /apiserver.local.config--cert-dir=/tmp + volumeMount: /tmp
  3. runAsNonRoot 1000: порт 443 недоступен → --secure-port=4443 + пробы HTTP:4443 + сервис targetPort: 4443

Итоговый deployment metrics-server:

args:
  - --kubelet-insecure-tls
  - --kubelet-preferred-address-types=InternalIP
  - --cert-dir=/tmp
  - --secure-port=4443
volumeMounts:
  - mountPath: /tmp
    name: tmp-dir
volumes:
  - name: tmp-dir
    emptyDir: {}
readinessProbe:
  httpGet:
    path: /readyz
    port: 4443
    scheme: HTTP
livenessProbe:
  httpGet:
    path: /livez
    port: 4443
    scheme: HTTP

Service metrics-server:

ports:
  - port: 443
    targetPort: 4443

Lucee

  • Задеплоен в namespace 3d7657ee-... → 1/1 Ready
  • Домен: lucee-mfysayo333 (ошибка была lucee-mysayo333)
  • Платформа: naeel-test-3
  • git: https://github.com/xahys/testlucee
  • jsonEnv: оставлен пустым (формат KEY=VALUE, не JSON)

Ресурсы после чистки (worker-ноды, 12 ядер total)

Нода CPU req MEM req
vxzch 6% 7%
wwqj2 30% 25%
zxnb4 37% 29%

Важные уроки

  1. Fission: Недостаточно kubectl delete ns — нужно сначала удалить CRD environments, иначе poolmgr воссоздаст namespace
  2. SQS operator: Недостаточно удалить namespace — нужно удалить CRD queueservice в sqs-operator-system
  3. Удаление с finalizer: Зависшие Terminating форсировать через kubectl replace --raw /api/v1/namespaces/$ns/finalize
  4. metrics-server от shturval: Имеет три бага из коробки, несовместим с security policy платформы