{"id":505,"date":"2024-06-08T21:01:53","date_gmt":"2024-06-08T19:01:53","guid":{"rendered":"https:\/\/activum24.pl\/?p=505"},"modified":"2025-08-04T14:04:31","modified_gmt":"2025-08-04T12:04:31","slug":"backup-3-2-1-proxmox-backup-server-w-azure","status":"publish","type":"post","link":"https:\/\/activum24.pl\/index.php\/2024\/06\/08\/backup-3-2-1-proxmox-backup-server-w-azure\/","title":{"rendered":"Backup 3-2-1 \u2013 Proxmox Backup Server w AZURE"},"content":{"rendered":"\n<p>Dobr\u0105 praktyk\u0105 przy tworzeniu kopii zapasowych dla kluczowych danych jest \u201eZasada 3-2-1\u201d. Zasada ta zaleca tworzenie 3 kopii\/replik danych, z kt\u00f3rych co najmniej 2 kopie powinny by\u0107 zapisane na r\u00f3\u017cnych no\u015bnikach oraz \u017ce 1 kopia powinna by\u0107 przechowywana w odr\u0119bnej lokalizacji, poza miejscem przetwarzaniach danych, w innym geograficznie miejscu.<\/p>\n\n\n\n<p>W zwi\u0105zku z tym, \u017ce w swoim domowym laboratorium korzystam z klastra Proxmox, a dla zabezpieczania kontener\u00f3w i maszyn wirtualnych korzystam z serwera Proxmox Backup Server (dane zabezpieczane w 2 kopiach na dyskach sieciowych) zdecydowa\u0142em, \u017ce w zdalnej lokalizacji, w&nbsp;chmurze Azure, uruchomi\u0119 zdalny Proxmox Backup Server i w ten spos\u00f3b do\u0142o\u017c\u0119 do mechanizm\u00f3w zabezpiecze\u0144 t\u0105 \u201e1\u201d z zasady \u201e3-2-1\u201d.<\/p>\n\n\n\n<p>Nie znalaz\u0142em w zasobach Azure gotowego rozwi\u0105zania, dlatego te\u017c Proxmox Backup Server jest instalowany na wirtualnej maszynie pod systemem Debian 12. Wymagane elementy s\u0105 dla tego rozwi\u0105zania budowane w portalu Azure.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a>Wdro\u017cenie infrastruktury<\/a><\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Utworzenie maszyny wirtualnej vm-pbs2 &#8211; Standard B2s (2 vcpus, 4 GiB memory) oraz grupy zasob\u00f3w rg-pbs2<br>a. System Debian 12<br>b. Dodatkowy dysk HDD 128GB na kopie &#8211; vm-pbs2_DataDisk_0<br>c. Zewn\u0119trzny adres IP &#8211; vm-pbs2-ip<br>d. Dost\u0119p do SSH (port 22) przez klucze RSA &#8211; vm-pbs2_key<\/li>\n\n\n\n<li>Azure utworzy\u0142 automatycznie dodatkowe wymagane komponenty sieciowe: Network Security Group \u2013 vm-pbs2-nsg, Network Virtual Network \u2013 vm-pbs2-vnet oraz kart\u0119 sieciow\u0105 vm-pbs2512<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"><a>Przygotowanie systemu<\/a><\/h3>\n\n\n\n<div class=\"wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-8cf370e7 wp-block-group-is-layout-flex\">\n<pre class=\"wp-block-code\"><code>sudo apt update\n\nsudo apt upgrade -y\n\nsudo apt install mc htop xfsprogs parted -y<\/code><\/pre>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><a>Pod\u0142\u0105czenie dodatkowego dysku<\/a><\/h3>\n\n\n\n<div class=\"wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-8cf370e7 wp-block-group-is-layout-flex\">\n<p><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo parted \/dev\/sdc --script mklabel gpt mkpart xfspart xfs 0% 100%\n\nsudo mkfs.xfs \/dev\/sdc1\n\nsudo partprobe \/dev\/sdc1\n\nsudo mkdir \/datadrive\n\nsudo mount \/dev\/sdc1 \/datadrive\n\nsudo blkid\n\n\/etc\/fstab - add\nUUID=e2dce0f9-64b8-428f-8b36-4edec71e03b7&nbsp;&nbsp; \/datadrive&nbsp;&nbsp; xfs&nbsp;&nbsp; defaults,nofail&nbsp;&nbsp; 1&nbsp;&nbsp; 2<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><a>Instalacja Proxmox Backup Server<\/a><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo https:\/\/enterprise.proxmox.com\/debian\/proxmox-release-bookworm.gpg -O \/etc\/apt\/trusted.gpg.d\/proxmox-release-bookworm.gpg\n\n\/etc\/apt\/sources.list - add\ndeb http:\/\/download.proxmox.com\/debian\/pbs bookworm pbs-no-subscription\n\nsudo apt update\nsudo apt install proxmox-backup-server<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><a>Czynno\u015bci ko\u0144cowe<\/a><\/h3>\n<\/div>\n\n\n\n<p>Wymagane by\u0142o przywr\u00f3cenie pakietu ifupdown. Pakiet ifupdown2 sygnalizowa\u0142 b\u0142\u0105d.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<pre class=\"wp-block-code\"><code>sudo apt install ifupdown<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<p>W opcjach sieciowych wymagane by\u0142o dodanie regu\u0142y dla ruchu przychodz\u0105cego, odblokowuj\u0105cej ruch port TCP 8007.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a>Konfiguracja Proxmox Backup Server<\/a><\/h3>\n\n\n\n<p>Zainstalowane oprogramowanie dost\u0119pne jest pod adresem:<\/p>\n\n\n\n<p><a href=\"https:\/\/4.180.157.247:8007\">https:\/\/4.180.157.247:8007<\/a><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"605\" height=\"299\" src=\"https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-7.png\" alt=\"\" class=\"wp-image-506\" srcset=\"https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-7.png 605w, https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-7-300x148.png 300w\" sizes=\"auto, (max-width: 605px) 100vw, 605px\" \/><\/figure>\n\n\n\n<p>W ramach interfejsu WEB:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Dodano 2 magazyny danych &#8211; Datastore: azure_backup i&nbsp;azure_backup2 (dla backup\u00f3w szyfrowanych).<\/li>\n\n\n\n<li>Ustawiono harmonogram dla zada\u0144 weryfikuj\u0105cych kopie \u2013 Verify Jobs<\/li>\n\n\n\n<li>Ustawiono harmonogram dla zada\u0144 porz\u0105dkuj\u0105cych magazyny danych \u2013 Prune Jobs, Garbage Collect Jobs<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"><a>Konfiguracja kopii w Proxmox<\/a><\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Dodano w sekcji Storage po\u0142\u0105czenie do zdalnego serwera Proxmox Backup Server \u2013 dwa rodzaje azure_pbs i azure_pbs2 (dla kopii szyfrowanych).<\/li>\n\n\n\n<li>Ustawiono harmonogramy wykonywania kopii dla kontener\u00f3w i wirtualnych maszyn. <\/li>\n\n\n\n<li>Uruchomiono testowy backup<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"605\" height=\"32\" src=\"https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-8.png\" alt=\"\" class=\"wp-image-507\" style=\"width:816px;height:auto\" srcset=\"https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-8.png 605w, https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-8-300x16.png 300w\" sizes=\"auto, (max-width: 605px) 100vw, 605px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><a>Problemy napotkane podczas wdro\u017cenia rozwi\u0105zania w Azure<\/a><\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Po \u201esudo apt upgrade\u201d z w\u0142\u0105czonym repozytorium Proxmox Backup Server niestety system ju\u017c si\u0119 nie uruchamia\u0142 \u2013 problem z bootowaniem i konfiguracj\u0105 grub.<\/li>\n\n\n\n<li>Uda\u0142o si\u0119 uruchomi\u0107 system w wykorzystaniem Serial console i Grub Rescue mode<\/li>\n<\/ol>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<pre class=\"wp-block-code\"><code>grub&gt;\n\nls\n\nls (hd0,gpt1)\/\n\nset prefix=(hd0,gpt1)\/boot\/grup\n\nset root=(hd0,gpt1)\n\ninsmod normal\n\nnormal<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<p>3. Niestety kolejne polecenia, kt\u00f3re powinny przywr\u00f3ci\u0107 poprawne \u0142adowanie systemu nie odnios\u0142y oczekiwanego rezultatu. System ponownie nie by\u0142 w stanie si\u0119 zbootowa\u0107.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<pre class=\"wp-block-code\"><code>sudo update-grub\n\nlsblk\n\nsudo install-grub \/dev\/sdb\n\nsudo reboot<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<p>4. Ostatecznie instalacja zosta\u0142a powt\u00f3rzona bez upgradu pakiet\u00f3w z repozytorium Proxmox Backup Server<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<pre class=\"wp-block-code\"><code>azureuser@vm-pbs2:~$ sudo apt list --upgradable\n\ngrub-common\/stable 2.06-13+pmx2 amd64 &#91;upgradable from: 2.06-13+deb12u1]\n\ngrub-efi-amd64-bin\/stable 2.06-13+pmx2 amd64 &#91;upgradable from: 2.06-13+deb12u1]\n\ngrub-efi-amd64-signed\/stable 1+2.06+13+pmx2 amd64 &#91;upgradable from: 1+2.06+13+deb12u1]\n\ngrub-pc-bin\/stable 2.06-13+pmx2 amd64 &#91;upgradable from: 2.06-13+deb12u1]\n\ngrub2-common\/stable 2.06-13+pmx2 amd64 &#91;upgradable from: 2.06-13+deb12u1]\n\nshim-helpers-amd64-signed\/stable 1+15.8+1+pmx1 amd64 &#91;upgradable from: 1+15.7+1]\n\nshim-signed-common\/stable 1.39+pmx1+15.7-1+pmx1 all &#91;upgradable from: 1.39+15.7-1]\n\nshim-signed\/stable 1.39+pmx1+15.7-1+pmx1 amd64 &#91;upgradable from: 1.39+15.7-1]\n\nshim-unsigned\/stable 15.8-1+pmx1 amd64 &#91;upgradable from: 15.7-1]<\/code><\/pre>\n<\/div>\n<\/div>\n\n\n\n<p>Przypuszczam, \u017ce wyst\u0119puje tu jaka\u015b niezgodno\u015b\u0107 pomi\u0119dzy \u015brodowiskiem Azure i&nbsp;tymi w\/w pakietami.<\/p>\n\n\n\n<p>Przy rozpoznawaniu tego problemu, zauwa\u017cy\u0142em tak\u017ce, \u017ce na tej instalacji wyst\u0119puje dziwne zjawisko zamieniania, przy ka\u017cdym restarcie (reboot wm-pbs2), kolejno\u015bci dysk\u00f3w sda, sdb i sdc.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a>Wydajno\u015b\u0107<\/a><\/h3>\n\n\n\n<p>Opisane rozwi\u0105zanie bardzo sprawnie dzia\u0142a na wybranym rozmiarze serwera Standard B2s (2&nbsp;vcpus, 4 GiB memory). Producent oprogramowania zaleca minimum 2 cores i 2GB RAM.<\/p>\n\n\n\n<p>Ograniczeniem, kt\u00f3re by\u0142o widoczne to parametry \u0142\u0105cza internetowego, kt\u00f3re mam w domu: 600Mb\/30Mb. Przy tworzeniu kopii, ca\u0142o\u015b\u0107 dost\u0119pnego \u0142\u0105cza by\u0142a wykorzystana. Tylko pocz\u0105tkowe kopie realizowa\u0142y si\u0119 na zdalny serwer odpowiednio d\u0142ugo, w zale\u017cno\u015bci od rozmiar\u00f3w. Ca\u0142y backup trwa\u0142 kilka godzin. Dzi\u0119ki funkcji kopii inkrementalnej i deduplikacji czasy realizacji kolejnych backup\u00f3w s\u0105 znacz\u0105co mniejsze. Pe\u0142na kopia przyrostowa wszystkich zasob\u00f3w Proxmox trwa ok. 30 minut.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"605\" height=\"250\" src=\"https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-9.png\" alt=\"\" class=\"wp-image-508\" style=\"width:819px;height:auto\" srcset=\"https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-9.png 605w, https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-9-300x124.png 300w\" sizes=\"auto, (max-width: 605px) 100vw, 605px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><a>Optymalizacja kosztowa<\/a><\/h3>\n\n\n\n<p>Aby zredukowa\u0107 koszty utrzymania infrastruktury w Azure zgodnie z potrzebami i&nbsp;harmonogramami wykonywanych kopii, serwer vm-pbs2 jest automatycznie w\u0142\u0105czany i&nbsp;wy\u0142\u0105czany (deallocate). Do realizacji tej funkcjonalno\u015bci wykorzysta\u0142em komponenty Azure Logic App. vm-pbs2 automatycznie si\u0119 w\u0142\u0105cza codziennie o 3:45, a o 7:45 gdy wszystkie zaplanowane prace s\u0105 wykonane, Azure dealokuje zasoby vm-pbs2. Sam stop maszyny wirtualnej nie wystarcza, bo dalej zasoby s\u0105 zarezerwowane. Dopiero funkcja deallocate vm oddaje zasoby (pami\u0119\u0107 i&nbsp;moc procesora) do innego wykorzystania w chmurze. W tym przypadku uzyskuje si\u0119 znaczne zmniejszenie koszt\u00f3w ponoszonych na wirtualn\u0105 maszyn\u0119. Dla zasob\u00f3w, kt\u00f3re s\u0105 ca\u0142y czas przydzielone, takich jak dyski czy adres IP Azure nalicza pe\u0142ne op\u0142aty.<\/p>\n\n\n\n<p>Poni\u017cszy ekran prezentuje koszty ponoszone na wszystkie zasoby w grupie rg-pbs2. Wida\u0107 obni\u017cenie koszt\u00f3w naliczanych za vm-pbs2 od momentu uruchomienia automatycznej, codziennej dealokacji. Koszty spad\u0142y zgodnie z oczekiwaniem, proporcjonalnie do czasu u\u017cycia maszyny wirtualnej (4h na dzie\u0144) z 1,08 Euro do 0,18 Euro.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"605\" height=\"317\" src=\"https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-10.png\" alt=\"\" class=\"wp-image-509\" style=\"width:819px;height:auto\" srcset=\"https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-10.png 605w, https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-10-300x157.png 300w\" sizes=\"auto, (max-width: 605px) 100vw, 605px\" \/><\/figure>\n\n\n\n<p>Podzia\u0142 koszt\u00f3w na zasoby dla tej us\u0142ugi wygl\u0105da nast\u0119puj\u0105co:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Sta\u0142y adres IP &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0,11 Euro \/ dzie\u0144<\/li>\n\n\n\n<li>Dysk systemowy&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0,18 Euro \/ dzie\u0144<\/li>\n\n\n\n<li>Dysk HDD na dane&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0,18 Euro \/ dzie\u0144<\/li>\n\n\n\n<li>4h maszyny wirtualnej &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0,18 Euro \/ dzie\u0144<\/li>\n<\/ol>\n\n\n\n<p>Razem&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0,65 Euro \/ dzie\u0144<\/p>\n\n\n\n<p>&nbsp;Koszt korzystania z us\u0142ugi, wynosi oko\u0142o 20 Euro miesi\u0119cznie.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><a>Schemat komponent\u00f3w Azure<\/a><\/h3>\n\n\n\n<p>Poni\u017cej przedstawiony jest schemat komponent\u00f3w architektury Azure wykorzystanych do zabezpieczania danych klastra Proxmox w zdalnej lokalizacji.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"399\" height=\"282\" src=\"https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-11.png\" alt=\"\" class=\"wp-image-510\" style=\"width:819px;height:auto\" srcset=\"https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-11.png 399w, https:\/\/activum24.pl\/wp-content\/uploads\/2024\/06\/obraz-11-300x212.png 300w\" sizes=\"auto, (max-width: 399px) 100vw, 399px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Dobr\u0105 praktyk\u0105 przy tworzeniu kopii zapasowych dla kluczowych danych jest \u201eZasada 3-2-1\u201d. Zasada ta zaleca tworzenie 3 kopii\/replik danych, z kt\u00f3rych co najmniej 2 kopie powinny by\u0107 zapisane na r\u00f3\u017cnych no\u015bnikach oraz \u017ce 1 kopia powinna by\u0107 przechowywana w odr\u0119bnej lokalizacji, poza miejscem przetwarzaniach danych, w innym geograficznie miejscu. W zwi\u0105zku z tym, \u017ce w&hellip;&nbsp;<\/p>\n","protected":false},"author":1,"featured_media":506,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","footnotes":""},"categories":[1],"tags":[64,74,35,72,75],"class_list":["post-505","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hardware","tag-azure","tag-backup","tag-cloud","tag-proxmox","tag-proxmox-backup-server"],"_links":{"self":[{"href":"https:\/\/activum24.pl\/index.php\/wp-json\/wp\/v2\/posts\/505","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/activum24.pl\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/activum24.pl\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/activum24.pl\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/activum24.pl\/index.php\/wp-json\/wp\/v2\/comments?post=505"}],"version-history":[{"count":2,"href":"https:\/\/activum24.pl\/index.php\/wp-json\/wp\/v2\/posts\/505\/revisions"}],"predecessor-version":[{"id":517,"href":"https:\/\/activum24.pl\/index.php\/wp-json\/wp\/v2\/posts\/505\/revisions\/517"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/activum24.pl\/index.php\/wp-json\/wp\/v2\/media\/506"}],"wp:attachment":[{"href":"https:\/\/activum24.pl\/index.php\/wp-json\/wp\/v2\/media?parent=505"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/activum24.pl\/index.php\/wp-json\/wp\/v2\/categories?post=505"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/activum24.pl\/index.php\/wp-json\/wp\/v2\/tags?post=505"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}