Магія віртуалізацыі: уступны курс у Proxmox VE

Магія віртуалізацыі: уступны курс у Proxmox VE
Сёння гаворка пойдзе аб тым, як хутка і дастаткова проста на адным фізічным серверы разгарнуць некалькі віртуальных сервераў з рознымі аперацыйнымі сістэмамі. Любому сістэмнаму адміністратару гэта дазволіць цэнтралізавана кіраваць усёй IT-інфраструктурай кампаніі і эканоміць вялікую колькасць рэсурсаў. Выкарыстанне віртуалізацыі дапамагае максімальна абстрагавацца ад фізічнага сервернага абсталявання, абараніць крытычныя сэрвісы і лёгка аднавіць іх працу нават у выпадку вельмі сур'ёзных збояў.

Без усялякага сумневу, большасці сістэмных адміністратараў знаёмыя прыёмы працы з віртуальным асяроддзем і для іх гэты артыкул не стане якім-небудзь адкрыццём. Нягледзячы на ​​гэта, ёсць кампаніі, якія не выкарыстоўваюць гнуткасць і хуткасць працы віртуальных рашэнняў з-за недахопу дакладнай інфармацыі аб іх. Мы спадзяемся, што наш артыкул дапаможа на прыкладзе зразумець, што значна прасцей адзін раз пачаць выкарыстоўваць віртуалізацыю, чым адчуваць нязручнасці і недахопы фізічнай інфраструктуры.

На шчасце, паспрабаваць як працуе віртуалізацыя дастаткова проста. Мы пакажам, як стварыць сервер у віртуальным асяроддзі, напрыклад, для пераносу CRM-сістэмы, якая выкарыстоўваецца ў кампаніі. Практычна любы фізічны сервер можна ператварыць у віртуальны, але спачатку неабходна асвоіць базавыя прыёмы працы. Пра гэта і пойдзе размова ніжэй.

Як гэта ўладкована

Калі гаворка ідзе пра віртуалізацыю, шматлікім спецыялістам-пачаткоўцам складана разабрацца ў тэрміналогіі, таму растлумачым некалькі базавых паняццяў:

  • Гіпервізар - спецыяльнае праграмнае забеспячэнне, якое дазваляе ствараць віртуальныя машыны і кіраваць імі;
  • Віртуальная машына (далей VM) - гэта сістэма, якая ўяўляе сабой лагічны сервер унутры фізічнага са сваім наборам характарыстык, назапашвальнікамі і аперацыйнай сістэмай;
  • Хост віртуалізацыі - фізічны сервер з запушчаным на ім гіпервізарам.

Для таго каб сервер мог працаваць паўнавартасным хастом віртуалізацыі, яго працэсар павінен падтрымліваць адну з двух тэхналогій – альбо Intel VT, альбо AMD-V. Абедзве тэхналогіі выконваюць найважнейшую задачу – прадастаўленне апаратных рэсурсаў сервера віртуальным машынам.

Ключавой асаблівасцю з'яўляецца тое, што любыя дзеянні віртуальных машын выконваюцца напрамую на ўзроўні абсталявання. Пры гэтым яны сябар ад сябра ізаляваныя, што досыць лёгка дазваляе кіраваць імі па асобнасці. Сам жа гіпервізор гуляе ролю кантралюючага органа, размяркоўваючы рэсурсы, ролі і прыярытэты паміж імі. Таксама гіпервізор займаецца эмуляцыяй той часткі апаратнага забеспячэння, якая неабходна для карэктнай працы аперацыйнай сістэмы.

Укараненне віртуалізацыі дае магчымасць мець у наяўнасці некалькі запушчаных дзід аднаго сервера. Крытычны збой ці памылка, падчас занясенні змен у такую ​​копію, ніяк не паўплывае на працу бягучага сэрвісу або прыкладанні. Пры гэтым таксама здымаюцца дзве асноўныя праблемы - маштабаванне і магчымасць трымаць "заапарк" розных аперацыйных сістэм на адным абсталяванні. Гэта ідэальная магчымасць сумяшчэння самых розных сэрвісаў без неабходнасці набыцця асобнага абсталявання для кожнага з іх.

Віртуалізацыя павялічвае адмоваўстойлівасць сэрвісаў і разгорнутых прыкладанняў. Нават калі фізічны сервер выйшаў са строю і яго неабходна замяніць на іншы, то ўся віртуальная інфраструктура застанецца цалкам працаздольнай, пры ўмове захаванасці дыскавых носьбітаў. Пры гэтым фізічны сервер можа быць увогуле іншага вытворцы. Гэта асабліва актуальна для кампаній, якія выкарыстоўваюць серверы, вытворчасць якіх спынена і спатрэбіцца ажыццявіць пераход на іншыя мадэлі.

