Ответ
Вопрос о "таблицах" в Kubernetes некорректен, так как Kubernetes — это оркестратор контейнеров, а не СУБД. Он оперирует ресурсами (resources), а не таблицами.
На последнем проекте мы активно использовали следующие типы ресурсов Kubernetes для конфигурации и управления приложениями:
- ConfigMaps и Secrets: для хранения конфигурации и чувствительных данных (пароли, токены) отдельно от образов приложений.
- Deployments/StatefulSets: для декларативного описания и развертывания рабочих нагрузок (пода).
- Services и Ingress: для обеспечения сетевого доступа к приложениям.
- PersistentVolumeClaims (PVC): для динамического предоставления постоянного хранилища (например, из облачного блочного хранилища).
- Custom Resource Definitions (CRD): для расширения API Kubernetes под нужды проекта (например, для операторов).
Пример манифеста для ConfigMap:
apiVersion: v1
kind: ConfigMap
metadata:
name: app-config
data:
application.properties: |
server.port=8080
logging.level.root=INFO
Использование этих ресурсов позволяет соблюдать принцип Immutable Infrastructure и практики GitOps, храня все конфигурации в репозитории.