2.4 KiB
2.4 KiB
k8s 🔧
Кратко: Kubernetes‑манифесты для namespace terra — развёртывание registry-server, terraform-operator, Ingress, TLS и связанные ресурсы (S3, CRD, builder ConfigMap).
Важные файлы
00-namespace.yaml— namespaceterra00-rbac.yaml— RBAC для оператора02-crd.yaml— CRD для операторов (ProviderRelease)03-build-script.yaml— ConfigMap для сборщика Job'ов04-operator-deployment.yaml— Deployment для оператора05-registry-server.yaml,06-registry-server-docs.yaml— Deployment, Service и Ingress дляregistry-server
Как перенести на новый домен (коротко) ✅
- Ingress: в манифесте (обычно
05-*илиregistry-ingress) заменитьhost: terra.k8c.ruна новый домен и убедиться в корректной аннотацииcert-manager.io/cluster-issuer(или задать другойsecretName). - Certificate: cert-manager автоматически выпустит/обновит TLS; проверьте
kubectl -n terra get certificate registry-tls -o yamlи дождитесьstatus.conditions[*].type == Ready. - Deployment env: заменить
REGISTRY_HOSTNAMEв04-operator-deployment.yamlи вregistry-serverна новый домен. - DNS: добавить A/CNAME запись для нового домена, указывающую на IP балансировщика (
kubectl -n terra get ingress registry-ingress -o jsonpath='{.status.loadBalancer.ingress[0].ip}'). - Secrets & storage: используйте
s3-credentials(S3_ENDPOINT/S3_ACCESS_KEY/S3_SECRET_KEY) и убедитесь в доступности S3. - Apply & Verify:
kubectl apply -f manifests/kubectl -n terra describe ingress registry-ingresskubectl -n terra get certificate registry-tlscurl -vk https://<domain>/docs/<namespace>/<name>/<version>/
Проверки (read-only)
kubectl -n terra get ingress,svc,deploy,po,secretkubectl -n terra get certificate registry-tls -o yamlkubectl -n terra logs <registry-pod>
Примечание: это инструкция для операции вручную/CI; я ничего не меняю в кластере автоматически.