title | weight | type |
---|---|---|
Настройка пользовательского домена |
55 |
docs |
По умолчанию, маршруты Knative Serving используют example.com
в качестве домена по умолчанию. Полное доменное имя для маршрута по умолчанию имеет вид {route}.{namespace}.{default-domain}
.
Чтобы изменить значение {default-domain}
, необходимо выполнить несколько шагов:
Редактируйте конфигурационный файл config-map, заменив example.com
на свой собственный домен, например mydomain.com
:
kubectl edit cm config-domain --namespace knative-serving
Этот командный запрос откроет вашу стандартную текстовую редактор и позволит вам редактировать конфигурационный файл.
apiVersion: v1
data:
_example: |
################################
# #
# EXAMPLE CONFIGURATION #
# #
################################
# ...
example.com: |
kind: ConfigMap
Редактируйте файл, заменив example.com
на домен, который вы хотите использовать, удалите ключ _example
и сохраните изменения. В этом примере мы настраиваем mydomain.com
для всех маршрутов:
apiVersion: v1
data:
mydomain.com: ""
kind: ConfigMap
[...]
Вы также можете применить обновленную конфигурацию домена:
Создайте новый файл config-domain.yaml
и вставьте следующий текст, заменив значения example.org
и example.com
на новый домен, который вы хотите использовать: ```yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: config-domain
namespace: knative-serving
data:
example.org: | selector: app: prod
example.com: ""
Примените обновленную конфигурацию домена к вашему кластеру:
kubectl apply --filename config-domain.yaml
Если у вас уже есть развернутое приложение, Knative примет изменения, внесенные в карту конфигурации, и автоматически обновит имя хоста для всех развернутых сервисов и маршрутов.
Разверните приложение (например,
helloworld-go
), в вашем кластере как обычно. Вы можете получить URL в маршруте Knative "helloworld-go" с помощью следующей команды:
kubectl get route helloworld-go --output jsonpath="{.status.url}"
Вы должны увидеть полное настроенное доменное имя: helloworld-go.default.mydomain.com
.
И вы можете проверить IP-адрес вашего шлюза Knative, выполнив:
export INGRESSGATEWAY=istio-ingressgateway
if kubectl get configmap config-istio -n knative-serving &> /dev/null; then
export INGRESSGATEWAY=istio-ingressgateway
fi
kubectl get svc $INGRESSGATEWAY --namespace istio-system --output jsonpath="{.status.loadBalancer.ingress[*]['ip']}"
```## Локальная настройка DNS
Вы можете отобразить доменное имя на IP-адрес вашего шлюза Knative на вашем локальном компьютере с помощью:
```shell
INGRESSGATEWAY=istio-ingressgateway
export GATEWAY_IP=`kubectl get svc $INGRESSGATEWAY --namespace istio-system --output jsonpath="{.status.loadBalancer.ingress[*]['ip']}"`
# helloworld-go — это сгенерированный маршрут Knative для образца "helloworld-go".
# Вам нужно заменить его на свой собственный маршрут в вашем проекте.
export DOMAIN_NAME=`kubectl get route helloworld-go --output jsonpath="{.status.url}" | cut -d'/' -f 3`
# Добавьте запись IP-адреса шлюза и доменного имени в файл "/etc/hosts"
echo -e "$GATEWAY_IP\t$DOMAIN_NAME" | sudo tee -a /etc/hosts
Теперь вы можете получить доступ к вашему доменному имени через браузер на вашем компьютере и выполнить некоторые быстрые проверки.
Следуйте этим шагам, чтобы сделать ваш домен общедоступным:
Вы можете установить статический IP для вашего шлюза Knative, чтобы IP-адрес шлюза не изменялся каждый раз при перезапуске кластера.
Чтобы опубликовать ваш домен, вам нужно обновить вашего поставщика DNS, чтобы он указывал на IP-адрес вашего шлюза.- Создайте запись с диким символом для пространства имен и пользовательского домена, указывающую на IP-адрес шлюза, что позволит использовать имена хостов для нескольких сервисов в одном пространстве имен без необходимости создания дополнительных записей DNS. ```dns *.default.mydomain.com 59 IN A 35.237.28.44
```dns
helloworld-go.default.mydomain.com 59 IN A 35.237.28.44
Если вы используете Google Cloud DNS, вы можете найти пошаговые инструкции в разделе быстрого старта Cloud DNS.
После того как обновление домена распространилось, вы сможете получить доступ к вашему приложению, используя полностью квалифицированное доменное имя развернутого маршрута, например http://helloworld-go.default.mydomain.com
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )