<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://doc.ruscomtech.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9A%D0%BB%D1%8E%D1%87-%D0%90%D0%A1%D0%A2%D0%A0%D0%9E%D0%9C_Operator</id>
	<title>Ключ-АСТРОМ Operator - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://doc.ruscomtech.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9A%D0%BB%D1%8E%D1%87-%D0%90%D0%A1%D0%A2%D0%A0%D0%9E%D0%9C_Operator"/>
	<link rel="alternate" type="text/html" href="https://doc.ruscomtech.ru/index.php?title=%D0%9A%D0%BB%D1%8E%D1%87-%D0%90%D0%A1%D0%A2%D0%A0%D0%9E%D0%9C_Operator&amp;action=history"/>
	<updated>2026-05-11T20:28:08Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.36.1</generator>
	<entry>
		<id>https://doc.ruscomtech.ru/index.php?title=%D0%9A%D0%BB%D1%8E%D1%87-%D0%90%D0%A1%D0%A2%D0%A0%D0%9E%D0%9C_Operator&amp;diff=5941&amp;oldid=prev</id>
		<title>IKuznetsov: Новая страница: «== Operator == Ключ-АСТРОМ '''Operator''' управляет автоматизированным развертыванием, настройкой и...»</title>
		<link rel="alternate" type="text/html" href="https://doc.ruscomtech.ru/index.php?title=%D0%9A%D0%BB%D1%8E%D1%87-%D0%90%D0%A1%D0%A2%D0%A0%D0%9E%D0%9C_Operator&amp;diff=5941&amp;oldid=prev"/>
		<updated>2025-11-14T16:03:01Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «== Operator == Ключ-АСТРОМ &amp;#039;&amp;#039;&amp;#039;Operator&amp;#039;&amp;#039;&amp;#039; управляет автоматизированным развертыванием, настройкой и...»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Operator ==&lt;br /&gt;
Ключ-АСТРОМ '''Operator''' управляет автоматизированным развертыванием, настройкой и жизненным циклом компонентов Ключ-АСТРОМ. Он использует специальные ресурсы, такие как '''DynaKube''' и '''EdgeConnect'''.&lt;br /&gt;
&lt;br /&gt;
Функциональность Ключ-АСТРОМ '''Operator''' привязана к настраиваемым ресурсам. Эти ресурсы определяют, какие функции включены. При создании настраиваемого ресурса Ключ-АСТРОМ '''Operator''' запускает начальную сверку, чтобы гарантировать достижение желаемого состояния. Процесс сверки регулярно обнаруживает изменения в кластере и соответствующим образом корректирует состояние. Частота сверки снижается после первоначального развертывания, поскольку обычно вносится меньше изменений.&lt;br /&gt;
&lt;br /&gt;
При запуске Ключ-АСТРОМ '''Operator''' регистрирует вебхук в '''Kubernetes''' '''API'''. В ходе каждого цикла согласования Ключ-АСТРОМ '''Operator''' проверяет изменения в пользовательских ресурсах, чтобы:&lt;br /&gt;
&lt;br /&gt;
* Обновить статус пользовательских ресурсов&lt;br /&gt;
* Убедиться, что первоначальный запуск управляемых компонентов соответствует требованиям&lt;br /&gt;
* Управлять рабочими нагрузками&lt;br /&gt;
* Регистрировать компоненты на сервере Ключ-АСТРОМ&lt;br /&gt;
&lt;br /&gt;
Эта функциональность ограничена пространством имен, в котором развернут Ключ-АСТРОМ '''Operator'''.&lt;br /&gt;
&lt;br /&gt;
Пространства имен, отслеживаемые Ключ-АСТРОМ '''Operator''', следует настраивать следующим образом:&lt;br /&gt;
&lt;br /&gt;
* Пометьте пространства имен в соответствии с &amp;lt;code&amp;gt;namespaceSelector&amp;lt;/code&amp;gt;, чтобы веб-перехватчик мог использовать модули.&lt;br /&gt;
* Убедитесь, что в внедряемых пространствах имен существуют предварительные условия для внедрения.&lt;br /&gt;
&lt;br /&gt;
=== Требования к ресурсам ===&lt;br /&gt;
Конфигурация по умолчанию:&lt;br /&gt;
&lt;br /&gt;
* 1 реплика на кластер&lt;br /&gt;
&lt;br /&gt;
Обычно достаточно одной реплики Ключ-АСТРОМ '''Operator''', поскольку происходит выбор лидера. Дополнительные реплики активируются только после завершения текущего лидера и выбора нового.&lt;br /&gt;
&lt;br /&gt;
Контейнер Ключ-АСТРОМ '''Operator''' имеет предопределенные запросы и ограничения на использование процессора и памяти. Чтобы настроить эти значения во время развертывания с помощью '''Helm''', отредактируйте файл &amp;lt;code&amp;gt;values.yaml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Конфигурация ресурсов с помощью Helm&amp;lt;/u&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|operator:&lt;br /&gt;
&lt;br /&gt;
  requests:&lt;br /&gt;
