You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/ADMIN_GUIDE.md
+75-1Lines changed: 75 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -119,6 +119,29 @@ Where:
119
119
- `allowedStorageClassNames` (optional): A list of the allowed StorageClass for creating a VirtualDisk that can be explicitly specified in the resource specification.
120
120
- `defaultStorageClassName` (optional): The StorageClass used by default when creating a VirtualDisk if the `.spec.persistentVolumeClaim.storageClassName` parameter is not specified.
121
121
122
+
**Security Event Audit**
123
+
124
+
{{< alert level="warning">}}
125
+
Not available in CE edition.
126
+
{{{< /alert >}}
127
+
128
+
{{{< alert level="warning">}}
129
+
To set up auditing, the following modules must be enabled:
130
+
131
+
- `log-shipper`,
132
+
- `runtime-audit-engine`.
133
+
{{{< /alert >}}
134
+
135
+
To enable security event auditing, set the module’s `.spec.settings.audit.enabled` parameter to` true`:
136
+
137
+
```yaml
138
+
spec:
139
+
enabled: true
140
+
settings:
141
+
audit:
142
+
enabled: true
143
+
```
144
+
122
145
{{< alert level="info" >}}
123
146
For a complete list of configuration options, see [Configuration](./configuration.html).
124
147
{{< /alert >}}
@@ -202,7 +225,7 @@ In this example, let's create a cluster image.
202
225
203
226
```bash
204
227
d8 k get clustervirtualimage ubuntu-22-04
205
-
228
+
206
229
# A short version of the command.
207
230
d8 k get cvi ubuntu-22-04
208
231
```
@@ -541,6 +564,57 @@ Changes in the `.spec.sizingPolicy` block can also affect virtual machines. For
541
564
When configuring `sizingPolicy`, be sure to consider the [CPU topology](./user_guide.html#automatic-cpu-topology-configuration) for virtual machines.
542
565
{{< /alert >}}
543
566
567
+
The `cores` block is mandatory and specifies the range of cores to which the rule described in the same block applies.
568
+
569
+
The ranges [min; max] for the cores parameter must be strictly sequential and non-overlapping.
570
+
571
+
Correct structure (the ranges follow one another without intersections):
572
+
573
+
```yaml
574
+
- cores:
575
+
min: 1
576
+
max: 4...
577
+
578
+
- cores:
579
+
min: 5 # Start of next range = (previous max + 1)
580
+
max: 8
581
+
```
582
+
583
+
Invalid option (overlapping values):
584
+
585
+
```yaml
586
+
- cores:
587
+
min: 1
588
+
max: 4...
589
+
590
+
- cores:
591
+
min: 4 # Error: Value 4 is already included in the previous range
592
+
max: 8
593
+
```
594
+
595
+
{{< alert level = "warning" >}}
596
+
Rule: Each new range must start with a value that immediately follows the max of the previous range.
597
+
{{< /alert >}}
598
+
599
+
Additional requirements can be specified for each range of cores:
600
+
601
+
1. Memory — specify:
602
+
603
+
- Either minimum and maximum memory for all cores in the range,
604
+
- Either the minimum and maximum memory per core (`memoryPerCore`).
605
+
606
+
2. Allowed fractions of cores (`coreFractions`) — a list of allowed values (for example, [25, 50, 100] for 25%, 50%, or 100% core usage).
607
+
608
+
{{< alert level = "warning" >}}
609
+
Important: For each range of cores, be sure to specify:
610
+
611
+
- Either memory (or `memoryPerCore`),
612
+
- Either coreFractions,
613
+
- Or both parameters at the same time.
614
+
{{< /alert >}}
615
+
616
+
Here is an example of a policy with similar settings:
Copy file name to clipboardExpand all lines: docs/ADMIN_GUIDE.ru.md
+75-5Lines changed: 75 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -119,6 +119,29 @@ spec:
119
119
- `allowedStorageClassNames`(опционально) — это список допустимых StorageClass для создания VirtualDisk, которые можно явно указать в спецификации ресурса;
120
120
- `defaultStorageClassName`(опционально) — это StorageClass, используемый по умолчанию при создании VirtualDisk, если параметр `.spec.persistentVolumeClaim.storageClassName` не задан.
121
121
122
+
**Аудит событий безопасности**
123
+
124
+
{{< alert level="warning" >}}
125
+
Недоступно в CE-редакции.
126
+
{{< /alert >}}
127
+
128
+
{{< alert level="warning" >}}
129
+
Для активации аудита требуется, чтобы были включены следующие модули:
130
+
131
+
- `log-shipper`,
132
+
- `runtime-audit-engine`.
133
+
{{< /alert >}}
134
+
135
+
Чтобы включить аудит событий безопасности, установите параметр `.spec.settings.audit.enabled` настроек модуля в `true`:
136
+
137
+
```yaml
138
+
spec:
139
+
enabled: true
140
+
settings:
141
+
audit:
142
+
enabled: true
143
+
```
144
+
122
145
{{< alert level="info" >}}
123
146
Полный перечень параметров конфигурации приведен в разделе [Настройки](./configuration.html).
124
147
{{< /alert >}}
@@ -206,7 +229,7 @@ spec:
206
229
207
230
```bash
208
231
d8 k get clustervirtualimage ubuntu-22-04
209
-
232
+
210
233
# Короткий вариант команды.
211
234
d8 k get cvi ubuntu-22-04
212
235
```
@@ -555,6 +578,57 @@ spec:
555
578
При настройке `sizingPolicy` будьте внимательны и учитывайте [топологию CPU](./user_guide.html#автоматическая-конфигурация-топологии-cpu) для виртуальных машин.
556
579
{{< /alert >}}
557
580
581
+
Блок `cores` обязательный и задает диапазоны ядер, на которые распространяется правило, описанное в этом же блоке.
582
+
583
+
Диапазоны [min; max] для параметра `cores` должны быть строго последовательными и непересекающимися.
584
+
585
+
Правильная структура (диапазоны идут друг за другом без пересечений):
586
+
587
+
```yaml
588
+
- cores:
589
+
min: 1
590
+
max: 4
591
+
...
592
+
- cores:
593
+
min: 5 # Начало следующего диапазона = (предыдущий max + 1)
594
+
max: 8
595
+
```
596
+
597
+
Недопустимый вариант (пересечение значений):
598
+
599
+
```yaml
600
+
- cores:
601
+
min: 1
602
+
max: 4
603
+
...
604
+
- cores:
605
+
min: 4 # Ошибка: Значение 4 уже входит в предыдущий диапазон
606
+
max: 8
607
+
```
608
+
609
+
{{< alert level="warning" >}}
610
+
Правило : Каждый новый диапазон должен начинаться со значения, непосредственно следующего за max предыдущего диапазона.
611
+
{{< /alert >}}
612
+
613
+
Для каждого диапазона ядер `cores` можно задать дополнительные требования:
614
+
615
+
1. Память (`memory`) — указывается:
616
+
617
+
- Либо минимум и максимум памяти для всех ядер в диапазоне,
618
+
- Либо минимум и максимум памяти на одно ядро (`memoryPerCore`).
619
+
620
+
2. Допустимые доли ядер (`coreFractions`) — список разрешенных значений (например, [25, 50, 100] для 25%, 50% или 100% использования ядра).
621
+
622
+
{{< alert level="warning" >}}
623
+
Важно : Для каждого диапазона cores обязательно укажите:
624
+
625
+
- Либо memory (или `memoryPerCore`),
626
+
- Либо coreFractions,
627
+
- Либо оба параметра одновременно.
628
+
{{< /alert >}}
629
+
630
+
Пример политики с подобными настройками:
631
+
558
632
```yaml
559
633
spec:
560
634
sizingPolicies:
@@ -569,7 +643,6 @@ spec:
569
643
min: 1Gi
570
644
max: 8Gi
571
645
step: 512Mi
572
-
dedicatedCores: [false]
573
646
coreFractions: [5, 10, 20, 50, 100]
574
647
# Для диапазона от 5 до 8 ядер возможно использовать от 5 до 16 ГБ оперативной памяти с шагом 1 ГБ,
575
648
# т.е. 5 ГБ, 6 ГБ, 7 ГБ и т. д.
@@ -582,7 +655,6 @@ spec:
582
655
min: 5Gi
583
656
max: 16Gi
584
657
step: 1Gi
585
-
dedicatedCores: [false]
586
658
coreFractions: [20, 50, 100]
587
659
# Для диапазона от 9 до 16 ядер возможно использовать от 9 до 32 ГБ оперативной памяти с шагом 1 ГБ.
588
660
# При необходимости можно использовать выделенные ядра.
@@ -594,7 +666,6 @@ spec:
594
666
min: 9Gi
595
667
max: 32Gi
596
668
step: 1Gi
597
-
dedicatedCores: [true, false]
598
669
coreFractions: [50, 100]
599
670
# Для диапазона от 17 до 248 ядер возможно использовать от 1 до 2 ГБ оперативной памяти из расчёта на одно ядро.
600
671
# Доступны для использования только выделенные ядра.
Copy file name to clipboardExpand all lines: docs/USER_GUIDE.md
+28Lines changed: 28 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1619,6 +1619,34 @@ The live migration process involves several steps:
1619
1619
Network speed plays an important role. If bandwidth is low, there are more iterations and VM downtime can increase. In the worst case, the migration may not complete at all.
1620
1620
{{{< /alert >}}
1621
1621
1622
+
#### AutoConverge mechanism
1623
+
1624
+
If the network struggles to handle data transfer and the number of "dirty" pages keeps growing, the AutoConverge mechanism can be useful. It helps complete migration even with low network bandwidth.
1625
+
1626
+
The working principles of AutoConverge mechanism:
1627
+
1628
+
1. **VM CPU slowdown**.
1629
+
1630
+
The hypervisor gradually reduces the CPU frequency of the source VM. This reduces the rate at which new "dirty" pages appear. The higher the load on the VM, the greater the slowdown.
1631
+
1632
+
2. **Synchronization acceleration**.
1633
+
1634
+
Once the data transfer rate exceeds the memory change rate, final synchronization is started and the VM switches to the new node.
1635
+
1636
+
3. **Automatic Termination**
1637
+
1638
+
Final synchronization is started when the data transfer rate exceeds the memory change rate.
1639
+
1640
+
AutoConverge is a kind of "insurance" that ensures that the migration completes even if the network struggles to handle data transfer. However, CPU slowdown can affect the performance of applications running on the VM, so its use should be monitored.
1641
+
1642
+
#### Configuring Migration Policy
1643
+
1644
+
To configure migration behavior, use the `.spec.liveMigrationPolicy` parameter in the VM configuration. The following options are available:
1645
+
1646
+
- `AlwaysSafe` - Migration is performed without slowing down the CPU (AutoConverge is not used). Suitable for cases where maximizing VM performance is important but requires high network bandwidth.
1647
+
- `PreferSafe` - (used as the default policy) By default, migration runs without AutoConverge, but CPU slowdown can be enabled manually if the migration fails to complete. This is done by using the VirtualMachineOperation resource with `type=Evict` and `force=true`.
1648
+
- `AlwaysForced` - Migration always uses AutoConverge, meaning the CPU is slowed down when necessary. This ensures that the migration completes even if the network is bad, but may degrade VM performance.
1649
+
- `PreferForced` - By default migration goes with AutoConverge, but slowdown can be manually disabled via VirtualMachineOperation with the parameter `type=Evict` and `force=false`.
Copy file name to clipboardExpand all lines: docs/USER_GUIDE.ru.md
+29Lines changed: 29 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1626,6 +1626,35 @@ EOF
1626
1626
Cкорость сети играет важную роль. Если пропускная способность низкая, итераций становится больше, а время простоя ВМ может увеличиться. В худшем случае миграция может вообще не завершиться.
1627
1627
{{< /alert >}}
1628
1628
1629
+
#### Механизм AutoConverge
1630
+
1631
+
Если сеть не справляется с передачей данных, а количество «грязных» страниц продолжает расти, будет полезен механизм AutoConverge. Он помогает завершить миграцию даже при низкой пропускной способности сети.
1632
+
1633
+
Принципы работы механизма AutoConverge:
1634
+
1635
+
1.**Замедление процессора ВМ**
1636
+
1637
+
Гипервизор постепенно снижает частоту процессора исходной ВМ. Это уменьшает скорость появления новых «грязных» страниц. Чем выше нагрузка на ВМ, тем сильнее замедление.
1638
+
1639
+
2.**Ускорение синхронизации**
1640
+
1641
+
Как только скорость передачи данных превышает скорость изменения памяти, запускается финальная синхронизация, и ВМ переключается на новый узел.
1642
+
1643
+
3.**Автоматическое завершение**
1644
+
1645
+
Финальная синхронизация запускается, когда скорость передачи данных превышает скорость изменения памяти.
1646
+
1647
+
AutoConverge — это своего рода «страховка», которая гарантирует, что миграция завершится, даже если сеть не справляется с передачей данных. Однако замедление процессора может повлиять на производительность приложений, работающих на ВМ, поэтому его использование нужно контролировать.
1648
+
1649
+
#### Настройка политики миграции
1650
+
1651
+
Для настройки поведения миграции используйте параметр `.spec.liveMigrationPolicy` в конфигурации ВМ. Допустимые значения параметра:
1652
+
1653
+
-`AlwaysSafe` — Миграция всегда выполняется без замедления процессора (AutoConverge не используется). Подходит для случаев, когда важна максимальная производительность ВМ, но требует высокой пропускной способности сети.
1654
+
-`PreferSafe` — (используется в качестве политики по умолчанию) Миграция выполняется без замедления процессора (AutoConverge не используется). Однако можно запустить миграцию с замедлением процессора, используя ресурс VirtualMachineOperation с параметрами `type=Evict` и `force=true`.
1655
+
-`AlwaysForced` — Миграция всегда использует AutoConverge, то есть процессор замедляется при необходимости. Это гарантирует завершение миграции даже при плохой сети, но может снизить производительность ВМ.
1656
+
-`PreferForced` — Миграция использует AutoConverge, то есть процессор замедляется при необходимости. Однако можно запустить миграцию без замедления процессора, используя ресурс VirtualMachineOperation с параметрами `type=Evict` и `force=false`.
1657
+
1629
1658
#### Виды миграции
1630
1659
1631
1660
Миграция может осуществляться пользователем вручную, либо автоматически при следующих системных событиях:
0 commit comments