1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/knative-docs

Клонировать/Скачать
any-kubernetes-cluster.md 38 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 27.05.2025 06:04 d330922
title weight type aliases
Установка Knative
6
docs
/docs/install/knative-with-any-k8s
/docs/install/knative-with-aks
/docs/install/knative-with-ambassador
/docs/install/knative-with-contour
/docs/install/knative-with-docker-for-mac
/docs/install/knative-with-gke
/docs/install/knative-with-gardener
/docs/install/knative-with-gloo
/docs/install/knative-with-icp
/docs/install/knative-with-iks
/docs/install/knative-with-microk8s
/docs/install/knative-with-minikube
/docs/install/knative-with-minishift
/docs/install/knative-with-pks

Этот гайд поможет вам установить последнюю версию Knative. Обратите внимание, если вы обновляете существующую установку, следуйте инструкциям здесь.

Knative состоит из двух компонентов, которые могут быть установлены и использованы независимо или вместе. Чтобы помочь вам выбрать и выбрать те части, которые подходят для вас, вот краткое описание каждого:

  • Serving {{< feature-state version="v0.9" state="стабильный" short=true >}} предоставляет абстракцию для безсостоятельных сервисов, основанных на запросах, с возможностью масштабирования до нуля.
  • Eventing {{< feature-state version="v0.16" state="стабильный" short=true >}} предоставляет абстракции для привязки источников событий (например, веб-хуки GitHub, Kafka) и потребителей (например, Kubernetes или Knative Services).Knative также имеет плагин Observability {{< feature-state version="v0.14" state="устаревший" short=true >}}, который предоставляет стандартные инструменты, которые можно использовать для получения видимости в состояние работы программного обеспечения на Knative.## Перед началом

Этот гайд предполагает, что вы хотите установить выпуск Knative с открытого источника на кластере Kubernetes. Увеличивающееся количество поставщиков имеют управляемые предложения Knative; см. страницу Предложения Knative для полного списка.

Knative {{< version >}} требует кластер Kubernetes версии 1.16 или выше, а также совместимого kubectl. Этот гайд предполагает, что вы уже создали кластер Kubernetes, и что вы используете bash в окружении Mac или Linux; некоторые команды потребуют корректировки для использования в окружении Windows.

Установка компонента Serving

{{< feature-state version="v0.9" state="стабильный" >}}

Следующие команды устанавливают компонент Knative Serving.

  1. Установите Custom Resource Definitions (сокращенно CRDs):

    kubectl apply --filename {{< artifact repo="serving" file="serving-crds.yaml" >}}
  2. Установите основные компоненты Serving (см. ниже для опциональных расширений):

    kubectl apply --filename {{< artifact repo="serving" file="serving-core.yaml" >}}
  3. Выберите уровень сетевого взаимодействия (в алфавитном порядке):

    {{< tabs name="serving_networking" default="Istio" >}} {{% tab name="Ambassador" %}}{{% feature-state version="v0.8" state="альфа" %}}

Следующие команды устанавливают Ambassador и включают его интеграцию с Knative.

  1. Создайте пространство имен для установки Ambassador:

    kubectl create namespace ambassador
  2. Установите Ambassador:

    kubectl apply --namespace ambassador \
      --filename https://getambassador.io/yaml/ambassador/ambassador-crds.yaml \
      --filename https://getambassador.io/yaml/ambassador/ambassador-rbac.yaml \
      --filename https://getambassador.io/yaml/ambassador/ambassador-service.yaml
  3. Предоставьте Ambassador необходимые разрешения:

    kubectl patch clusterrolebinding ambassador -p '{"subjects":[{"kind": "ServiceAccount", "name": "ambassador", "namespace": "ambassador"}]}'
  4. Включите поддержку Knative в Ambassador:

    kubectl set env --namespace ambassador deployments/ambassador AMBASSADOR_KNATIVE_SUPPORT=true
  5. Чтобы настроить Knative Serving для использования Ambassador по умолчанию:

    kubectl patch configmap/config-network \
      --namespace knative-serving \
      --type merge \
      --patch '{"data":{"ingress.class":"ambassador.ingress.networking.knative.dev"}}'
  6. Получите внешний IP-адрес или CNAME:

    kubectl --namespace ambassador get service ambassador

    Сохраните это для конфигурации DNS ниже.

