Сообщение Почему кубернетес такой многословный? от 24.11.2022 20:13
Изменено 24.11.2022 20:14 vsb
Почему кубернетес такой многословный?
Всем он мне нравится. Ну почти. По крайней мере негатива почти ничего не вызывает, что нынче для меня редкость.
Но вот ямл-файлы это нечто...
Простейший сервис с минимальной конфигурацией:
```
apiVersion: apps/v1
kind: Deployment
metadata:
name: backend
spec:
selector:
matchLabels:
app.kubernetes.io/name: backend
template:
metadata:
labels:
app.kubernetes.io/name: backend
spec:
containers:
— name: smartecg-backend
image: registry.gitlab.com/bla/backend:1.5.6
ports:
— containerPort: 8080
env:
— name: SERVER_URL
value: http://keycloak/auth
— name: CLIENT_SECRET
valueFrom:
secretKeyRef:
key: idp-client-secret
name: backend
---
apiVersion: v1
kind: Service
metadata:
name: backend
spec:
selector:
app.kubernetes.io/name: backend
ports:
— port: 80
targetPort: 8080
name: http
```
Вот аналогичный по смыслу кусок из докер-композа (я чуть-чуть сымпровизировал):
```
services:
backend:
image: registry.gitlab.com/bla/backend:1.5.6
ports:
— 80:8080
environment:
SERVER_URL: http://keycloak/auth
CLIENT_SECRET: ${secrets:backend/idp-client-secret}
```
вместо 38 строк — 8 и немного соглашений по умолчанию (к примеру для каждого деплоймента создаём сервис).
Так и чешутся руки генерировать это всё из какого-нибудь jsonnet-а. Но зачем изначально так было делать, вот чего не пойму.
Но вот ямл-файлы это нечто...
Простейший сервис с минимальной конфигурацией:
```
apiVersion: apps/v1
kind: Deployment
metadata:
name: backend
spec:
selector:
matchLabels:
app.kubernetes.io/name: backend
template:
metadata:
labels:
app.kubernetes.io/name: backend
spec:
containers:
— name: smartecg-backend
image: registry.gitlab.com/bla/backend:1.5.6
ports:
— containerPort: 8080
env:
— name: SERVER_URL
value: http://keycloak/auth
— name: CLIENT_SECRET
valueFrom:
secretKeyRef:
key: idp-client-secret
name: backend
---
apiVersion: v1
kind: Service
metadata:
name: backend
spec:
selector:
app.kubernetes.io/name: backend
ports:
— port: 80
targetPort: 8080
name: http
```
Вот аналогичный по смыслу кусок из докер-композа (я чуть-чуть сымпровизировал):
```
services:
backend:
image: registry.gitlab.com/bla/backend:1.5.6
ports:
— 80:8080
environment:
SERVER_URL: http://keycloak/auth
CLIENT_SECRET: ${secrets:backend/idp-client-secret}
```
вместо 38 строк — 8 и немного соглашений по умолчанию (к примеру для каждого деплоймента создаём сервис).
Так и чешутся руки генерировать это всё из какого-нибудь jsonnet-а. Но зачем изначально так было делать, вот чего не пойму.
Почему кубернетес такой многословный?
Всем он мне нравится. Ну почти. По крайней мере негатива почти ничего не вызывает, что нынче для меня редкость.
Но вот ямл-файлы это нечто...
Простейший сервис с минимальной конфигурацией:
Вот аналогичный по смыслу кусок из докер-композа (я чуть-чуть сымпровизировал):
вместо 38 строк — 8 и немного соглашений по умолчанию (к примеру для каждого деплоймента создаём сервис).
Так и чешутся руки генерировать это всё из какого-нибудь jsonnet-а. Но зачем изначально так было делать, вот чего не пойму.
Может им там в гугле за строки платят?
Но вот ямл-файлы это нечто...
Простейший сервис с минимальной конфигурацией:
apiVersion: apps/v1
kind: Deployment
metadata:
name: backend
spec:
selector:
matchLabels:
app.kubernetes.io/name: backend
template:
metadata:
labels:
app.kubernetes.io/name: backend
spec:
containers:
- name: smartecg-backend
image: registry.gitlab.com/bla/backend:1.5.6
ports:
- containerPort: 8080
env:
- name: SERVER_URL
value: http://keycloak/auth
- name: CLIENT_SECRET
valueFrom:
secretKeyRef:
key: idp-client-secret
name: backend
---
apiVersion: v1
kind: Service
metadata:
name: backend
spec:
selector:
app.kubernetes.io/name: backend
ports:
- port: 80
targetPort: 8080
name: http
Вот аналогичный по смыслу кусок из докер-композа (я чуть-чуть сымпровизировал):
services:
backend:
image: registry.gitlab.com/bla/backend:1.5.6
ports:
- 80:8080
environment:
SERVER_URL: http://keycloak/auth
CLIENT_SECRET: ${secrets:backend/idp-client-secret}
вместо 38 строк — 8 и немного соглашений по умолчанию (к примеру для каждого деплоймента создаём сервис).
Так и чешутся руки генерировать это всё из какого-нибудь jsonnet-а. Но зачем изначально так было делать, вот чего не пойму.
Может им там в гугле за строки платят?