Цяпер пералічым самыя папулярныя гіпервізары, якія існуюць на бягучы дзень:

  • VMware ESXi
  • Microsoft Hyper-V
  • Open Virtualization Alliance KVM
  • Oracle VM VirtualBox

Яны ўсе дастаткова ўніверсальныя, аднак, у кожнага з іх маюцца пэўныя асаблівасці, якія варта заўсёды ўлічваць на этапе выбару: кошт разгортвання/абслугоўвання і тэхнічныя характарыстыкі. Кошт камерцыйных ліцэнзій VMware і Hyper-V вельмі высокая, а ў выпадку ўзнікнення збояў, вырашыць праблему з гэтымі сістэмамі ўласнымі сіламі вельмі няпроста.

KVM жа наадварот, цалкам бясплатны і досыць просты ў працы, асабліва ў складзе гатовага рашэння на базе Debian Linux пад назовам Proxmox Virtual Environment. Менавіта гэтую сістэму мы можам парэкамендаваць для першапачатковага знаёмства са светам віртуальнай інфраструктуры.

Як хутка разгарнуць гіпервізар Proxmox VE

Устаноўка часцей за ўсё не выклікае ніякіх пытанняў. Спампоўваем актуальную версію выявы з афіцыйнага сайта і запісваем яго на любы вонкавы носьбіт з дапамогай утыліты Win32DiskImager (у Linux выкарыстоўваецца каманда dd), пасля чаго загружаем сервер непасрэдна з гэтага носьбіта. Нашы кліенты, якія арандуюць у нас вылучаныя серверы, могуць скарыстацца двума яшчэ прасцейшымі шляхамі – проста змантаваўшы патрэбную выяву непасрэдна з KVM-кансолі, або выкарыстаючы наш PXE-сервер.

Праграма ўсталёўкі мае графічны інтэрфейс і задасць усяго толькі некалькі пытанняў.

  1. Выбіраемы дыск, на які будзе выканана ўстаноўка. У раздзеле опцыі можна таксама задаць дадатковыя параметры разметкі.

    Магія віртуалізацыі: уступны курс у Proxmox VE

  2. Указваем рэгіянальныя наладкі.

    Магія віртуалізацыі: уступны курс у Proxmox VE

  3. Указваем пароль, які будзе выкарыстоўвацца для аўтарызацыі суперкарыстальніка root і E-mail адрас адміністратара.

    Магія віртуалізацыі: уступны курс у Proxmox VE

  4. Паказваем сеткавыя наладкі. FQDN абазначае цалкам вызначанае імя дамена, напрыклад, node01.yourcompany.com.

    Магія віртуалізацыі: уступны курс у Proxmox VE

  5. Пасля завяршэння ўстаноўкі, сервер можна адправіць у перазагрузку з дапамогай кнопкі Reboot.

    Магія віртуалізацыі: уступны курс у Proxmox VE

    Вэб-інтэрфейс кіравання стане даступны па адрасе

    https://IP_адрес_сервера:8006

Што трэба зрабіць пасля ўстаноўкі

Ёсць некалькі важных рэчаў, якія варта выканаць пасля ўстаноўкі Proxmox. Раскажам аб кожнай з іх падрабязней.

Абнавіць сістэму да актуальнай версіі

Для гэтага зойдзем у кансоль нашага сервера і адключым платны рэпазітар (даступны толькі тым, хто купіў платную падтрымку). Калі гэтага не зрабіць - apt паведаміць пра памылку пры абнаўленні крыніц пакетаў.

  1. Адкрываем кансоль і рэдагуем канфігурацыйны файл apt:
    nano /etc/apt/sources.list.d/pve-enterprise.list
  2. У гэтым файле будзе ўсяго адзін радок. Ставім перад ёй сімвал #, каб адключыць атрыманне абнаўленняў з платнага рэпазітара:
    #deb https://enterprise.proxmox.com/debian/pve stretch pve-enterprise
  3. Спалучэннем клавіш Ctrl + X выконваем выхад з рэдактара, адказваючы Y на пытанне сістэмы аб захаванні файла.
  4. Выконваем каманду абнаўлення крыніц пакетаў і абнаўленні сістэмы:
    apt update && apt -y upgrade

Паклапаціцца аб бяспецы

Мы можам парэкамендаваць усталяваць найпапулярную ўтыліту Fail2Ban, якая абараняе ад нападаў метадам перабору пароляў (брутфорс). Прынцып яе працы складаецца ў тым, што калі зламыснік перавысіць пэўную колькасць спроб уваходу за паказаны час з няслушным лагінам/паролем, то яго IP-адрас будзе заблакаваны. Тэрмін блакавання і колькасць спроб можна паказаць у канфігурацыйным файле.