&lt;br /&gt;
    cpu: 50m&lt;br /&gt;
&lt;br /&gt;
    memory: 64Mi&lt;br /&gt;
&lt;br /&gt;
  limits:&lt;br /&gt;
&lt;br /&gt;
    cpu: 100m&lt;br /&gt;
&lt;br /&gt;
    memory: 128Mi&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Разрешения и привилегии ===&lt;br /&gt;
Полный список ресурсов, к которым обращается Ключ-АСТРОМ '''Operator''', доступен в документации по безопасности. Сетевой трафик и его характеристики описаны в документации по сетевому трафику .&lt;br /&gt;
&lt;br /&gt;
== Вебхук ==&lt;br /&gt;
Веб-хук Ключ-АСТРОМ изменяет определения '''Pod''' для внедрения модулей кода Ключ-АСТРОМ для обеспечения видимости приложения. Он также проверяет определения '''DynaKube''' и преобразует '''DynaKubes''' со старыми версиями '''API'''.&lt;br /&gt;
&lt;br /&gt;
Конфигурации веб-хуков управляются Ключ-АСТРОМ '''Operator''' и периодически обновляются. Эти обновления гарантируют бесперебойную работу '''Kubernetes API''' с веб-хуком.&lt;br /&gt;
&lt;br /&gt;
=== Ключевые функции ===&lt;br /&gt;
&lt;br /&gt;
* '''Изменения''' '''Pod'''. Веб-перехватчик изменяет '''Pod''', изменяя их определения и включая необходимые метаданные для обеспечения наблюдаемости приложения.&lt;br /&gt;
** Присоединяет контейнер '''Init''' для загрузки (в случае, если драйвер '''CSI''' не используется) и настраивает модули кода при запуске '''Pod'''.&lt;br /&gt;
** Присоединяет тома '''CSI''', если они настроены, чтобы драйвер '''CSI''' мог управлять созданием томов.&lt;br /&gt;
** Изменяет определения '''Pod''' для обогащения метаданных.&lt;br /&gt;
* Мутация пространства имен. Веб-перехватчик изменяет пространства имен, чтобы обеспечить мониторинг модулей внутри этих пространств имен.&lt;br /&gt;
** Добавляет метки к пространствам имен, чтобы веб-перехватчик мог прослушивать события &amp;lt;code&amp;gt;CREATE&amp;lt;/code&amp;gt; '''Pod'''.  Конфигурации веб-перехватчиков поддерживают только статический селектор пространств имён. Требуемая метка добавляется к вновь создаваемым пространствам имён.&lt;br /&gt;
* Проверка конфигурации&lt;br /&gt;
** Проверьте, содержат ли пользовательские ресурсы, такие как '''DynaKubes''', допустимую конфигурацию при их создании или обновлении.&lt;br /&gt;
*** Различная проверка в зависимости от полей: некоторые из них обязательны, а некоторые должны соответствовать более конкретным правилам.&lt;br /&gt;
** Предоставлять полезные предупреждения/сообщения об ошибках в случае неудачной проверки  Проверьте параметры '''DynaKube''' и параметры '''EdgeConnect''' для получения более подробной информации по каждому полю!&lt;br /&gt;
* Конвертация между версиями&lt;br /&gt;
** Обеспечивает совместимость между различными версиями определений пользовательских ресурсов.&lt;br /&gt;
** Преобразует старые версии пользовательского ресурса в версию хранилища, понятную Ключ-АСТРОМ '''Operator'''.&lt;br /&gt;
&lt;br /&gt;
=== Требования к ресурсам ===&lt;br /&gt;
Конфигурация по умолчанию:&lt;br /&gt;
&lt;br /&gt;
* 2 реплики на кластер (можно масштабировать для повышения доступности)&lt;br /&gt;
&lt;br /&gt;
В контейнере Ключ-АСТРОМ '''Webhook''' определены запросы и ограничения по умолчанию. Если вы хотите задать другие запросы или ограничения ресурсов, это можно сделать при развертывании Ключ-АСТРОМ '''Operator''' с помощью '''Helm'''.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Конфигурация ресурсов с помощью '''Helm'''&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Чтобы установить ограничения ресурсов, измените &amp;lt;code&amp;gt;values.yaml&amp;lt;/code&amp;gt;. См. конфигурацию по умолчанию ниже.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|webhook:&lt;br /&gt;
&lt;br /&gt;
  requests:&lt;br /&gt;
