k8s Ingress с Kong - приложение и настройка плагина через cURL против YAML

Я пытаюсь использовать плагин Kong для настройки входящего трафика k8s. В частности, я использую контроллер Kong Ingress и плагин request-transformer-advanced (Ссылка: https://docs.konghq.com/hub/stone-payments/kong-plugin-url-rewrite/)

На странице плагина Kong (ссылка выше) обсуждается установка и настройка плагина с использованием URL-вызовов с полезными данными. Однако большая часть конфигурации k8s, с которой я знаком, через YAML (например, https://kubernetes.io/docs/concepts/services-networking/ingress/)

Можно ли настроить плагины Kong через YAML? На некоторых сторонних сайтах упоминаются такие конфигурации:

apiVersion: configuration.konghq.com/v1
kind: KongPlugin
metadata:
  name: deploymentname187
config:
  config.replace.uri: /
plugin: kong-plugin-url-rewrite

Что лучше всего подходит для плагинов Kong - URL-адреса или приложение YAML?

2 ответа

На странице плагина Kong обсуждается установка и настройка плагина с использованием URL-вызовов с полезными данными. Однако большая часть конфигурации k8s, с которой я знаком, через YAML.

Я просматривал руководство по установке Kong, и в нем указано, что:

Настроить Kong для Kubernetes очень просто:$ kubectl apply -f http://.../all-in-one-dbless.yaml

Так что технически здесь мы просто получаем простой файл YAML из их репо.

В результате несколько Custom Resource Definitions установлены (со всем необходимым, например namespace, так далее). В частности, там описаны следующие CRD:

apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: kongplugins.configuration.konghq.com
spec:
...
  names:
    kind: KongPlugin

Можно ли настроить плагины Kong также через YAML?

После установки плагина вы можете декларативно управлять конфигурацией. Точно так же, как указано на странице плагина Kong, на которую вы ссылались:

Включение плагина в декларативном сервисе (YAML) Например, настройте этот плагин в сервисе, добавив этот раздел в свой декларативный файл конфигурации:

plugins:
- name: kong-plugin-url-rewrite
service: <service>
config: 
  url: http://new-url.com

<service> это id или name Службы, на которую будет нацелена эта конфигурация плагина.

Ваш следующий вопрос очень основан на мнении.

Что лучше всего подходит для плагинов Kong - URL-вызовы или приложение YAML?

как сказал WantIt, вы можете установить через kubectl -f URL или kubectl -f local_YAML результат будет таким же (если URL содержит тот же YAML).

Это зависит. Если вы храните конфигурацию конга и другие сущности конга в Kubernetes через репозиторий, тогда имеет смысл использовать файлы YAML.

С другой стороны, если вы устанавливаете Kong, вручную вызывая kubectl apply -f, вы можете продолжить работу с URL.

Другие вопросы по тегам