{{< /tab >}}

{{% tab name="Contour" %}}

{{% feature-state version="v0.17" state="бета" %}}

Следующие команды устанавливают Contour и включают его интеграцию с Knative.

  1. Установите правильно настроенный Contour:

    kubectl apply --filename {{< artifact repo="net-contour" file="contour.yaml" >}}
  2. Установите контроллер Knative Contour:

    kubectl apply --filename {{< artifact repo="net-contour" file="net-contour.yaml" >}}
    ```1. Чтобы настроить Knative Serving для использования Contour по умолчанию:
    
    ```bash
    kubectl patch configmap/config-network \
      --namespace knative-serving \
      --type merge \
      --patch '{"data":{"ingress.class":"contour.ingress.networking.knative.dev"}}'
  3. Получите внешний IP-адрес или CNAME:

    kubectl --namespace contour-external get service envoy

    Сохраните это для конфигурации DNS ниже.

{{< /tab >}}

{{% tab name="Gloo" %}}

{{% feature-state version="v0.8" state="alpha" %}}

Для подробного руководства по интеграции Gloo см. Установка Gloo для Knative в документации Gloo.

Следующие команды устанавливают Gloo и включают его интеграцию с Knative.

  1. Убедитесь, что установлен glooctl (рекомендуется версия 1.3.x и выше):

    glooctl version

    Если он не установлен, вы можете установить последнюю версию с помощью:

    curl -sL https://run.solo.io/gloo/install | sh
    export PATH=$HOME/.gloo/bin:$PATH

    Или следуя руководству по установке CLI для Gloo.

  2. Установите Gloo и интеграцию с Knative:

    glooctl install knative --install-knative=false
  3. Получите внешний IP-адрес или CNAME:

    glooctl proxy url --name knative-external-proxy

    Сохраните это для конфигурации DNS ниже.

{{< /tab >}}

{{% tab name="Istio" %}}

{{% feature-state version="v0.9" state="stable" %}}

Следующие команды устанавливают Istio и включают его интеграцию с Knative.

  1. Установка Istio для Knative

{{< /tab >}}1. Установите контроллер Knative Istio:

kubectl apply --filename {{< artifact repo="net-istio" file="release.yaml" >}}
  1. Получите внешний IP-адрес или CNAME:

    kubectl --namespace istio-system get service istio-ingressgateway

    Сохраните это для настройки DNS ниже.

{{< /tab >}}

{{% tab name="Kong" %}}

{{% feature-state version="v0.13" state="" %}}

Следующие команды устанавливают Kong и включают его интеграцию с Knative.

  1. Установите Kong Ingress Controller:

    kubectl apply --filename https://raw.githubusercontent.com/Kong/kubernetes-ingress-controller/0.9.x/deploy/single/all-in-one-dbless.yaml
  2. Чтобы настроить Knative Serving для использования Kong по умолчанию:

    kubectl patch configmap/config-network \
      --namespace knative-serving \
      --type merge \
      --patch '{"data":{"ingress.class":"kong"}}'
  3. Получите внешний IP-адрес или CNAME:

    kubectl --namespace kong get service kong-proxy

    Сохраните это для настройки DNS ниже.

{{< /tab >}}

{{% tab name="Kourier" %}}

{{% feature-state version="v0.17" state="beta" %}}

