3.1. GNOME Область рабочего стола
Глава 26. Рабочий стол GNOME
26.1. GNOME: Область рабочего стола

На рабочем столе GNOME есть две особые области:
область рабочего стола (рабочая площадь в центре, занимающая большую часть экрана);
панель GNOME (полоса внизу экрана).
26.1. GNOME: Область рабочего стола
В области рабочего стола отображается содержимое папки Рабочий стол. По умолчанию в области рабочего стола расположен значок Домашняя папка, который предоставляет доступ к домашнему каталогу пользователя /home/<имя пользователя>. В этой папке по умолчанию хранятся пользовательские файлы (например, аудиозаписи, видеозаписи, документы). Домашняя папка есть у каждого пользователя системы, и по умолчанию содержащиеся в ней файлы недоступны для других пользователей (даже для чтения).
На область рабочего стола можно перетащить файлы и создать ярлыки программ.
Чтобы перенести виртуальную машину с ОС Альт Сервер 10 в Кибер Инфраструктуру из среды Hyper-V, выполните следующие действия:
Если внутри виртуальной машины используется LVM, выполняйте восстановление согласно инструкции.
- На исходной машине, работающей в Hyper-V, измените файл /etc/initrd.mk.
Добавьте строку MODULES_LOAD с указанными ниже модулями:
[root@host-83 ~]# vim /etc/initrd.mk
AUTODETECT = all
MODULES_LOAD =virtio virtio_scsi virtio_net virtio_pci libata ata_piix ata_generic scsi_dh_emc scsi_dh_alua scsi_dh_rdac dm_multipath sd_mod pata_acpi
Сохраните файл.
Выполните команду make-initrd.
Убедитесь, что модули, указанные в файле, вошли в загрузочный образ.
- Выполните резервное копирование виртуальной машины.
6. Чтобы исходная машина сохранила загружаемость, на исходной машине в среде Hyper-V измените файл /etc/initrd.mk.
Удалите строку:
MODULES_LOAD =virtio virtio_scsi virtio_net virtio_pci libata ata_piix ata_generic scsi_dh_emc scsi_dh_alua scsi_dh_rdac dm_multipath sd_mod pata_acpi
Выполните команду make-initrd.
Убедитесь, что модули в загрузочном образе соответствуют указанным на скриншоте:
- Восстановите виртуальную машину в Кибер Инфраструктуре.
10. Проверьте загрузку виртуальной машины.
mkdir -p /home/altlinux/Projects/Project_01
mkdir /home/altlinux/Projects/Project_01/terraform
cd /home/altlinux/Projects/
vim cloudinit.conf
export OS_AUTH_URL=https://192.168.26.112:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_AUTH_TYPE=password
export OS_PROJECT_DOMAIN_NAME=Region2026
export OS_USER_DOMAIN_NAME=Region2026
export OS_PROJECT_NAME=Project1
export OS_USERNAME=user1
export OS_PASSWORD=P@ssw0rd
488: Как узнать IP-адрес оконечной точки идентификации OpenStack
Продукт:
Последнее обновление:
10/8/25
Описание статьи:
Инструкция, как узнать IP-адрес оконечной точки идентификации OpenStack
Задача
Необходимо узнать IP-адрес оконечной точки идентификации OpenStack для подключения Кибер VDI или виртуального устройства Кибер Бэкапа.
Решение
Узнать IP-адрес оконечной точки идентификации можно из вывода команды:
openstack --insecure endpoint list --interface public -f json | jq .[] | grep identity -A 1
Команду необходимо выполнять на узле с ролью Панель администратора. Узнать, какой узел обладает этой ролью, можно с помощью команды:
vinfra node list
У требуемого узла значение параметра is_primary будет равно True.
Если команда выполняется с ошибкой
Missing value auth-url required for auth plugin password
Выполните подключение к интерфейсу командной строки OpenStack в соответствии с инструкцией (пункты 1–4).
Failed to discover available identity versions when contacting https://10.77.154.244:5000/v3. Attempting to parse version from URL.
Request to https://10.77.154.244:5000/v3/auth/tokens timed out
Убедитесь, что выполняете команду на узле с ролью Панель администратора (см. выше).
source cloudinit.conf
#проверка
openstack --insecure server list
openstack --insecure network list
vim ~/.terraformrc
provider_installation {
network_mirror {
url = "https://terraform-mirror.mcs.mail.ru"
include = ["registry.terraform.io/*/*"]
}
direct {
exclude = ["registry.terraform.io/*/*"]
}
}
cd Project_01/terraform/
vim provider.tf
terraform {
required_providers {
openstack = {
source = "terraform-provider-openstack/openstack"
version = "2.1.0"
}
}
}
provider "openstack" {
auth_url = "https://192.168.26.112:5000/v3"
tenant_name = "Project1"
user_name = "user1"
password = "P@ssw0rd"
insecure = true
}
terraform init
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub > /home/altlinux/Projects/Project_01/terraform/cloud-init.yml
Способ 1: через панель администратора
URL панели администратора: https://<IP-адрес узла управления>:8888
Эта панель позволяет управлять кластером и настраивать SSH-соединения с ним.
Чтобы разрешить инженерам службы технической поддержки Киберпротекта удаленный доступ к панели администратора, убедитесь, что TCP-порт 8888 открыт для IP-адреса узла управления или виртуального IP-адреса высокой доступности.
Рекомендуется создать в панели администратора отдельную учетную запись с административными привилегиями (cyberprotect_support) для инженеров службы технической поддержки Киберпротекта. Чтобы это сделать, перейдите в Настройки → Проекты и пользователи → Default, нажмите Создать пользователя, а затем выберите для новой учетной записи роль Системный администратор и укажите Все права в разделе Набор системных ролей. Вставьте пароль учетной записи в текстовый документ, упакуйте его в зашифрованный ZIP-архив с использованием пароля, отвечающего требованиям вашей политики ИБ, и отправьте этот архив в службу поддержки Киберпротекта.
Способ 2: через SSH
Доступ по SSH требуется для устранения неполадок и анализа журналов в процессе устранения проблем с Кибер Инфраструктурой.
Необходимо внести IP-адреса Киберпротекта в белый список для доступа к узлу управления через TCP-порт 22 (или другой используемый порт) и добавить ключи OpenSSH, отправленные инженерами службы поддержки Киберпротекта, в разделе Настройки → Системные настройки → SSH-ключи панели администратора.
Для отправки учетных данных вашего кластера используйте зашифрованный ZIP-архив, как описано выше для способа 1.
Закрытие удаленного доступа
После устранения неполадок и решения проблем отключите удаленный доступ и удалите учетные записи, созданные для инженеров службы поддержки Киберпротекта:
- В панели администратора перейдите в Настройки → Проекты и пользователи и удалите учетную запись cyberprotect_support.
- В панели администратора перейдите в Настройки → Системные настройки → SSH-ключи и удалите SSH-ключи, как описано в документации.
- Закройте все порты, указанные выше.
vim cloud-init.yml
#cloud-config
ssh_pwauth: false
users:
- default
- name: altlinux
sudo: ALL=(ALL) NOPASSWD:ALL
groups: wheel
shell: /bin/bash
ssh_authorized_keys:
- "ssh-rsa <СОДЕРЖИМОЕ_ПУБЛИЧНОГО_КЛЮЧА_SSH> user@host"
chpasswd:
expire: false
list: |
altlinux:P@ssw0rd
root:toor
openstack --insecure flavor list //значение(1024RAM 1vCPU) flavor_id
openstack --insecure image list //значение(alt-p11-cloud-x86_64.qcow2) uuid
vim vm-game.tf
resource "openstack_compute_instance_v2" "game" {
count = "3"
name = "game0${count.index + 1}"
flavor_id = "03bf1b85-2f5f-4ada-a07b-8b994b6dcb57"
user_data = file("cloud-init.yml")
block_device {
uuid = "827e08fa-fd3c-41cd-92ca-845bb5018478"
source_type = "image"
volume_size = "10"
boot_index = 0
destination_type = "volume"
delete_on_termination = true
}
network {
port = openstack_networking_port_v2.port_vm_game[count.index].id
}
}
vim ~/Projects/Project_01/terraform/vm-haproxy01.tf
resource "openstack_compute_instance_v2" "haproxy" {
name = "haproxy01"
flavor_id = "03bf1b85-2f5f-4ada-a07b-8b994b6dcb57"
user_data = file("cloud-init.yml")
block_device {
uuid = "827e08fa-fd3c-41cd-92ca-845bb5018478"
source_type = "image"
volume_size = "10"
boot_index = 0
destination_type = "volume"
delete_on_termination = true
}
network {
port = openstack_networking_port_v2.haproxy.id
}
}
Проблема
У вас развернута Кибер Инфраструктура со службой Вычисления.
Вы хотите создавать моментальные снимки виртуальных машин, управляемых службой Вычисления, и иметь возможность восстанавливать состояние виртуальных машин. Штатными средствами Кибер Инфраструктуры можно создавать только моментальные снимки томов.
Решение
Вы можете создавать моментальные снимки виртуальных машин инструментами гипервизора KVM.
Подготовка к работе с моментальными снимками виртуальных машин
Для работы с моментальными снимками виртуальных машин необходимо иметь доступ к узлам кластера Кибер Инфраструктуры по SSH. Для работы с целевой виртуальной машиной нужно знать идентификатор виртуальной машины (vm-id) и имя узла кластера Кибер Инфраструктуры, на котором запущена виртуальная машина.
Определение vm-id и имени узла, на котором запущена виртуальная машина
В панели администрирования перейдите на экран Вычисления → Виртуальные машины и просмотрите сведения о целевой виртуальной машине.