Зыходзячы з практычнага досведу, за тыдзень працы сервера з адчыненым ssh-портам 22 і вонкавым статычным IPv4-адрасам, было больш 5000 спроб падабраць пароль. І каля 1500 адрасоў утыліта паспяхова заблакавала.

Для выканання ўстаноўкі прыводзім невялікую інструкцыю:

  1. Адкрываем кансоль сервера праз вэб-інтэрфейс або SSH.
  2. Абнаўляем крыніцы пакетаў:
    apt update
  3. Усталёўваны Fail2Ban:
    apt install fail2ban
  4. Адкрываем канфігурацыю ўтыліты на рэдагаванне:
    nano /etc/fail2ban/jail.conf
  5. Змяняны зменныя бантайм (колькасць секунд на якія будзе блакавацца зламыснік) і максімум (колькасць спроб уводу лагіна/пароля) для кожнага асобнага сэрвісу.
  6. Спалучэннем клавіш Ctrl + X выконваем выхад з рэдактара, адказваючы Y на пытанне сістэмы аб захаванні файла.
  7. Перазапускаем службу:
    systemctl restart fail2ban

Праверыць статут працы ўтыліты, напрыклад, зняць статыстыку блакаванняў заблакаваных IP-адрасоў з якіх былі спробы перабору пароляў SSH, можна адной простай камандай:

fail2ban-client -v status sshd

Адказ утыліты будзе выглядаць прыкладна так:

root@hypervisor:~# fail2ban-client -v status sshd
INFO   Loading configs for fail2ban under /etc/fail2ban
INFO     Loading files: ['/etc/fail2ban/fail2ban.conf']
INFO     Loading files: ['/etc/fail2ban/fail2ban.conf']
INFO   Using socket file /var/run/fail2ban/fail2ban.sock
Status for the jail: sshd
|- Filter
|  |- Currently failed: 3
|  |- Total failed:     4249
|  `- File list:        /var/log/auth.log
`- Actions
   |- Currently banned: 0
   |- Total banned:     410
   `- Banned IP list:

Аналагічным спосабам можна зачыніць ад падобных нападаў Web-інтэрфейс, стварыўшы якое адпавядае правіла. Прыклад такога правіла для Fail2Ban можна знайсці ў афіцыйным кіраўніцтве.

Пачатак працы

Жадаецца звярнуць увагу на тое, што Proxmox гатовы да стварэння новых машын адразу пасля ўсталёўкі. Тым не менш, рэкамендуемы выканаць папярэднія налады, каб у далейшым сістэмай было лёгка кіраваць. Практыка паказвае, што гіпервізор і віртуальныя машыны варта разнесці па розных фізічных носьбітах. Пра тое, як гэта зрабіць і пойдзе размова ніжэй.

Наладзіць дыскавыя назапашвальнікі

Наступным этапам трэба наладзіць сховішча, якое можна будзе выкарыстоўваць для захавання дадзеных віртуальных машын і рэзервовых копій.

УВАГА! Прыведзены ніжэй прыклад дыскавай разметкі можна выкарыстоўваць толькі для тэставых мэт. Для эксплуатацыі ў рэальных умовах мы настойліва раім выкарыстоўваць праграмны або апаратны RAID-масіў, каб выключыць страту дадзеных пры выхадзе дыскаў з ладу. Пра тое, як правільна прыгатаваць дыскавы масіў да працы і як дзейнічаць у выпадку аварыйнай сітуацыі мы раскажам у адным з наступных артыкулаў.

Выкажам здагадку, што фізічны сервер мае два дыска. / Dev / ПДР, на які ўсталяваны гіпервізор і пусты дыск / DEV / SDB, Які плануецца выкарыстоўваць для захоўвання дадзеных віртуальных машын. Каб сістэма змагла ўбачыць новае сховішча, можна скарыстацца самым простым і эфектыўным метадам - ​​падлучыць яго як звычайную дырэкторыю. Але перад гэтым трэба выканаць некаторыя падрыхтоўчыя дзеянні. У якасці прыкладу паглядзім, як падлучыць новы дыск / DEV / SDB, любога памеру, адфарматаваўшы яго ў файлавую сістэму ext4.

  1. Раззначаем дыск, ствараючы новую частку:
    fdisk /dev/sdb
  2. Націскаем клавішу o або g (размеціць дыск у MBR ці GPT).
  3. Далей націскаем клавішу n (стварыць новы раздзел).
  4. І нарэшце w (для захавання змен).
  5. Ствараем файлавую сістэму ext4:
    mkfs.ext4 /dev/sdb1
  6. Ствараем дырэкторыю, куды будзем мантаваць падзел:
    mkdir /mnt/storage
  7. Адкрываем канфігурацыйны файл на рэдагаванне:
    nano /etc/fstab
  8. Дадаем туды новы радок:
    /dev/sdb1	/mnt/storage	ext4	defaults	0	0
  9. Пасля занясення змен захоўваем іх спалучэннем клавіш Ctrl + X, адказваючы Y на пытанне рэдактара.
  10. Для праверкі, што ўсё працуе, адпраўляем сервер у перазагрузку:
    shutdown -r now
  11. Пасля перазагрузкі правяраем змантаваныя часткі:
    df -H

Выснова каманды павінен паказаць, што / DEV / sdb1 змантаваны ў дырэкторыю /mnt/storage. Гэта значыць, што наш назапашвальнік готаў да працы.

Дадаць новае сховішча ў Proxmox

Аўтарызуемся ў панэлі кіравання і заходзім у раздзелы ДатацэнтрсховішчаДадацьДырэкторыя.

У якое адкрылася акне запаўняем наступныя палі:

  • ID - назва будучага сховішча;
  • Дырэкторыя - /mnt/storage;
  • змесціва - вылучаем усе варыянты (па чарзе пстрыкаючы на ​​кожным варыянце).

    Магія віртуалізацыі: уступны курс у Proxmox VE

Пасля гэтага націскаем кнопку Дадаць. На гэтым настройка завершана.

Стварыць віртуальную машыну

Для стварэння віртуальнай машыны выконваем наступную паслядоўнасць дзеянняў:

  1. Вызначаемся з версіяй аперацыйнай сістэмы.
  2. Загадзя запампоўваем ISO-выява.
  3. Выбіраемы ў меню сховішча толькі што створанае сховішча.
  4. Націскаем змесціваЗагрузіць.
  5. Выбіраемы з спісу ISO-вобраз і пацвярджаем выбар націскам кнопкі Загрузіць.

Пасля завяршэння аперацыі вобраз будзе адлюстраваны ў спісе даступных.

Магія віртуалізацыі: уступны курс у Proxmox VE
Ствараем нашу першую віртуальную машыну:

  1. Націскаем Стварыць VM.
  2. Запаўняем па чарзе параметры: ІмяISO-ImageПамер і тып цвёрдай кружэлкіКолькасць працэсараўАб'ём аператыўнай памяцісеткавай адаптар.
  3. Выбраўшы ўсе жаданыя параметры націскаем завяршыць. Створаная машына будзе адлюстравана ў меню панэлі кіравання.
  4. Выбіраемы яе і націскаем запуск.
  5. Пераходзім у пункт Кансоль і выконваем усталёўку аперацыйнай сістэмы сапраўды такой жа выявай, як і на звычайны фізічны сервер.

Калі неабходна стварыць яшчэ адну машыну - паўтараем вышэйпаказаныя аперацыі. Пасля таго як усе яны будуць гатовыя, з імі можна працаваць адначасова, адчыняючы некалькі вокнаў кансолі.

Наладзіць аўтазапуск

Па змаўчанні Proxmox аўтаматычна не запускае машыны, але гэта лёгка вырашаецца літаральна двума пстрычкамі мышы:

  1. Пстрыкаем па назове патрэбнай машыны.
  2. Выбіраемы ўкладку ОпцыіЗапуск пры загрузцы.
  3. Ставім галачку насупраць аднайменнага надпісу.

Цяпер, у выпадку перазагрузкі фізічнага сервера, VM будзе запушчана аўтаматычна.

Магія віртуалізацыі: уступны курс у Proxmox VE
Для прасунутых адміністратараў ёсць яшчэ і магчымасць паказаць дадатковыя параметры запуску ў раздзеле. Start/Shutdown order. Можна відавочна выявіць у якім парадку варта запускаць машыны. Таксама можна паказаць час, якое павінна прайсці да старту наступнай VM і час затрымкі выключэння (калі аперацыйная сістэма не паспее завяршыць працу, гіпервізор прымусова яе выключыць праз пэўную колькасць секунд).

Заключэнне

У гэтым артыкуле былі выкладзены асновы таго, як можна пачаць працаваць з Proxmox VE і мы спадзяемся, што яна дапаможа пачаткоўцам адмыслоўцам зрабіць першы крок і паспрабаваць віртуалізацыю ў дзеянні.

Proxmox VE — гэта сапраўды вельмі магутная і зручная прылада для любога сістэмнага адміністратара; галоўнае не баяцца эксперыментаваць і зразумець, як гэта сапраўды працуе.

Калі ў вас з'явіліся пытанні, сардэчна запрашаем у каментары.

Крыніца: habr.com

Дадаць каментар