Сегодняшней заметкой мне нужно сделать чтобы в моем тестовом сервере под управлением Proxmox 8.4-12
была развернута виртуальная машина с осью Mikrotik CHR.
Последующая ее цель стать шлюзом для проработки миграции Exchange 2010
на Exchange 2016
со всеми шагами, а то есть весь цикл по Exchange 2010
и цикл по Exchange 2016
, а перехода от и до нет. Нужно все проработать дабы на боевом все проходило понятно.
Т.к. на текущий момент версия Proxmox
у меня 8.4-12
и, наверное, Mikrotik CHR
уже другая что была используемая у меня ранее, то значит снова прорабатываю, оформляя для себя в виде пошаговой заметки.
Шаг №1:
Открываю через браузер URL
строку на доступ к своей системе виртуализации на базе Proxmox
и создаю виртуальную машину:
https://IP&DNS:8006 - user&pass - (Server View) Datacenter - srv-proxmox01
Node: srv-proxmox01
VM ID: 402 (предполагаю что мой стенд будет начинаться с 400)
Name: srv-chr
OS: Do not use any media
Guest OS: (Type): Linux
Guest OS: (Version): 5.x – 2.6 Kernel
SCSI Controller: VirtIO SCSI
Bud/Device: SATA:0
Storage: OneTBSSD
Disk Size: 5Gb
Format: Raw disk image (raw)
CPU: 1
Cores: 1
Type: Default (kvm64)
Memory (MiB): 2024
Bridge: vmbr0
Model: VirtIO (paravirtualized)
Созданную VM
не запускаем, т.е. не ставим галочку Start after created
По итогу получаю созданный контейнер под Mikrotik CHR:
https://IP&DNS:8006 - user&pass - (Server View) Datacenter - srv-proxmox01
– выбираю VM: 402 (srv-chr) - Hardware
Шаг №2:
Чтобы видеть свойства контейнера виртуальной машины не через GUI
, а посмотреть, что скрывается как конфигурационный файл можно следующим образом:
ekzorchik@ekzorchik:~$ ssh -l root 172.33.33.25
root@srv-proxmox01:~# cat /etc/pve/nodes/srv-proxmox01/qemu-server/402.conf
boot: order=sata0;ide2;net0
cores: 1
cpu: kvm64
ide2: none,media=cdrom
memory: 2048
meta: creation-qemu=9.2.0,ctime=1758170008
name: srv-chr
net0: virtio=BC:24:11:5A:C8:D6,bridge=vmbr0,firewall=1
numa: 0
ostype: l26
sata0: OneTBSSD:vm-402-disk-0,size=5G
scsihw: virtio-scsi-single
smbios1: uuid=866e8a9f-1a47-4a01-a9d0-69ce1c7d54c7
sockets: 1
vmgenid: bf84d11b-38b1-4502-8cf7-63017bb2cbe4
ну это так к слову.
Шаг №3:
Расширяем свойства Storage: Local
для расположения на нем еще Disk Image:
Если у Вас, как у меня Storage
где располагаются файлы жесткого диска представляют из себя LVM-Thin
(контейнер в формате raw
), то не получится, нужно перенести диск из виртуальной машины на Storage: local
который из себя представляет путь в файловой системе, т.е. /var/lib/vz
На заметку: у меня Storage: local
может содержать: Backup, ISO image, Container template
, как я это увидел, а все просто:
https://IP&DNS:8006 - user&pass - (Server View) Datacenter - Storage
– и смотрим на ID: local
(см. скриншот ниже для наглядного понимания)
Чтобы в Storage: local
добавить возможно располагать образ диска виртуальной машины, проделываем следующее:
https://IP&DNS:8006 - user&pass - (Server View) Datacenter - Storage - local
– нажимаю "Edit"
и "Content"
выбираю из списка еще "Disk image"
и нажимаю "ОК".
Ниже после расширения возможностей Storage
по тому что на нем можно располагать.
Шаг №4:
Переносим "Hard Disk" VM ID: 402 (srv-chr)
с LVM-Thin
на Storage: local
https://IP&DNS:8006 - user&pass - (Server View) Datacenter - srv-proxmox01 - 402 (srv-chr) - Hardware
– выделяю "Hard Disk (sata0)" - Disk Action - Move Storage
Disk: sata0
Target Storage: выбираю local
Format: Raw disk image (raw)
Delete source: отмечаю галочкой
и нажимаю "Move disk"
transferred 5.0 GiB of 5.0 GiB (100.00%)
transferred 5.0 GiB of 5.0 GiB (100.00%)
Logical volume "vm-402-disk-0" successfully removed.
TASK OK
Шаг №5:
Подключаемся по SSH
к хосту srv-proxmox01
под учетными данными логина root
дабы скачать образ Mikrotik CHR
(в формате img
) и перезаписать на именование жесткого диска в контейнере VM: 402 (srv-chr).
ekzorchik@ekzorchik:~$ ssh -l root 172.33.33.25
root@srv-proxmox01:~# apt-get install -y unzip
root@srv-proxmox01:~# cd /tmp
root@srv-proxmox01:/tmp# wget https://download.mikrotik.com/routeros/7.19.6/chr-7.19.6.img.zip
root@srv-proxmox01:/tmp# unzip chr-7.19.6.img.zip
Archive: chr-7.19.6.img.zip
inflating: chr-7.19.6.img
root@srv-proxmox01:/tmp#
root@srv-proxmox01:/tmp# cp chr-7.19.6.img /var/lib/vz/images/402/vm-402-disk-0.raw
root@srv-proxmox01:/tmp# cd ~
root@srv-proxmox01:~# rm -f /tmp/chr-7.19.6.img.zip /tmp/chr-7.19.6.img
root@srv-proxmox01:~# qemu-img resize /var/lib/vz/images/402/vm-402-disk-0.raw 5G
WARNING: Image format was not specified for '/var/lib/vz/images/402/vm-402-disk-0.raw' and probing guessed raw.
Automatically detecting the format is dangerous for raw images, write operations on block 0 will be restricted.
Specify the 'raw' format explicitly to remove the restrictions.
Image resized.
Шаг №6:
Теперь запускаю контейнер виртуальной машины:
https://IP&DNS:8006 - user&pass - (Server View) Datacenter - srv-proxmox01 - 402 (srv-chr) - Start
после переключаюсь на ">_ Console"
у контейнера виртуальной машины и если все правильно то я должен увидеть и вижу приветствие на авторизацию в консоли Mikrotik(а):
Далее выключаю VM
и переношу Hard Disk
c Storage: local
обратно в Storage: OneTBSSD
где его тип LVM-Thin.
MikroTik 7.19.6 (stable)
MikroTik Login: admin
Password: нажимаю "Enter"
Do you want to see the software license? [Y/n]:
нажимаю клавишу "y"
, а затем клавишей "Enter"
мотаю содержимого лицензионного соглашения до этапа, когда нужно изменить пароль на дефолтную учетную запись Login: admin
Change your password
new password> указываю к примеру 712mbddr@
repeat new password> 712mbddr@
Password changed
или же это можно сделать потом просто прервать запрос сочетанием клавиш "Ctrl + C"
[admin@Mikrotik] > system/shutdown
Shutdown, yes? [y/N]:
нажимаю клавишу "y"
Шаг №7:
Узнаем IP
–адрес который сейчас на виртуальной машине Mikrotik CHR:
https://IP&DNS:8006 - user&pass - (Server View) Datacenter - srv-proxmox01 - 402 (srv-chr) - ">_ Console"
MikroTik 7.19.6 (stable)
MikroTik Login: admin
Password: вводу 712mbddr@
[admin@Mikrotik] > ip dhcp-client/add interface=ether1
failure: dhcp-client on that interface already exists
[admin@Mikrotik] > ip dhcp-client/print
Т.е. IP
-адрес, полученный от моего роутера у Mikrotik CHR
это 172.33.33.1
и значит я могу взаимодействовать с ним либо через консоль, либо через утилиту winbox.
Шаг №8:
Получаем временную лицензию сроком на 60
дней:
На заметку: Вам понадобиться зарегистрироваться на сайте mikrotik.com
дабы у Вас была связка: почтовый ящик — это логин и пароль.
Подключаемся по SSH
к Mikrotik CHR
дабы если у Вас сложный пароль на аккаунт Mikrotik
вы его через буфер обмена скопировали либо же через ">_ Console"
взаимодействуйте, либо через winbox
кому как удобнее.
root@srv-proxmox01:~# ssh -l admin 172.33.33.1
[admin@MikroTik] >
[admin@MikroTik] > system/license/print
system-id: rqFE749kgLD
level: free
[admin@MikroTik] > system/license/renew
account: support@ekzorchik.ru
password: *********************
level: p1
status: done
[admin@MikroTik] >
[admin@MikroTik] > system/license/print
system-id: rqFE749kgLD
level: p1
limited-upgrades: no
next-renewal-at: 2025-10-18 05:20:27
deadline-at: 2025-11-17 05:20:27
Шаг №9:
Выключаю VM
и создаю снапшот (Name: ActivateDO_17112025)
дабы в течении срока тестов если что откатываться на только что установленную текущую систему с выполненной активацией сроком на 60
дней дабы повторить с нуля и задокументировать настройки.
Как показал мой практический опыт использования среды виртуализации Proxmox
и Mikrotik CHR
можно многое смоделировать, задокументировать настройки и уже не боясь перенести на боевое окружение, а не судорожно пытаться на боевом что-то сделать не совсем понимая, что в итоге должно получиться. К тому же когда документируешь в виде пошаговых заметок еще всплывают различные нюансы.
На этом у меня все, с уважением автор блога Олло Александр aka ekzorchik.