Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision | ||
devops:kubernetes [2022/01/14 09:07] – [Распределить поды деплоймента по разным нодам кластера] admin | devops:kubernetes [2022/03/24 15:20] – [Headless Services для Stafullset] admin | ||
---|---|---|---|
Line 940: | Line 940: | ||
https:// | https:// | ||
+ | Following the normal practice of having a single Service point to all instances of your application doesn’t work when you want to query a specific instance directly. This is already handled internally with the Headless Service you create alongside the StatefulSet. The created ervice will not be given a clusterIP, but will instead simply include a list of Endpoints. These Endpoints are then used to generate instance-specific DNS records in the form of: < | ||
+ | |||
+ | Обычно сервисы используются в k8s для доступа ко всем рпликам сервиса, | ||
+ | Что такое **Statefullset** - это способ создать набор именованных реплик сервиса, | ||
+ | Что такое **Headless Service** - это сервис, | ||
+ | < | ||
+ | например: | ||
+ | app-0.myapp.default.svc.cluster.local. | ||
+ | Вопрос - а как же можно опубликовать именованную реплику в составе Statefullset' | ||
+ | Все просто - каждый под, управляеый Statefullset' | ||
+ | < | ||
+ | kind: Service | ||
+ | metadata: | ||
+ | name: app-0 | ||
+ | spec: | ||
+ | type: LoadBalancer | ||
+ | selector: | ||
+ | statefulset.kubernetes.io/ | ||
+ | ports: | ||
+ | - protocol: TCP | ||
+ | port: 80 | ||
+ | targetPort: 80</ | ||
+ | |||
+ | ====== Как скопировать секрет из одного неймспейса в другой ====== | ||
+ | kubectl get secret my-tlssecret --namespace=nginx-ns -o yaml | sed ' |