Ограничение размера Kubernetes ConfigMap - PullRequest
0 голосов
/ 26 октября 2018

Хотя resourceQuotas может ограничивать количество конфигурационных карт в пространстве имен, есть ли такая опция для ограничения размера отдельного конфигурационного файла? Я не хочу, чтобы какой-то пользователь начал загружать большие текстовые файлы в виде конфигурационных карт.

Каков максимальный размер поддержки ConfigMap etcd? Если на стороне etcd есть разумный лимит, тогда все будет хорошо.

Ответы [ 2 ]

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

На момент написания этой статьи не существует жестких ограничений для объектов ConfigMap или Secret.

Однако существует ограничение в 1 МБ со стороны и т.д. , где Kubernetes хранит свои объекты.

Со стороны API, если вы действительно видите API code и тип ConfigMap, вы увидите, что его поле data является картой строк Golang, так что это кажется связанным с памятью и управляемым во время выполнения, если где-то еще это не определено с make().Технически, максимальный размер для количества ключей на хэш-карте - это длина карты, равная int, а максимальное значение объясняется здесь: Максимальное количество элементов в карте .Это также будет теоретическим пределом для значения данных в качестве максимального значения для len(string).

Если вы действительно хотите получить больше информации со стороны API, где kube-apiserver получает protobufs (или JSON дляэто важно) вы можете взглянуть на максимальный размер google protobuf .Это даст вам некоторую меру в отношении ограничения отправки поля data по проводам.Может быть и другое ограничение самого kube-apiserver, когда дело касается обработки любого большого сообщения.

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

Карты конфигурации до даты подпадают под квоту подсчета объектов. Вы можете установить максимальное количество конфигурационных карт. Вы не можете ограничить размер отдельной карты конфигурации. Поскольку они еще не включены в квоту ресурсов хранилища.

https://kubernetes.io/docs/concepts/policy/resource-quotas/

...