Увосень 2019 гады Check Point спыніў падтрымку версій R77.XX, і трэба было абнаўляцца. Аб розніцы паміж версіямі, плюсах і мінусах пераходу на R80 сказанае ўжо нямала. Давайце лепш пагаворым аб тым, як, уласна, абнавіць віртуальныя appliance Check Point (CloudGuard для VMware ESXi, Hyper-V, KVM Gateway NGTP) і што можа пайсці не так.
Такім чынам, у нас было 2 інжынера CCSE, больш за дзесятак віртуальных кластараў Check Point R77.30, некалькі аблокаў, трошачкі хотфіксаў і цэлае мора разнастайных багаў, глюкаў і ўсяго такога, усіх кветак і памераў, а яшчэ вельмі сціснутыя тэрміны. Пагналі!
Але мы будзем рэалістамі. Калі ў самай мінімальнай канфігурацыі гэтага дастаткова, то, як паказвае практыка, звычайна ў нас уключана https-інспекцыя, на SMS працуе SmartEvent і г.д., што, зразумела, патрабуе зусім іншых магутнасцей. Але ў цэлым не вялікіх, чым для R77.30.
Але ёсць нюансы. І датычацца яны, у першую чаргу, памераў фізічнай памяці. Многія аперацыі непасрэдна ў працэсе абнаўлення запатрабуюць месцы на цвёрдым дыску.
Для сервера кіравання памер вольнай прасторы на дыску будзе вельмі моцна залежаць ад аб'ёму бягучых логаў (калі мы жадаем іх захаваць) і ад колькасці захаваных Database Revisions, хоць яны вось нам у вялікай колькасці ўжо не спатрэбяцца. Зразумела, для нод кластара (калі толькі вы не захоўваеце логі яшчэ і лакальна) гэта ўсё не мае значэння. Вось як можна праверыць наяўнасць неабходнага месца:
Падлучаемся да Smart Management Server па ssh, заходзім у expert mode і ўводны каманду:
[Expert@cp-sms:0]# df -h
На выхадзе мы ўбачым прыкладна такую канфігурацыю:
Нас у дадзены момант цікавіць падзел / Вар / часопіс
Улічвайце, што ў залежнасці ад палітыкі захоўвання і выдаленні старых лог-файлаў, а таксама памеру экспартуемай базы можа спатрэбіцца больш месца. Калі пры стварэнні архіва вольнага месца стане менш, чым паказана ў палітыцы захоўвання лог-файлаў, сістэма пачне сціраць старыя логі і НЕ уключыць іх у архіў.
Таксама для самога працэсу абнаўлення сістэме спатрэбіцца мінімум 13 GB неразмеркаванага месца на цвёрдай кружэлцы. Праверыць яго наяўнасць можна камандай:
Па выкананні каманды будзе сфарміравана справаздача аб несумяшчальных настройках. Ён даступны па адрасе: /opt/CPsuite-R77/fw1/log/pre_upgrade_verification_report.(xls, html, txt). Зручней выгрузіць яго праз SCP і глядзець праз браўзэр.
Для ўхілення ўсіх несумяшчальных налад выкарыстоўвайце SK117237.
Пасля паўторна запусціць утыліту pre_upgrade_verifier, каб пераканацца, што ўсе чыннікі несумяшчальнасці ўхіленыя.
Далей збіраем інфармацыю аб сеткавых інтэрфейсах, табліцы маршрутызацыі і выгружаем канфігурацыю GAIA: ip a > /var/log/UpgradeR77.30_R80.20/cp-sms-config.txt
ip r > /var/log/UpgradeR77.30_R80.20/cp-sms-config.txt
clish -c "show configuration" > /var/log/UpgradeR77.30_R80.20/cp-sms-config.txt
Выгружаем атрыманы файл праз SCP.
Які робіцца snapshot на ўзроўні віртуалізацыі.
Павялічваем timeout SSH сесіі да 8 гадзін. Тут як пашанцуе: у залежнасці ад памераў экспартуемай базы можа працягвацца ад некалькіх хвілін да некалькіх гадзін. Для гэтага: [Expert@HostName]# clish -c "show inactivity-timeout" глядзім бягучы timeout clish,
[Expert@HostName]# clish -c "set inactivity-timeout 720" паказваем новы timeout clish (у хвілінах),
[Expert@HostName]# export TMOUT=3600 паказваем новы timeout expert mode (у секундах), калі паставіць значэнне 0, то timeout будзе выключаны.
Падгружаем і мантуем усталявальны вобраз SMS.iso да віртуальнай машыны.
Перад наступным крокам АБАВЯЗКОВА яшчэ раз праверце, што ў вас дастаткова неразмеркаванага месца на цвёрдым дыску (нагадаю, трэба 13 GB).
Перад пачаткам экспарту канфігурацыі змяняем лог файл камандай: fw logswitch
Экспарт канфігурацыі і логаў
Запускаем утыліту migrate_export для выгрузкі канфігурацыі. Для гэтага праходзім у раней створаную тэчку: cd /var/log/UpgradeR77.30_R80.20/ і выкарыстоўваем каманду: ./migrate export -l /var/log/UpgradeR77.30_R80.20/SMS_w_logs_export_r77_r80.tgz
альбо
праходзім у тэчку: cd $FWDIR/bin/upgrade_tools/ и
запускаем адтуль каманду: ./migrate export -l /var/log/UpgradeR77.30_R80.20/SMS_w_logs_export_r77_r80.tgz
Здымаем checksum з архіву: md5sum /var/log/UpgradeR77.30_R80.20/SMS_w_logs_export_r77_r80.tgz
Захоўваем у блакнот атрыманае значэнне.
Падлучаемся да SMS праз SCP і выгружаем архіў з канфігурацыяй на працоўную станцыю. Абавязкова выкарыстоўваць перадачу файлаў у фармаце Binary.
Экспарт базы SmartEvent
Тут нам спатрэбіцца загадзя ўсталяваны SMS версіі R80. Любы тэставы падыдзе.
Ад SMS нам патрэбен скрыпт, размешчаны тут:$RTDIR/bin/eva_db_backup.csh
Праз SCP загружаем скрыпт eva_db_backup.csh у тэчку: /var/log/UpgradeR77.30_R80.20/
Падлучаемся па SSH да SMS. Скапіяваць файл у тэчку: cp /var/log/UpgradeR77.30_R80.20/eva_db_backup.csh
$RTDIR/bin/eva_db_backup.csh
Запускаем экcпорт базы SmartEvent: $RTDIR/bin/eva_db_backup.csh
Выгружаем атрыманыя файлы праз SCP: $RTDIR/bin/<дата>-db-backup.backup и $RTDIR/bin/eventiaUpgrade.tar на працоўную станцыю.
Абнаўленне
пераходзім у WebUI GAIA SMS → CPUSE → Show all packages.
У выпадку, калі CPUSE выдае памылку падлучэння да воблака Check Point, правяраем DGW, DNS і налады Proxy.
Калі ўсё дакладна, а памылка не знікае, тое трэба абнавіць CPUSE уручную, кіруючыся sk92449.
Спампоўваем вобраз і праходзім Verifier. У выпадку неабходнасці ўстараняем неадпаведнасці.
У выніку павінны ўбачыць вось такое паведамленне:
выбіраем R80.20 Fresh Install and Upgrade для аховы здароўя.
Пры ўсталёўцы абнаўлення выбіраемы Clean Install. Пасля ўсталёўкі сістэма перазагрузіцца.
Праходзім First Time Майстар.
Пасля атрымання доступу правяраем уліковыя запісы.
Падлучаемся да SMS па SSH і змяняем shell нашага карыстача на /bin/bash/:
set user <імя карыстальніка> shell /bin/bash/
захаваць канфігурацыю (у выпадку, калі мы жадаем пакінуць bin/bash/ як shell па змаўчанні і пасля перазагрузкі).
Далей падлучаемся да SMS праз SCP і ў рэжыме Binary перадаем архіў з канфігурацыяй. SMS_w_logs_export_r77_r80.tgz у тэчку /var/log/UpgradeR77.30_R80.20/
Здымаем checksum з архіву: md5sum /var/log/UpgradeR77.30_R80.20/SMS_w_logs_export_r77_r80.tgz і параўноўваем з папярэднім значэннем. Checksum павінны супадаць.
Павялічваем timeout SSH сесіі да 8 гадзін. Для гэтага:
[Expert@HostName]# export TMOUT=3600 паказваем новы timeout expert mode (у секундах). Калі паставіць значэнне 0, то timeout будзе выключаны.
Для імпарту настроек запускаем утыліту migrate import. Для гэтага пераходзім у тэчку: cd $FWDIR/bin/upgrade_tools/і запускаем імпарт: ./migrate imp
ort -l /var/log/UpgradeR77.30_R80.20/SMS_w_logs_export_r77_r80.tgz
Атрымліваем асалоду ад жыццём бліжэйшыя пару гадзін. НЕ АДКЛЮЧАЙЦЕ SSH-СЕСІЮ падчас працэдуры. У канцы працэс migrate выдасць або паведамленне аб паспяховым завяршэнні аперацыі, або памылку.
Чэк-ліст праверак пасля абнаўлення
Даступнасць рэсурсаў.
SIC з GW.
Ліцэнзіі. Калі ліцэнзіі адлюстроўваюцца няправільна або не адлюстроўваюцца на SMS, запускаем каманду vsec_central_licence для размеркавання ліцэнзій.
Устаноўка палітыкі.
Імпарт базы SmartEvent
Актывуйце блейд SmartEvent.
Падлучаемся праз WinSCP да SMS і ў рэжыме binary перадаем выгружаныя раней файлы <дата>-db-backup.backup и eventiaUpgrade.tar у тэчку /var/log/UpgradeR77.30_R80.20/
Захоўваем канфігурацыю GAIA з кожнай ноды кластара ў файл, для гэтага скарыстацца камандай: clish -c "show configuration" > ./<Назва файла>.txt
Выгружаем файлы пры дапамозе WinSCP.
Падлучаемся да WebUI абедзвюх нод і пераходзім на ўкладку CPUSE → Show all packages.
Знаходзім пакет абнаўленняў для версіі R80.20 Fresh Install, націскаем Спампаваць.
Правяраем, што CCP-пратакол працуе ў рэжыме Вroadcast, для гэтага ўводзім каманду: cphaprob -a if
Калі абраны рэжым Multicast, зменіце яго камандай: cphaconf set_ccp broadcast (каманда выконваецца на кожнай нодзе).
Усталёўваны Downtime для задзейнічаных нод у вашай сістэме маніторынгу.
Правяраем, што на ўзроўні віртуалізацыі ўключаны параметры Змена MAC-адраса и Forged Transmits для sync-сеткі.
Абнаўленне
Падлучаемся па ssh да Active-нодзе і запускаем каманду для маніторынгу стану кластара: watch -n 2 cphaprob stat
Вяртаемся ў WebUI Stanby ноды на ўкладку CPUSE і для абранага пакета R80.20 Fresh Install запускаем Verifier.
Аналізуем справаздачу Verifier. Калі ўстаноўка дазволена, ідзем далей.
Выбіраемы пакет R80.20 Fresh Install і запускаем мадэрнізацыя. У працэсе Upgrade сістэма будзе перазагружана. Настройкі GAIA захоўваюцца. У момант перазагрузкі адсочваем стан кластара. Пасля загрузкі статут абноўленай ноды павінен змяніцца на READY. У шэрагу выпадкаў у нас узнікаў момант, калі яшчэ не абноўленая нода пераходзіла ў статут Active Attention і пераставала адлюстроўваць статут абноўленай ноды. Не палохайцеся - такі варыянт таксама дапусцім.
Па завяршэнні абнаўлення адкрываем SmartDashboard.
Адкрываем кластарны аб'ект і змяняем версію кластара з R77.30 на R80.20. Ціснем Ок. Калі пры захаванні змен з'яўляецца памылка: An internal error has occurred. (Code: 0x8003001D, Выкарыстоўвайце не access file for write operation),
прытрымлівайцеся SK119973. Пасля гэтага захоўваем змены і ціснем Install Policy.
У наладах прыбіраем галачку з параметру Для гатэляў clusters, калі ўладкавацца на cluster member fails, do no install on cluster.
Усталёўваны палітыку. Сістэма выдасць памылку для Active-ноды, якая яшчэ не абноўлена.
Падлучаемся да абноўленай ноды па ssh і запускаем каманду для маніторынгу стану кластара: watch -n 2 cphaprob stat
Падлучаемся да WebUI Active-ноды і пераходзім ва ўкладку CPUSE → Show all packages.Знаходзім пакет абнаўленняў для версіі R80.20 Fresh Install, ціснем Спампаваць.
Усталёўваны Downtime для задзейнічаных нод у вашай сістэме маніторынгу.
Вяртаемся ў WebUI Active-ноды на ўкладку CPUSE і для абранага пакета R80.20 Fresh Install запускаем Verifier.
Аналізуем справаздачу Verifier. Калі ўстаноўка дазволена, ідзем далей.
Выбіраемы пакет R80.20 Fresh Install і запускаем Абнаўленне. У працэсе Upgrade сістэма будзе перазагружана. Настройкі GAIA захоўваюцца. У момант перазагрузкі адсочваем стан кластара на ўжо абноўленай надзе. Пасля перазагрузкі стан кластара на абноўленай нодзе зменіцца з READY на ACTIVE.
Калі завершыцца працэс Upgrade, запускаем SmartDashboard і ўсталёўваны палітыку.
Чэк-ліст праверак пасля абнаўлення
Часопісы падзей у SmartLog, стан VPN-тунэляў.
Настройкі GAIA.
Аднаўленне кластара пасля тэставага Failover.
Ліцэнзіі і кантракты. У выпадку, калі ліцэнзіі адлюстроўваюцца няправільна альбо не адлюстроўваюцца на SMS, запускаем каманду. vsec_central_licence для размеркавання ліцэнзій.
CoreXL.
SecureXL.
Hotfix і CPinfo на двух нодах.
Заключэнне
Увогуле-то на гэтым моманце ўсё - вы абнавіліся.
У нас увесь працэс займаў у сярэднім ад 6 да 12 гадзін, у залежнасці ад памераў экспартуемых баз. Працы праводзілі дзве ночы: адна - для абнаўлення SMS, другая - для кластара.
Прастою трафіку не было, нягледзячы на тое, што ўсе вышэйзгаданыя памылкі мы правяралі на сабе.
Вядома, часам могуць узнікнуць і зусім новыя цяжкасці ў працэсе абнаўлення, але гэта Check Point, і, як мы ўсе ведаем, заўсёды ёсць hotfix!