# Чистка кластеров — 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:
```yaml
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`:
```yaml
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 платформы
