Управляемый сервис NATS

NATS — это простая, безопасная и высокопроизводительная система обмена сообщениями с открытым исходным кодом. Она предоставляет уровень данных для облачных (cloud native) приложений, обмена сообщениями IoT и микросервисных архитектур.

storageClass помечен как неизменяемый (immutable) в схеме чарта — см. docs/storage-immutability.md, где описан этот контракт и какие потребители его обеспечивают.

Параметры

Общие параметры

ИмяОписаниеТипЗначение
replicasКоличество реплик.int2
resourcesЯвная конфигурация CPU и памяти для каждой реплики NATS. Если не задано, применяется пресет, указанный в resourcesPreset.object{}
resources.cpuCPU, доступный каждой реплике.quantity""
resources.memoryПамять (RAM), доступная каждой реплике.quantity""
resourcesPresetПресет размера по умолчанию, используемый, когда resources не задан.stringt1.nano
storageClassStorageClass, используемый для хранения данных.string""
externalВключить внешний доступ извне кластера.boolfalse
tlsКонфигурация TLS. Если не задано, TLS следует значению флага external.object{}
tls.enabledВключить TLS. Если не задано, TLS включается автоматически, когда external равен true.*boolnull

Параметры, специфичные для приложения

ИмяОписаниеТипЗначение
usersКарта конфигурации пользователей.map[string]object{}
users[name].passwordПароль пользователя.string""
jetstreamКонфигурация Jetstream.object{}
jetstream.enabledВключить или отключить Jetstream для постоянного обмена сообщениями в NATS.booltrue
jetstream.sizeРазмер постоянного хранилища Jetstream.quantity10Gi
configКонфигурация NATS.object{}
config.mergeДополнительная конфигурация для слияния с конфигурацией NATS.*object{}
config.resolverДополнительная конфигурация resolver для слияния с конфигурацией NATS.*object{}

Примеры и справочник по параметрам

resources и resourcesPreset

resources задаёт явные конфигурации CPU и памяти для каждой реплики. Если оставить пустым, применяется пресет, указанный в resourcesPreset.

resources:
  cpu: 4000m
  memory: 4Gi

resourcesPreset задаёт именованные конфигурации CPU и памяти для каждой реплики. Эта настройка игнорируется, если задано соответствующее значение resources.

Пресеты следуют облачной схеме именования <серия>.<размер>. Пять серий покрывают весь диапазон соотношений CPU к памяти (t1 1:0.5, c1 1:1, s1 1:2, u1 1:4, m1 1:8), и каждая серия поставляется с восемью размерами (от nano до 4xlarge). Устаревшие плоские имена (nano, micro, small, medium, large, xlarge, 2xlarge) по-прежнему принимаются как устаревшие псевдонимы соответствующих типов инстансов с соотношением 1:1.

См. docs/operations/resource-presets.md, где приведены полная матрица размеров и сопоставление устаревших имён с типами инстансов.