&lt;br /&gt;
    cpu: 300m&lt;br /&gt;
&lt;br /&gt;
    memory: 128Mi&lt;br /&gt;
&lt;br /&gt;
  limits:&lt;br /&gt;
&lt;br /&gt;
    cpu: 300m&lt;br /&gt;
&lt;br /&gt;
    memory: 128Mi&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Разрешения и привилегии ===&lt;br /&gt;
Полный список ресурсов, к которым обращается вебхук, можно найти в разделе [[Безопасность Ключ-АСТРОМ Operator]]. &lt;br /&gt;
&lt;br /&gt;
== CSI-драйвер ==&lt;br /&gt;
Драйвер Ключ-АСТРОМ '''Operator''' '''CSI''' предоставляет модули кода Ключ-АСТРОМ для модулей приложений, минимизируя при этом использование хранилища и нагрузку на среду Ключ-АСТРОМ. Кроме того, он предоставляет записываемое томное хранилище для ЕдиногоАгента, использующее [https://kubernetes-csi.github.io/docs/ephemeral-local-volumes.html временные локальные тома]﻿.&lt;br /&gt;
&lt;br /&gt;
* Для конфигураций &amp;lt;code&amp;gt;applicationMonitoring&amp;lt;/code&amp;gt; он предоставляет необходимый двоичный файл ЕдиногоАгента для мониторинга приложений в модулях на каждом узле в качестве монтирования только для чтения.&lt;br /&gt;
* Для конфигураций &amp;lt;code&amp;gt;hostMonitoring&amp;lt;/code&amp;gt; он предоставляет доступную для записи папку для конфигураций ЕдиногоАгента, когда используется файловая система хоста, доступная только для чтения.&lt;br /&gt;
* Для &amp;lt;code&amp;gt;cloudNativeFullStack&amp;lt;/code&amp;gt;, он обеспечивает оба вышеперечисленных преимущества.&lt;br /&gt;
&lt;br /&gt;
Минимизирует количество загрузок, загружая модули кода один раз на каждый узел и сохраняя их в файловой системе узла.&lt;br /&gt;
&lt;br /&gt;
* При использовании драйвера '''CSI''' внедрение 100 модулей, распределенных по трем узлам, приведет всего к 3 загрузкам модулей кода.&lt;br /&gt;
* Без драйвера '''CSI''' каждому '''Pod''' пришлось бы загружать собственные модули кода, поэтому внедрение 100 '''Pod''' привело бы к загрузке 100 модулей кода.&lt;br /&gt;
&lt;br /&gt;
Минимизирует использование хранилища за счет сохранения модулей кода в файловой системе узла и создания монтирования [https://docs.kernel.org/filesystems/overlayfs.html OverlayFs]﻿ для каждого внедренного '''Pod'''.&lt;br /&gt;
&lt;br /&gt;
* При использовании драйвера '''CSI''' внедрение 100 модулей, распределенных по трем узлам, приведет к хранению всего лишь 3 модулей кода.&lt;br /&gt;
* Без драйвера '''CSI''' каждый '''Pod''' хранит модуль кода, поэтому внедрение 100 Pod приведет к хранению 100 модулей кода.&lt;br /&gt;
&lt;br /&gt;
=== Требования к ресурсам ===&lt;br /&gt;
Конфигурация по умолчанию:&lt;br /&gt;
&lt;br /&gt;
* 1 реплика на узел (развертывается через '''DaemonSet''')&lt;br /&gt;
&lt;br /&gt;
У поставщика драйвера '''CSI''' нет предопределенных ограничений ресурсов. Однако, если вы хотите установить ограничения ресурсов или изменить их для других контейнеров драйвера '''CSI''', это можно сделать при развертывании Ключ-АСТРОМ '''Operator''' с помощью '''Helm'''.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Конфигурация ресурсов с помощью Helm&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Чтобы установить ограничения ресурсов для контейнера &amp;lt;code&amp;gt;provisioner&amp;lt;/code&amp;gt;, измените &amp;lt;code&amp;gt;values.yaml&amp;lt;/code&amp;gt;. См. пример конфигурации ниже.&lt;br /&gt;
&lt;br /&gt;
* Увеличьте загрузку ЦП для ускорения распаковки и установки модулей кода (важно для быстрого запуска и инициализации узла)&lt;br /&gt;
* Увеличение памяти не влияет на производительность&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|provisioner:&lt;br /&gt;
&lt;br /&gt;
  resources:&lt;br /&gt;
&lt;br /&gt;
    requests:&lt;br /&gt;
&lt;br /&gt;
      cpu: 300m&lt;br /&gt;
&lt;br /&gt;
      memory: 100Mi&lt;br /&gt;
&lt;br /&gt;
    limits:&lt;br /&gt;
&lt;br /&gt;
      cpu: 300m&lt;br /&gt;
&lt;br /&gt;
      memory: 100Mi&lt;br /&gt;
&lt;br /&gt;
server:&lt;br /&gt;
&lt;br /&gt;
  resources:&lt;br /&gt;
&lt;br /&gt;
    requests:&lt;br /&gt;
&lt;br /&gt;
      cpu: 50m&lt;br /&gt;
&lt;br /&gt;
      memory: 100Mi&lt;br /&gt;
&lt;br /&gt;
    limits:&lt;br /&gt;
&lt;br /&gt;
      cpu: 50m&lt;br /&gt;
&lt;br /&gt;
      memory: 100Mi&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Разрешения и привилегии ===&lt;br /&gt;
Драйверу Ключ-АСТРОМ '''Operator CSI''' требуются повышенные права для создания и управления монтированиями в хост-системе. В частности, разрешение [https://kubernetes.io/docs/concepts/storage/volumes/#mount-propagation mountPropagation: Bidirection]﻿ необходимо для тома, где драйвер '''CSI''' хранит модули кода. Это разрешение доступно только для привилегированных контейнеров.&lt;/div&gt;</summary>
		<author><name>IKuznetsov</name></author>
	</entry>
</feed>