Следующие команды устанавливают Kourier и включают его интеграцию с Knative.

  1. Установите контроллер Knative Kourier:

    kubectl apply --filename {{< artifact repo="net-kourier" file="kourier.yaml" >}}
  2. Чтобы настроить Knative Serving для использования Kourier по умолчанию:

    kubectl patch configmap/config-network \
      --namespace knative-serving \
      --type merge \
      --patch '{"data":{"ingress.class":"kourier.ingress.networking.knative.dev"}}'
  3. Получите внешний IP-адрес или CNAME:

    kubectl --namespace kourier-system get service kourier

    Сохраните это для настройки DNS ниже.

{{< /tab >}}

  1. Настройка DNS

    {{< tabs name="serving_dns" >}} {{% tab name="Magic DNS (xip.io)" %}} Мы предоставляем простую Kubernetes Job под названием "default domain", которая (см. примечания) настроит Knative Serving для использования xip.io как стандартного суффикса DNS.

kubectl apply --filename {{< artifact repo="serving" file="serving-default-domain.yaml" >}}

Внимание: Это будет работать только в том случае, если кластерный сервис LoadBalancer выдает IPv4-адрес или хостнейм, поэтому это не будет работать с кластерами IPv6 или локальными установками, такими как Minikube. Для этих случаев см. "Реальное DNS" или "Временное DNS". {{< /tab >}}

{{% tab name="Реальное DNS" %}} Для настройки DNS для Knative возьмите внешний IP-адрес или CNAME из настройки сетевого уровня и настройте его с помощью вашего провайдера DNS следующим образом:

  • Если сетевой уровень выдал внешний IP-адрес, то настройте универсальный A-запись для домена:

    # Здесь knative.example.com — это доменное суффиксное имя для вашего кластера
    *.knative.example.com == A 35.233.41.212
  • Если сетевой уровень выдал CNAME, то настройте запись CNAME для домена:

    # Здесь knative.example.com — это доменное суффиксное имя для вашего кластера
    *.knative.example.com == CNAME a317a278525d111e89f272a164fd35fb-1510370581.eu-central-1.elb.amazonaws.com

После настройки вашего провайдера DNS направьте Knative использовать этот домен:```bash

Замените knative.example.com на ваше доменное суффиксное имя

kubectl patch configmap/config-domain
--namespace knative-serving
--type merge
--patch '{"data":{"knative.example.com":""}}'


{{< /tab >}}

{{% tab name="Временное DNS" %}} Если вы используете `curl` для доступа к образцовым приложениям или к вашему собственному приложению Knative и не можете использовать методы "Магического DNS (xip.io)" или "Реального DNS", есть временный подход. Это полезно для тех, кто хочет оценить Knative без изменения своей конфигурации DNS, как в методе "Реальное DNS", или не может использовать метод "Магического DNS" из-за использования, например, локальной установки Minikube или кластеров IPv6.

Чтобы получить доступ к вашему приложению с помощью `curl` с использованием этого метода:

1. После запуска вашего приложения получите URL вашего приложения:

   ```bash
   kubectl get ksvc

Выходные данные должны быть похожи на:

NAME            URL                                        LATESTCREATED         LATESTREADY           READY   REASON
helloworld-go   http://helloworld-go.default.example.com   helloworld-go-vqjlf   helloworld-go-vqjlf   True
  1. Укажите curl на подключение к внешнему IP-адресу или CNAME, определенным сетевым слоем в разделе 3 выше, и используйте параметр командной строки -H "Host:", чтобы указать имя хоста приложения Knative. Например, если сетевой слой определяет ваш внешний IP-адрес и порт как http://192.168.39.228:32198 и вы хотите получить доступ к вышеупомянутому приложению helloworld-go, используйте:

    curl -H "Host: helloworld-go.default.example.com" http://192.168.39.228:32198
    ```   В случае использования образца приложения `helloworld-go` вывод,
    используя конфигурацию по умолчанию, должен быть следующим:
    

    Hello Go Sample v1!

См. метод "Real DNS" для постоянного решения.

{{< /tab >}}

{{< /tabs >}}

  1. Мониторьте компоненты Knative до тех пор, пока все компоненты не покажут статус STATUS, равный Running или Completed:

    kubectl get pods --namespace knative-serving

На этом этапе у вас есть базовая установка Knative Serving!

Опциональные расширения Serving

{{< tabs name="serving_extensions" >}} {{% tab name="HPA автоскалинг" %}}

{{% feature-state version="v0.8" state="beta" %}}

Knative также поддерживает использование Kubernetes Horizontal Pod Autoscaler (HPA) для принятия решений об автоскалинге. Следующая команда установит компоненты, необходимые для поддержки автоскалинга класса HPA:

kubectl apply --filename {{< artifact repo="serving" file="serving-hpa.yaml" >}}

{{< /tab >}}

{{% tab name="TLS с cert-manager" %}}

{{% feature-state version="v0.6" state="alpha" %}}

Knative поддерживает автоматическое выдачу сертификатов TLS через cert-manager. Следующие команды установят компоненты, необходимые для поддержки выдачи сертификатов TLS через cert-manager.

  1. Сначала установите версию cert-manager 0.12.0 или выше

  2. Затем установите компонент, который интегрирует Knative с cert-manager:

    kubectl apply --filename {{< artifact repo="net-certmanager" file="release.yaml" >}}
    ```3. Теперь настройте Knative для [автоматической настройки сертификатов TLS](../serving/using-auto-tls.md).
    {{< /tab >}}
    

{{% tab name="TLS через HTTP01" %}}

{{% feature-state version="v0.14" state="alpha" %}}

Knative поддерживает автоматическое получение сертификатов TLS с использованием Let's Encrypt HTTP01 challenge. Следующие команды установят компоненты, необходимые для поддержки этого.

  1. Сначала установите контроллер net-http01:

    kubectl apply --filename {{< artifact repo="net-http01" file="release.yaml" >}}
  2. Далее настройте certificate.class для использования этого типа сертификата.

    kubectl patch configmap/config-network \
      --namespace knative-serving \
      --type merge \
      --patch '{"data":{"certificate.class":"net-http01.certificate.networking.knative.dev"}}'
  3. Наконец, включите автоматическое TLS.

    kubectl patch configmap/config-network \
      --namespace knative-serving \
      --type merge \
      --patch '{"data":{"autoTLS":"Enabled"}}'

{{< /tab >}}

{{% tab name="Поддержка дикого картофеля TLS" %}}

{{% feature-state version="v0.12" state="alpha" %}}

Если вы используете реализацию сертификата, поддерживающую выдачу дикого картофеля сертификатов (например, cert-manager с DNS01 издателем), то наиболее эффективным способом выдачи сертификатов является использование контроллера сертификатов для пространства имен. Следующая команда установит компоненты, необходимые для выдачи дикого картофеля сертификатов в каждом пространстве имен:

kubectl apply --filename {{< artifact repo="serving" file="serving-nscert.yaml" >}}
```> Примечание: это не будет работать с HTTP01, как с cert-manager, так и с опциями net-http01.

{{< /tab >}} {{< /tabs >}}

### Начало работы с Serving

Разверните ваш первый приложение с помощью
[руководства по началу работы с развертыванием приложений Knative](../serving/getting-started-knative-app.md).
Вы также можете найти несколько примеров для Knative Serving
[здесь](../serving/samples/).

## Установка компонента Eventing

{{< feature-state version="v0.16" state="стабильный" >}}

Следующие команды устанавливают компонент Knative Eventing.

1. Установите
   [Custom Resource Definitions](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/)
   (также известные как CRDs):

   ```bash
   kubectl apply --filename {{< artifact repo="eventing" file="eventing-crds.yaml" >}}
  1. Установите основные компоненты Eventing (см. ниже для опциональных расширений):

    kubectl apply --filename {{< artifact repo="eventing" file="eventing-core.yaml" >}}

    Примечание: Если ваш кластер Kubernetes поставляется с предустановленным Istio, убедитесь, что он имеет cluster-local-gateway установлен. В зависимости от версии Istio, вам потребуется применить istio-knative-extras.yaml в соответствующей версии папки [здесь](https://github.com/knative/serving/tree/{{< branch >}}/third_party).

  2. Установите стандартный слой Channel (канал сообщений) (по алфавиту).

    {{< tabs name="eventing_channels" default="In-Memory (standalone)" >}} {{% tab name="Apache Kafka Channel" %}}1. Сначала, Установите Apache Kafka для Kubernetes

  3. Затем установите канал Apache Kafka:

    curl -L "{{< artifact repo="eventing-contrib" file="kafka-channel.yaml" >}}" \
     | sed 's/REPLACE_WITH_CLUSTER_URL/my-cluster-kafka-bootstrap.kafka:9092/' \
     | kubectl apply --filename -

Для получения дополнительной информации о канале Apache Kafka попробуйте наш пример

{{< /tab >}}

{{% tab name="Google Cloud Pub/Sub Channel" %}}

  1. Установите канал Google Cloud Pub/Sub:

    # Это устанавливает как канал, так и источники GCP.
    kubectl apply --filename {{< artifact org="google" repo="knative-gcp" file="cloud-run-events.yaml" >}}

Для получения дополнительной информации о канале Google Cloud Pub/Sub попробуйте наш пример

{{< /tab >}}

{{% tab name="In-Memory (standalone)" %}}

{{< feature-state version="v0.16" state="stable" >}}

Следующая команда устанавливает реализацию канала, которая работает в памяти. Эта реализация хороша тем, что она проста и автономна, но она не подходит для использования в производственных целях.

kubectl apply --filename {{< artifact repo="eventing" file="in-memory-channel.yaml" >}}

{{< /tab >}}

{{% tab name="NATS Channel" %}}

  1. Сначала, [Установите NATS Streaming для Kubernetes](https://github.com/knative/eventing-contrib/blob/{{< version >}}/natss/config/broker/README.md)

  2. Затем установите канал NATS Streaming:

    kubectl apply --filename {{< artifact repo="eventing-contrib" file="natss-channel.yaml" >}}

{{< /tab >}}

{{< /tabs >}}
  1. Установите слой Broker (eventing):

    {{< tabs name="eventing_brokers" default="MT-Channel-based" >}} {{% tab name="Apache Kafka Broker" %}} {{< feature-state version="v0.17" state="alpha" >}} Следующая команда устанавливает Apache Kafka брокер и выполняет маршрутизацию событий в системном пространстве имен knative-eventing, по умолчанию.

kubectl apply --filename {{< artifact org="knative-sandbox" repo="eventing-kafka-broker" file="eventing-kafka-broker.yaml" >}}

Для получения дополнительной информации см. документацию по Kafka Broker. {{< /tab >}}

{{% tab name="MT-Channel-based" %}} {{< feature-state version="v0.16" state="stable" >}} Следующая команда устанавливает реализацию Broker, которая использует Channels и запускает компоненты маршрутизации событий в пространстве имен System, обеспечивая более компактную и простую установку.

kubectl apply --filename {{< artifact repo="eventing" file="mt-channel-broker.yaml" >}}

Для настройки используемой реализации брокера канала обновите следующий ConfigMap, чтобы указать, какие конфигурации используются для каких пространств имен:yaml apiVersion: v1 kind: ConfigMap metadata: name: config-br-defaults namespace: knative-eventing data: default-br-config: | # Это кластерное по умолчанию значение для брокера канала. clusterDefault: brokerClass: MTChannelBasedBroker apiVersion: v1 kind: ConfigMap name: imc-channel namespace: knative-eventing # Это позволяет вам указать разные значения по умолчанию для каждого пространства имен, # в данном случае пространство имен "some-namespace" будет использовать конфигурацию канала Kafka по умолчанию (только для примера, вам потребуется установить Kafka для использования этого). namespaceDefaults: some-namespace: brokerClass: MTChannelBasedBroker apiVersion: v1 kind: ConfigMap name: kafka-channel namespace: knative-eventing Примеры ConfigMap imc-channel и kafka-channel будут выглядеть следующим образом:

apiVersion: v1
kind: ConfigMap
metadata:
  name: imc-channel
  namespace: knative-eventing
data:
  channelTemplateSpec: |
    apiVersion: messaging.knative.dev/v1
    kind: InMemoryChannel
---
apiVersion: v1
kind: ConfigMap
metadata:
  name: kafka-channel
  namespace: knative-eventing
data:
  channelTemplateSpec: |
    apiVersion: messaging.knative.dev/v1alpha1
    kind: KafkaChannel
    spec:
      numPartitions: 3
      replicationFactor: 1

Для использования KafkaChannel убедитесь, что он установлен на кластере, как обсуждалось выше.

{{< /tab >}}{{< /tabs >}}

  1. Ожидайте, пока все компоненты Knative покажут статус STATUS равный Running:

    kubectl get pods --namespace knative-eventing

На этом этапе у вас есть базовая установка Knative Eventing!

Опциональные расширения Eventing

{{< tabs name="eventing_extensions" >}} {{% tab name="Sugar Controller" %}}

{{< feature-state version="v0.16" state="alpha" >}}

Следующая команда устанавливает Eventing Sugar Controller:

kubectl apply --filename {{< artifact repo="eventing" file="eventing-sugar-controller.yaml" >}}

Knative Eventing Sugar Controller реагирует на специальные метки и аннотации и создает ресурсы Eventing. Например:

  • Когда Namespace помечен меткой eventing.knative.dev/injection=enabled, контроллер создает по умолчанию брокер в этом Namespace.
  • Когда Trigger аннотирован eventing.knative.dev/injection=enabled, контроллер создает брокер с именем, соответствующим этому Trigger, в Namespace триггера.

Следующая команда включает по умолчанию брокер в Namespace (например, default):```bash kubectl label namespace default eventing.knative.dev/injection=enabled


{{< /tab >}}

{{% tab name="Github Source" %}}

{{< feature-state version="v0.2" state="alpha" >}}

Следующая команда устанавливает однопользовательский GitHub источник:

```bash
kubectl apply --filename {{< artifact repo="eventing-contrib" file="github.yaml" >}}

Однопользовательский GitHub источник создает один Knative сервис на каждый GitHub источник.

Следующая команда устанавливает многопользовательский GitHub источник:

kubectl apply --filename {{< artifact repo="eventing-contrib" file="mt-github.yaml" >}}

Многопользовательский GitHub источник создает только один Knative сервис, обрабатывающий все GitHub источники в кластере. Этот источник еще не поддерживает конфигурацию логирования или трассировки.

Для получения дополнительной информации о GitHub источнике попробуйте наш пример

{{< /tab >}}

{{% tab name="Apache Camel-K Source" %}} {{< feature-state version="v0.5" state="alpha" >}}

Следующая команда устанавливает Apache Camel-K Source:

kubectl apply --filename {{< artifact repo="eventing-contrib" file="camel.yaml" >}}

Для получения дополнительной информации о исходном коде Apache Camel-K, попробуйте наш пример

{{< /tab >}}

{{% tab name="Apache Kafka Source" %}}

{{< feature-state version="v0.5" state="alpha" >}}

Следующая команда устанавливает Apache Kafka Source:

kubectl apply --filename {{< artifact repo="eventing-contrib" file="kafka-source.yaml" >}}

Для получения дополнительной информации о исходном коде Apache Kafka, попробуйте наш пример{{< /tab >}}

{{% tab name="GCP Sources" %}}

{{< feature-state version="v0.2" state="alpha" >}}

Следующая команда устанавливает GCP Sources:

# Эта команда устанавливает как Sources, так и Channel.
kubectl apply --filename {{< artifact org="google" repo="knative-gcp" file="cloud-run-events.yaml" >}}

Для получения дополнительной информации о исходном коде Cloud Pub/Sub, попробуйте наш пример.

Для получения дополнительной информации о исходном коде Cloud Storage, попробуйте наш пример.

Для получения дополнительной информации о исходном коде Cloud Scheduler, попробуйте наш пример.

Для получения дополнительной информации о исходном коде Cloud Audit Logs, попробуйте наш пример.

{{< /tab >}}

{{% tab name="Apache CouchDB Source" %}}

{{< feature-state version="v0.10" state="alpha" >}}

Следующая команда устанавливает Apache CouchDB Source:

kubectl apply --filename {{< artifact repo="eventing-contrib" file="couchdb.yaml" >}}

Для получения дополнительной информации о исходном коде Apache CouchDB, прочитайте [нашу документацию]((https://github.com/knative/eventing-contrib/blob/{{< version >}}/couchdb/README.md))

{{< /tab >}}

{{% tab name="VMware Sources and Bindings" %}}

{{< feature-state version="v0.14" state="alpha" >}}

Следующая команда устанавливает VMware Sources and Bindings:

kubectl apply --filename {{< artifact org="vmware-tanzu" repo="sources-for-knative" file="release.yaml" >}}

Для получения дополнительной информации о исходных кодах и связях VMware, попробуйте наши примеры. {{< /tab >}}

{{< /tabs >}}

Начало работы с Eventing

Вы можете найти множество примеров для Knative Eventing здесь. Быстрый старт доступен здесь.

Установка плагина Observability

{{< feature-state version="v0.14" state="deprecated" >}}

Установите следующие функции Observability для включения логирования, метрик и отслеживания запросов в ваших компонентах Serving и Eventing.

Все плагины Observability требуют установки ядра:

kubectl apply --filename {{< artifact repo="serving" file="monitoring-core.yaml" >}}

После установки ядра, вы можете выбрать установку одного или всех следующих плагинов Observability:

  • Установите Prometheus и Grafana для метрик:

    kubectl apply --filename {{< artifact repo="serving" file="monitoring-metrics-prometheus.yaml" >}}
  • Установите ELK стек (Elasticsearch, Logstash и Kibana) для логирования:

    kubectl apply --filename {{< artifact repo="serving" file="monitoring-logs-elasticsearch.yaml" >}}
  • Установите Jaeger для распределённого трассирования

    {{< tabs name="jaeger" default="In-Memory (standalone)" >}} {{% tab name="In-Memory (standalone)" %}} Чтобы установить версию in-memory (standalone) Jaeger, выполните следующую команду:

kubectl apply --filename {{< artifact repo="serving" file="monitoring-tracing-jaeger-in-mem.yaml" >}}
```{{< /tab >}}

{{% tab name="ELK стек" %}} Чтобы установить версию ELK Jaeger (требуется установка ELK выше), выполните следующую команду:

```bash
kubectl apply --filename {{< artifact repo="serving" file="monitoring-tracing-jaeger.yaml" >}}

{{< /tab >}} {{< /tabs >}}

  • Установите Zipkin для распределённого трассирования

    {{< tabs name="zipkin" default="In-Memory (standalone)" >}} {{% tab name="In-Memory (standalone)" %}} Чтобы установить версию in-memory (standalone) Zipkin, выполните следующую команду:```bash kubectl apply --filename {{< artifact repo="serving" file="monitoring-tracing-zipkin-in-mem.yaml" >}}


{{< /tab >}}

{{% tab name="ELK стек" %}} Для установки версии ELK Zipkin (необходима установка ELK выше), выполните следующую команду:

```bash
kubectl apply --filename {{< artifact repo="serving" file="monitoring-tracing-zipkin.yaml" >}}

{{< /tab >}} {{< /tabs >}}

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/knative-docs.git
git@api.gitlife.ru:oschina-mirror/knative-docs.git
oschina-mirror
knative-docs
knative-docs
master