Подключитесь по SSH к любому узлу кластера и выполните команду:
vinfra service compute server list
Пример вывода:+----------------------------------------------+----------------+----------+------------------------------------+
| id | name | status | host |
+----------------------------------------------+----------------+----------+------------------------------------+
| fe98af3a-dc7b-4ac7-bf3a-4114af72dc64 | test | ACTIVE | ci550b3524-2.vstoragedomain |
+----------------------------------------------+----------------+----------+------------------------------------+
Создание моментального снимка виртуальной машины
Для создания моментального снимка виртуальной машины подключитесь по SSH к узлу кластера, на котором запущена виртуальная машина, и выполните команду:_virsh snapshot-create-as --domain <vm-id> --name <snapshot-name>_
Просмотр списка доступных моментальных снимков виртуальной машины
Для просмотра списка доступных моментальных снимков виртуальной машины подключитесь по SSH к узлу кластера, на котором запущена виртуальная машина, и выполните команду:_virsh snapshot-list --domain <vm-id>_
Восстановление состояния виртуальной машины из моментального снимка
Для восстановления состояния виртуальной машины из моментального снимка подключитесь по SSH к узлу кластера, на котором запущена виртуальная машина, и выполните команду:
_virsh snapshot-revert --domain <vm-id> --snapshotname <snapshot-name> --running_
Получение vm-domname по vm-id
Подключитесь по SSH к узлу кластера, на котором запущена виртуальная машина, и выполните команду:
_virsh domname <vm-id>_
Получение vm-id по vm-domname
Подключитесь по SSH к узлу кластера, на котором запущена виртуальная машина, и выполните команду:
_virsh domuuid <vm-domname>_
Расположение информационных файлов (XML-файлов) моментальных снимков
XML-файлы моментальных снимков хранятся на узле кластера Кибер Инфраструктуры, где запущена виртуальная машина. Файлы расположены в каталоге **/var/lib/libvirt/qemu/snapshot/<vm-domname>**.
openstack --insecure network list //значение(cloud-net) network_id
openstack --insecure subnet list //значение(192.168.1.0.24) subnet_id
vim network.tf
resource "openstack_networking_port_v2" "port_vm_game" {
count = "3"
name = "port_vm_game0${count.index + 1}"
network_id = "61845892-f9cc-4fde-962c-34b59425a74d"
admin_state_up = true
fixed_ip {
subnet_id = "13592ca4-8782-410b-9bcc-90810ccab6fe"
ip_address = "192.168.1.10${count.index + 1}"
}
}
resource "openstack_networking_port_v2" "haproxy" {
name = "port_vm_haproxy"
network_id = "61845892-f9cc-4fde-962c-34b59425a74d"
admin_state_up = true
fixed_ip {
subnet_id = "13592ca4-8782-410b-9bcc-90810ccab6fe"
ip_address = "192.168.1.100"
}
}
vim floatingip.tf
resource "openstack_networking_floatingip_v2" "floatingip_haproxy" {
pool = "public"
}
resource "openstack_networking_floatingip_associate_v2" "association_haproxy" {
port_id = openstack_networking_port_v2.haproxy.id
floating_ip = openstack_networking_floatingip_v2.floatingip_haproxy.address
}
terraform validate
cd /home/altlinux/Projects/Project_01
vim deploy_project_01.sh
#!/bin/bash
cd /home/$USER/Projects
source cloudinit.conf
cd /home/$USER/Projects/Project_01/terraform
terraform init
terraform apply -auto-approve
sleep 60
echo "done"
chmod +x deploy_project_01.sh
./deploy_project_01.sh
vim /etc/hosts
192.168.1.100 haproxy01.dev.au.team haproxy01
192.168.1.100 game.au.team
192.168.1.101 game01.dev.au.team game01
192.168.1.102 game02.dev.au.team game02
192.168.1.103 game03.dev.au.team game03
mkdir /home/altlinux/Projects/Project_01/ansible
cd /home/altlinux/Projects/Project_01/ansible
vim ansible.cfg
[defaults]
inventory = ./inventory.yml
host_key_checking = False
callback_enabled = profile_tasks
callback_whitelist = profile_tasks
vim inventory.yml
all:
children:
proxys:
hosts:
haproxy01:
games:
hosts:
game01:
game02:
game03:
mkdir group_vars
vim group_vars/all.yml
---
ansible_python_interpreter: /usr/bin/python3
ansible_ssh_user: altlinux
ansible_ssh_private_key_file: ~/.ssh/id_rsa
ansible -m ping all
Инструкции
Проведение горячей миграции с сохранением информационных файлов моментальных снимков
Для миграции виртуальной машины выполните следующие действия:
- Подключитесь по SSH к узлу, на котором запущена виртуальная машина, и переместите XML-файлы из каталога
/var/lib/libvirt/qemu/snapshot/<vm-domname>в отдельный каталог (или удалите файлы, если они не нужны). - Для обновления информации о состоянии моментальных снимков перезапустите службу libvirtd, выполнив команду:
_systemctl restart libvirtd_ - Выполните миграцию виртуальной машины на выбранный узел.
- Переместите сохраненные XML-файлы на узел, куда была перенесена виртуальная машина, в каталог
/var/lib/libvirt/qemu/snapshot/<vm-domname>. - Для обновления информации о состоянии моментальных снимков перезапустите службу libvirtd, выполнив команду:
systemctl restart libvirtd
Сохранение информационных файлов моментальных снимков при включении виртуальной машины
Перед включением виртуальной машины выполните следующие действия:
- Переместите XML-файлы из каталога
/var/lib/libvirt/qemu/snapshot/<vm-domname>во временный каталог. - Включите виртуальную машину.
- Переместите XML-файлы из временного каталога в каталог
/var/lib/libvirt/qemu/snapshot/<vm-domname>. - Перезапустите службу libvirtd.
Сохранение информационных файлов моментальных снимков при аппаратной перезагрузке виртуальной машины
Перед аппаратной перезагрузкой виртуальной машины выполните следующие действия:
- Переместите XML-файлы из каталога
/var/lib/libvirt/qemu/snapshot/<vm-domname>во временный каталог. - Выполните аппаратную перезагрузку виртуальной машины.
- Переместите XML-файлы из временного каталога в каталог
/var/lib/libvirt/qemu/snapshot/<vm-domname>. - Перезапустите службу libvirtd.
Сохранение информационных файлов моментальных снимков перед высвобождением ресурсов виртуальной машины
Перед высвобождением ресурсов виртуальной машины выполните следующие действия:
- Переместите XML-файлы из каталога
/var/lib/libvirt/qemu/snapshot/<vm-domname>во временный каталог. - Высвободите ресурсы виртуальной машины.
- Сохраните данные во временном каталоге до момента выделения ресурсов виртуальной машины.
Проведение холодной миграции или эвакуации с сохранением информационных файлов моментальных снимков
Для холодной миграции или эвакуации виртуальной машины выполните следующие действия:
- Переместите XML-файлы из каталога
/var/lib/libvirt/qemu/snapshot/<vm-domname>во временный каталог. - Проведите холодную миграцию или эвакуацию виртуальной машины.
- Переместите XML-файлы из временного каталога в каталог
/var/lib/libvirt/qemu/snapshot/<vm-domname>. - Перезапустите службу libvirtd.
Перезапуск службы libvirtd
Указанная операция необходима для обновления информации о состоянии моментальных снимков. Если вы перемещали XML-файлы моментальных снимков, то информация об этом будет актуализирована после перезапуска службы libvirtd.
Для перезапуска службы подключитесь к узлу кластера, на котором перемещали XML-файлы, и выполните команду:
systemctl restart libvirtd
cd ~/Downloads
#загружаем(я зашёл через браузер) https://disk.yandex.ru/d/uhpN6U6UYRK_Nw
unzip ~/Downloads/Project_01.zip -d /home/altlinux/Projects/Project_01/2048-game/
vim /home/altlinux/Projects/Project_01/ansible/Dockerfile
FROM node:16-alpine AS builder
WORKDIR /2048-game
COPY package*.json ./
RUN npm install --include=dev
COPY . .
RUN npm run build
EXPOSE 8080
FROM nginx:stable-alpine3.19
COPY --from=builder /2048-game/dist /usr/share/nginx/html
vim /home/altlinux/Projects/Project_01/ansible/games_playbook.yml
---
- hosts: games
become: true
tasks:
- name: Install docker
community.general.apt_rpm:
name:
- docker-engine
- docker-buildx
state: present
update_cache: true
- name: Started and enabled docker
ansible.builtin.systemd:
name: docker
state: started
enabled: true
- name: Copying the project files
ansible.builtin.copy:
src: ../2048-game/
dest: "/home/{{ ansible_ssh_user }}/2048-game/"
- name: Copying the Dockerfile
ansible.builtin.copy:
src: ./Dockerfile
dest: "/home/{{ ansible_ssh_user }}/2048-game/"
- name: Build docker image
community.docker.docker_image_build:
name: "2048-game"
tag: latest
path: "/home/{{ ansible_ssh_user }}/2048-game/"
dockerfile: Dockerfile
- name: Start docker container
community.docker.docker_container:
name: "2048-game"
image: "2048-game"
ports: "80:80"
state: started
restart: true
Значки ролей узлов хранилища
В статье приведена расшифровка обозначений ролей узлов в Кибер Инфраструктуре и Кибер Хранилище
Все узлы, представленные в панели администратора, сопровождаются небольшими значками (иконками) в соответствии с ролью каждого узла в кластере. Это позволяет быстро понять структуру хранилища и статус служб на каждом узле.
Ниже представлена расшифровка значений этих иконок.
Значок узла управления
Узел отвечает за управление кластером, на нем работает панель администратора.
Значок роли хранилища
Узлу назначены диски с ролями хранения. Такие узлы обеспечивают емкость хранилища для кластера.
Значок меняет цвет на красный при проблемах с дисками и на оранжевый – в случае если сервер фрагментов данных (CS) находится на обслуживании.
cd /home/altlinux/Projects/Project_01/ansible/
ansible-playbook games_playbook.yml
mkdir files
vim /home/altlinux/Projects/Project_01/ansible/files/haproxy.cfg
global
log /dev/log daemon
chroot /var/lib/haproxy
pidfile /run/haproxy.pid
maxconn 4000
user _haproxy
group _haproxy
daemon
stats socket /var/lib/haproxy/stats
defaults
mode http
log global
option httplog
option dontlognull
option http-server-close
option forwardfor except 127.0.0.0/8
option redispatch
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
maxconn 3000
frontend http_front
bind *:80
bind *:443 ssl crt /var/lib/ssl/game.pem
default_backend http_back
backend http_back
balance roundrobin
server game01 192.168.1.101:80 check
server game02 192.168.1.102:80 check
server game03 192.168.1.103:80 check
listen stats
bind :80
bind *:443 ssl crt /var/lib/ssl/game.pem
stats enable
stats uri /
stats refresh 5s
stats realm Haproxy\ Stats
Значок роли метаданных
Узлу назначены диски с ролями метаданных. Метка «M» указывает на узел, который в настоящий момент является ведущим в кворуме метаданных. Если на этом узле возникают проблемы, значок становится красным и в качестве ведущего выбирается другой работающий сервис метаданных.
Значок Backup Gateway
На узле запущена служба Backup Gateway и он входит в кластер Backup Gateway.
Значок NFS
На узле запущена служба NFS и он участвует в экспорте дискового пространства по протоколу NFS.
Значок S3
Узел входит в кластер S3 и экспортирует дисковое пространство по протоколу S3.
Значок iSCSI
На узле работает цель iSCSI и он экспортирует дисковое пространство по протоколу iSCSI.
openssl req -x509 -sha256 -days 3653 -newkey rsa:2048 -keyout ca.key -out ca.crt
если спросить pass phrase: P@ssw0rd
company: au.team | Common name: ca.au.team
sudo cp ca.crt /etc/pki/ca-trust/source/anchors/ && sudo update-ca-trust
mv ca.* /home/altlinux/Projects/Project_01/ansible/files/
openssl genrsa -out files/game.key 2048
openssl req -key files/game.key -new -out files/game.csr
company: au.team | Common name: game.au.team
vim files/game.ext
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
subjectAltName=@alt_names
[alt_names]
DNS.1=game.au.team
IP.1=192.168.1.100
openssl x509 -req -CA files/ca.crt -CAkey files/ca.key -in files/game.csr -out files/game.crt -days 365 -CAcreateserial -extfile files/game.ext
cat files/game.key files/game.crt > files/game.pem
vim /home/altlinux/Projects/Project_01/ansible/proxys_playbook.yml
---
- hosts: proxys
become: true
tasks:
- name: Install HAProxy
community.general.apt_rpm:
name: haproxy
state: present
update_cache: true
- name: Copy file 'haproxy.cfg'
ansible.builtin.copy:
src: files/haproxy.cfg
dest: /etc/haproxy/haproxy.cfg
notify:
- Restarted HAProxy
- name: Copy certificate for HAProxy
ansible.builtin.copy:
src: files/game.pem
dest: /var/lib/ssl/game.pem
notify:
- Restarted HAProxy
- name: Started and enabled HAProxy
ansible.builtin.systemd:
name: haproxy
state: restarted
enabled: true
handlers:
- name: Restarted HAProxy
ansible.builtin.systemd:
name: haproxy
state: restarted
ansible-playbook proxys_playbook.yml
https://game.au.team
haproxy01.dev.au.team /haproxy?stats
http://новый плавающий ip
Настройка ротации журналов Backup Gateway
Если при выполнении следующих шагов у вас возникнут вопросы или проблемы, обратитесь в службу технической поддержки Киберпротекта.
- По умолчанию для журналов Backup Gateway настроено хранение 50 файлов по 200 МБ каждый.
Текущие настройки можно посмотреть в файле /etc/vstorage/abgw.config на любом узле, включенном в Backup Gateway:
[root@ ~]# grep ^log /etc/vstorage/abgw.config
log.file = /var/log/abgw/abgw.log.zst
**log.rotate = 50x200M**
- Прежде чем вносить какие-либо изменения в конфигурационный файл, на всякий случай сделайте его копию:
cp /etc/vstorage/abgw.config /etc/vstorage/abgw.config.original
- Отредактируйте конфигурационный файл, указав требуемое количество файлов журнала x200M для параметра log.rotate, например:
[root@ ~]# sed -i "s/^log.rotate = .*$/log.rotate = **10x200M**/" /etc/vstorage/abgw.config
[root@ ~]# grep ^log.rotate /etc/vstorage/abgw.config
log.rotate = **10x200M**
- Перезапустите службу vstorage-abgw:
systemctl restart vstorage-abgw
После этого будут применены новые настройки ротации, а старые файлы журнала – автоматически удалены.
cd /home/altlinux/Projects/Project_01
vim configure_project_01.sh
#!/bin/bash
export PATH=/home/altlinux/.local/bin:$PATH
cd /home/$USER/Projects/Project_01/ansible
sleep 10
ansible-playbook games_playbook.yml
sleep 5
ansible-playbook proxys_playbook.yml
chmod +x configure_project_01.sh
./configure_project_01.sh
vim destroy_project_01.sh
#!/bin/bash
cd /home/$USER/Projects
source cloudinit.conf
cd /home/$USER/Projects/Project_01/terraform
terraform destroy -auto-approve
rm -f ~/.ssh/known_hosts
echo "done"
chmod +x destroy_project_01.sh
./destroy_project_01.sh
[altlinux@cloud-adm Project_01]$ tree
.
├── 2048-game
│ ├── Images
│ │ └── game-2048-welcome-page.png
│ ├── package.json
│ ├── package-lock.json
│ ├── README.md
│ ├── index.js
│ └── webpack.config.js
├── ansible
│ ├── ansible.cfg
│ ├── Dockerfile
│ ├── files
│ │ ├── ca.crt
│ │ ├── ca.key
│ │ ├── ca.srl
│ │ ├── game.crt
│ │ ├── game.csr
│ │ ├── game.ext
│ │ ├── game.key
│ │ ├── game.pem
│ │ └── haproxy.cfg
│ ├── games_playbook.yml
│ ├── group_vars
│ │ └── all.yml
│ ├── inventory.yml
│ └── proxys_playbook.yml
├── configure_project_01.sh
├── deploy_project_01.sh
├── destroy_project_01.sh
└── terraform
├── cloud-init.yml
├── floatingip.tf
├── network.tf
├── provider.tf
├── terraform.tfstate
├── terraform.tfstate.backup
├── vm-game.tf
└── vm-haproxy01.tf
9 directories, 32 files
[altlinux@cloud-adm Project_01]$
Инструкция
Для переустановки (развертывания или повторного развертывания) RabbitMQ на узлах Кибер Инфраструктуры выполните следующие действия:
- Проверьте точное время (date; chronyc tracking) на узлах кластера. Если есть расхождение в значениях между узлами, выполните команду:
chronyc makestep - Проверьте узлы на наличие RabbitMQ с помощью команды:
docker ps | grep rabbit - На каждом узле, где есть RabbitMQ, выполните команды:
- Остановить контейнер: docker stop rabbitmq
- Удалить контейнер: docker rm rabbitmq
- Удалить каталог: docker volume rm rabbitmq
- На главном узле выполните следующие команды:
su vstoradmin
kolla-ansible deploy rabbitmq
Узнать, какой узел является главным, можно с помощью команды:
vinfra node list
У главного узла значение параметра is_primary будет равно True. - По завершении проверьте статус RabbitMQ на всех узлах кластера:
docker exec -itu root rabbitmq rabbitmqctl cluster_status
Вывод команды должен быть одинаковым на всех узлах.