Удалить пространство имен из службы и имя хоста модуля (fqdn) - PullRequest
0 голосов
/ 22 октября 2018

Я развертываю отдельный кластер Kubernetes для каждого жизненного цикла, т. Е. Один кластер для dev и отдельный кластер для производства, и буду использовать пространства имен только для логического разделения приложения на основе этой задачи, например, все базы данных в пространстве имен данных, приложение пользовательского интерфейса в пространстве имен веби т. д.

Из-за этой конструкции не требуется иметь пространства имен в службе или полное доменное имя модуля, поскольку каждая служба и развертывание будут уникальными.Может ли кто-нибудь подсказать, как я могу удалить пространства имен из имени хоста, например, если в пространстве имен по умолчанию есть служба с именем my-service, я бы хотел разрешить службу из другого пространства имен, используя "my-service.svc.cluster.local" вместо "my-service.default.svc.cluster.local "

Я использую kubernetes 1.10 и использую coreDNS.

Ответы [ 3 ]

0 голосов
/ 22 октября 2018

Модули и служебные ресурсы расположены в пространстве имен.Таким образом, вы не можете сделать их без пространства имен.

[iahmad@ijaz00]$ kubectl api-resources --namespaced=true
NAME                        SHORTNAMES   APIGROUP                    NAMESPACED   KIND
bindings                                                             true         Binding
configmaps                  cm                                       true         ConfigMap
endpoints                   ep                                       true         Endpoints
events                      ev                                       true         Event
limitranges                 limits                                   true         LimitRange
persistentvolumeclaims      pvc                                      true         PersistentVolumeClaim
pods                        po                                       true         Pod
podtemplates                                                         true         PodTemplate
replicationcontrollers      rc                                       true         ReplicationController
resourcequotas              quota                                    true         ResourceQuota
secrets                                                              true         Secret
serviceaccounts             sa                                       true         ServiceAccount
services                    svc                                      true         Service
controllerrevisions                      apps                        true         ControllerRevision
daemonsets                  ds           apps                        true         DaemonSet
deployments                 deploy       apps                        true         Deployment
replicasets                 rs           apps                        true         ReplicaSet
statefulsets                sts          apps                        true         StatefulSet
localsubjectaccessreviews                authorization.k8s.io        true         LocalSubjectAccessReview
horizontalpodautoscalers    hpa          autoscaling                 true         HorizontalPodAutoscaler
cronjobs                    cj           batch                       true         CronJob
jobs                                     batch                       true         Job
stacks                                   compose.docker.com          true         Stack
events                      ev           events.k8s.io               true         Event
daemonsets                  ds           extensions                  true         DaemonSet
deployments                 deploy       extensions                  true         Deployment
ingresses                   ing          extensions                  true         Ingress
networkpolicies             netpol       extensions                  true         NetworkPolicy
replicasets                 rs           extensions                  true         ReplicaSet
alertmanagers                            monitoring.coreos.com       true         Alertmanager
prometheuses                             monitoring.coreos.com       true         Prometheus
prometheusrules                          monitoring.coreos.com       true         PrometheusRule
servicemonitors                          monitoring.coreos.com       true         ServiceMonitor
networkpolicies             netpol       networking.k8s.io           true         NetworkPolicy
poddisruptionbudgets        pdb          policy                      true         PodDisruptionBudget
rolebindings                             rbac.authorization.k8s.io   true         RoleBinding
roles                                    rbac.authorization.k8s.io   true         Role
0 голосов
/ 22 октября 2018

Если вы используете стандартную конфигурацию DNS с CoreDNS или KubeDNS, вы не можете изменить ее, как описано в других ответах.

Однако вы можете изменить DNS с помощью StubDomain и инструмент обнаружения услуг.Одним из наиболее популярных из них является Консул и . Здесь описано, как настроить домен-заглушку с ним .

Обратите внимание, что вам, скорее всего, придется запустить Консул.кластер в Kubernetes если не сервер, то вам наверняка понадобится консоль агента консула для ваших модулей.

0 голосов
/ 22 октября 2018

вы не можете, это не то, как устроен kubernetes.Вы можете вызывать его с помощью my-service, хотя вы находитесь в одном и том же пространстве имен

...