{"id":10,"date":"2026-03-19T14:19:03","date_gmt":"2026-03-19T14:19:03","guid":{"rendered":"https:\/\/netguide.io\/tools\/?p=10"},"modified":"2026-03-19T14:59:37","modified_gmt":"2026-03-19T14:59:37","slug":"ceph-kapazitatsrechner","status":"publish","type":"post","link":"https:\/\/netguide.io\/tools\/de\/ceph-kapazitatsrechner\/","title":{"rendered":"Ceph Kapazit\u00e4tsrechner"},"content":{"rendered":"\n<div class=\"wp-ceph-pro-container\">\n    <h3 class=\"wp-ceph-title\">Ceph Kapazit\u00e4tsrechner<\/h3>\n\n    <div class=\"wp-ceph-tabs\">\n        <button id=\"btn-simple\" class=\"active\" onclick=\"setCalcMode('simple')\">Standard<\/button>\n        <button id=\"btn-manual\" onclick=\"setCalcMode('manual')\">Manueller Modus (Nodes einzeln)<\/button>\n    <\/div>\n\n    <div class=\"wp-ceph-grid\">\n        <div class=\"wp-ceph-input-group\">\n            <label>Basis-Einheit der Disks<\/label>\n            <select id=\"wp-unit\" onchange=\"calculateCeph()\">\n                <option value=\"1000\">Dezimal (TB = 1000 GB)<\/option>\n                <option value=\"1024\">Bin\u00e4r (TiB = 1024 GiB)<\/option>\n            <\/select>\n        <\/div>\n        <div class=\"wp-ceph-input-group\">\n            <label>Redundanz-Modus<\/label>\n            <select id=\"wp-mode\" onchange=\"toggleCephMode()\">\n                <option value=\"replica\">Replication<\/option>\n                <option value=\"ec\">Erasure Coding (EC)<\/option>\n            <\/select>\n        <\/div>\n    <\/div>\n\n    <div id=\"section-simple\">\n        <div class=\"wp-ceph-grid\">\n            <div class=\"wp-ceph-input-group\">\n                <label>Anzahl Nodes<\/label>\n                <input type=\"number\" id=\"wp-nodes\" value=\"3\" min=\"1\" oninput=\"calculateCeph()\">\n            <\/div>\n            <div class=\"wp-ceph-input-group\">\n                <label>Disks pro Node<\/label>\n                <input type=\"number\" id=\"wp-osds\" value=\"10\" min=\"1\" oninput=\"calculateCeph()\">\n            <\/div>\n            <div class=\"wp-ceph-input-group\">\n                <label>Gr\u00f6\u00dfe pro Disk (TB\/TiB)<\/label>\n                <input type=\"number\" id=\"wp-size\" value=\"12\" min=\"0.1\" step=\"0.1\" oninput=\"calculateCeph()\">\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <div id=\"section-manual\" style=\"display:none;\">\n        <label style=\"font-size:12px; font-weight:bold;\">Node-Konfiguration:<\/label>\n        <div id=\"manual-nodes-container\"><\/div>\n        <button class=\"wp-ceph-add-btn\" onclick=\"addManualNode()\">+ Node hinzuf\u00fcgen<\/button>\n    <\/div>\n\n    <div id=\"wp-replica-settings\" class=\"wp-ceph-settings-box\">\n        <label>Replication Factor<\/label>\n        <input type=\"number\" id=\"wp-replica-factor\" value=\"3\" min=\"1\" oninput=\"calculateCeph()\">\n    <\/div>\n\n    <div id=\"wp-ec-settings\" class=\"wp-ceph-settings-box\" style=\"display:none;\">\n        <div class=\"wp-ceph-grid\">\n            <div class=\"wp-ceph-input-group\"><label>Data (k)<\/label><input type=\"number\" id=\"wp-ec-k\" value=\"4\" oninput=\"calculateCeph()\"><\/div>\n            <div class=\"wp-ceph-input-group\"><label>Coding (m)<\/label><input type=\"number\" id=\"wp-ec-m\" value=\"2\" oninput=\"calculateCeph()\"><\/div>\n        <\/div>\n    <\/div>\n\n    <div class=\"wp-ceph-checkbox-group\">\n        <input type=\"checkbox\" id=\"wp-accept-degraded\" onchange=\"calculateCeph()\">\n        <label for=\"wp-accept-degraded\">Accept degraded PGs (Nicht empfohlen &#8211; kein Recovery-Platz)<\/label>\n    <\/div>\n\n    <div class=\"wp-ceph-results\">\n        <div class=\"wp-ceph-res-item\"><span>Raw (Marketing TB):<\/span><span id=\"res-raw-tb\">0 TB<\/span><\/div>\n        <div class=\"wp-ceph-res-item\"><span>Raw (Ceph TiB):<\/span><span id=\"res-raw-tib\">0 TiB<\/span><\/div>\n        <div class=\"wp-ceph-res-item wp-ceph-total\"><span>Nutzbar (Netto):<\/span><span id=\"res-usable\">0 TiB<\/span><\/div>\n        <div class=\"wp-ceph-res-item\"><span id=\"safe-label\">Sicherer F\u00fcllgrad (Full Ratio):<\/span><span id=\"res-safe\" class=\"wp-ceph-safe-val\">0 TiB<\/span><\/div>\n        <div class=\"wp-ceph-res-item\"><span>Effizienz:<\/span><span id=\"res-eff\" style=\"font-weight:bold;\">0 %<\/span><\/div>\n    <\/div>\n\n    <style>\n        .wp-ceph-pro-container { max-width: 100%; background: #fff; padding: 20px; border: 1px solid #ddd; border-radius: 10px; font-family: -apple-system, sans-serif; color: #333; }\n        .wp-ceph-title { margin: 0 0 15px 0; color: #2271b1; font-size: 1.4rem; }\n        .wp-ceph-tabs { display: flex; gap: 5px; margin-bottom: 15px; }\n        .wp-ceph-tabs button { flex: 1; padding: 8px; border: 1px solid #ccc; background: #f7f7f7; cursor: pointer; font-size: 12px; border-radius: 4px; }\n        .wp-ceph-tabs button.active { background: #2271b1; color: #fff; border-color: #2271b1; }\n        .wp-ceph-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 12px; margin-bottom: 10px; }\n        .wp-ceph-input-group label { display: block; font-size: 11px; font-weight: bold; margin-bottom: 4px; text-transform: uppercase; color: #666; }\n        .wp-ceph-input-group input, .wp-ceph-input-group select { width: 100%; padding: 8px; border: 1px solid #ccc; border-radius: 4px; }\n        .wp-ceph-settings-box { background: #f0f6fb; padding: 12px; border-radius: 6px; margin: 10px 0; border: 1px solid #d1e1ef; }\n        .wp-ceph-checkbox-group { margin: 15px 0; font-size: 12px; display: flex; align-items: center; gap: 8px; color: #d63638; }\n        .wp-ceph-results { margin-top: 20px; border-top: 2px solid #eee; padding-top: 15px; }\n        .wp-ceph-res-item { display: flex; justify-content: space-between; margin-bottom: 6px; font-size: 14px; }\n        .wp-ceph-total { font-weight: bold; font-size: 18px; color: #2271b1; margin: 10px 0; border-y: 1px solid #eee; padding: 5px 0; }\n        .wp-ceph-safe-val { color: #d63638; font-weight: bold; }\n        .manual-node-row { display: grid; grid-template-columns: 1fr 1fr 40px; gap: 8px; margin-bottom: 8px; align-items: end; }\n        .wp-ceph-add-btn { background: #46b450; color: #fff; border: none; padding: 5px 10px; border-radius: 4px; cursor: pointer; font-size: 12px; margin-top: 5px; }\n        .btn-del { background: #d63638; color: #fff; border: none; border-radius: 4px; cursor: pointer; height: 35px; }\n    <\/style>\n\n    <script>\n        let calcMode = 'simple';\n        let manualNodes = [{osds: 10, size: 12}];\n\n        function setCalcMode(m) {\n            calcMode = m;\n            document.getElementById('btn-simple').className = (m === 'simple' ? 'active' : '');\n            document.getElementById('btn-manual').className = (m === 'manual' ? 'active' : '');\n            document.getElementById('section-simple').style.display = (m === 'simple' ? 'block' : 'none');\n            document.getElementById('section-manual').style.display = (m === 'manual' ? 'block' : 'none');\n            if(m === 'manual') renderManualNodes();\n            calculateCeph();\n        }\n\n        function addManualNode() {\n            manualNodes.push({osds: 10, size: 12});\n            renderManualNodes();\n            calculateCeph();\n        }\n\n        function removeNode(i) {\n            manualNodes.splice(i, 1);\n            renderManualNodes();\n            calculateCeph();\n        }\n\n        function renderManualNodes() {\n            const container = document.getElementById('manual-nodes-container');\n            container.innerHTML = '';\n            manualNodes.forEach((node, i) => {\n                const div = document.createElement('div');\n                div.className = 'manual-node-row';\n                div.innerHTML = `\n                    <div class=\"wp-ceph-input-group\"><label>OSDs<\/label><input type=\"number\" value=\"${node.osds}\" oninput=\"manualNodes[${i}].osds=parseFloat(this.value);calculateCeph()\"><\/div>\n                    <div class=\"wp-ceph-input-group\"><label>Gr\u00f6\u00dfe<\/label><input type=\"number\" value=\"${node.size}\" oninput=\"manualNodes[${i}].size=parseFloat(this.value);calculateCeph()\"><\/div>\n                    <button class=\"btn-del\" onclick=\"removeNode(${i})\">\u00d7<\/button>\n                `;\n                container.appendChild(div);\n            });\n        }\n\n        function toggleCephMode() {\n            const mode = document.getElementById('wp-mode').value;\n            document.getElementById('wp-replica-settings').style.display = (mode === 'replica') ? 'block' : 'none';\n            document.getElementById('wp-ec-settings').style.display = (mode === 'ec') ? 'block' : 'none';\n            calculateCeph();\n        }\n\n        function calculateCeph() {\n            const unit = parseFloat(document.getElementById('wp-unit').value);\n            const mode = document.getElementById('wp-mode').value;\n            const acceptDegraded = document.getElementById('wp-accept-degraded').checked;\n            \n            let rawDecimal = 0;\n            let largestNodeRaw = 0;\n\n            if (calcMode === 'simple') {\n                const n = parseFloat(document.getElementById('wp-nodes').value) || 0;\n                const o = parseFloat(document.getElementById('wp-osds').value) || 0;\n                const s = parseFloat(document.getElementById('wp-size').value) || 0;\n                rawDecimal = n * o * s;\n                largestNodeRaw = o * s;\n                if (unit === 1024) { rawDecimal = rawDecimal * (1024**4 \/ 1000**4); }\n            } else {\n                manualNodes.forEach(node => {\n                    let nodeRaw = (node.osds || 0) * (node.size || 0);\n                    rawDecimal += nodeRaw;\n                    if(nodeRaw > largestNodeRaw) largestNodeRaw = nodeRaw;\n                });\n                if (unit === 1024) { rawDecimal = rawDecimal * (1024**4 \/ 1000**4); }\n            }\n\n            \/\/ Umrechnung in TiB f\u00fcr Ceph-Logik\n            const rawTiB = unit === 1000 ? rawDecimal * (1000**4 \/ 1024**4) : rawDecimal;\n            const largestNodeTiB = unit === 1000 ? largestNodeRaw * (1000**4 \/ 1024**4) : largestNodeRaw;\n\n            let usableTiB = 0;\n            let efficiency = 0;\n\n            if (mode === 'replica') {\n                const f = parseFloat(document.getElementById('wp-replica-factor').value) || 1;\n                usableTiB = rawTiB \/ f;\n                efficiency = (1 \/ f) * 100;\n            } else {\n                const k = parseFloat(document.getElementById('wp-ec-k').value) || 1;\n                const m = parseFloat(document.getElementById('wp-ec-m').value) || 1;\n                usableTiB = rawTiB * (k \/ (k + m));\n                efficiency = (k \/ (k + m)) * 100;\n            }\n\n            \/\/ Safe Capacity Logic\n            \/\/ Regel: 80% F\u00fcllgrad minus Platz f\u00fcr einen kompletten Node-Ausfall (Recovery)\n            let safeTiB = usableTiB * 0.8; \n            if (!acceptDegraded) {\n                const recoveryReserve = (largestNodeTiB \/ rawTiB) * usableTiB;\n                safeTiB = (usableTiB - recoveryReserve) * 0.8;\n                document.getElementById('safe-label').innerText = \"Sicher (80% + N-1 Reserve):\";\n            } else {\n                document.getElementById('safe-label').innerText = \"Sicher (80% F\u00fcllgrad):\";\n            }\n\n            document.getElementById('res-raw-tb').innerText = (rawTiB * (1024**4 \/ 1000**4)).toFixed(1) + \" TB\";\n            document.getElementById('res-raw-tib').innerText = rawTiB.toFixed(1) + \" TiB\";\n            document.getElementById('res-usable').innerText = usableTiB.toFixed(1) + \" TiB\";\n            document.getElementById('res-safe').innerText = Math.max(0, safeTiB).toFixed(1) + \" TiB\";\n            document.getElementById('res-eff').innerText = efficiency.toFixed(1) + \" %\";\n        }\n\n        \/\/ Init\n        calculateCeph();\n    <\/script>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Erl\u00e4uterung der Einstellungen<\/h2>\n\n\n\n<p>Damit die Planung deines Ceph-Clusters gelingt, ist es wichtig, die technischen Parameter des Rechners zu verstehen:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Basis-Einheit (TB vs. TiB):<\/strong> Festplattenhersteller rechnen in Dezimal-Terabyte (Basis 1000). Ceph und Betriebssysteme rechnen jedoch in Bin\u00e4r-Tebibyte (Basis 1024). Eine &#8220;12 TB&#8221; Platte bietet in Ceph nur etwa <strong>10,9 TiB<\/strong> Rohkapazit\u00e4t.<\/li>\n\n\n\n<li><strong>Redundanz-Modus:<\/strong> * <strong>Replication:<\/strong> Erstellt vollst\u00e4ndige Kopien (Standard: 3x). Sehr performant, aber teuer (33% Effizienz).\n<ul class=\"wp-block-list\">\n<li><strong>Erasure Coding (EC):<\/strong> Zerlegt Daten in H\u00e4ppchen ($k$) und f\u00fcgt Pr\u00fcfsummen ($m$) hinzu. H\u00f6here Effizienz (oft > 60%), aber rechenintensiver.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>N-1 Reserve:<\/strong> In einem gesunden Cluster muss immer genug Platz frei sein, damit beim Ausfall des gr\u00f6\u00dften Nodes dessen Daten auf die restlichen Server verteilt werden k\u00f6nnen (Self-Healing).<\/li>\n\n\n\n<li><strong>Sicherer F\u00fcllgrad (80%):<\/strong> Ceph sollte niemals zu 100% gef\u00fcllt werden. Ab 85% (&#8220;Nearfull&#8221;) sinkt die Performance drastisch, ab 95% (&#8220;Full&#8221;) stoppt Ceph alle Schreibvorg\u00e4nge, um Datenverlust zu verhindern.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Was ist Ceph?<\/h2>\n\n\n\n<p>Ceph ist eine <strong>Open-Source Software-Defined-Storage-L\u00f6sung<\/strong>, die darauf ausgelegt ist, auf Standard-Hardware (Commodity Servers) zu laufen. Anstatt einen einzelnen, teuren Storage-Filer zu kaufen, verbindet Ceph viele einzelne Server (Nodes) zu einem riesigen Speicher-Pool.<\/p>\n\n\n\n<p>Die Kernvorteile von Ceph sind:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Kein Single Point of Failure:<\/strong> F\u00e4llt ein Server oder eine Platte aus, bleiben die Daten verf\u00fcgbar.<\/li>\n\n\n\n<li><strong>Unbegrenzte Skalierbarkeit:<\/strong> Du kannst jederzeit neue Nodes hinzuf\u00fcgen, w\u00e4hrend das System l\u00e4uft.<\/li>\n\n\n\n<li><strong>Self-Healing:<\/strong> Das System erkennt Fehler selbstst\u00e4ndig und stellt die gew\u00fcnschte Redundanz ohne manuelles Eingreifen wieder her.<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Best Practices f\u00fcr maximale Effizienz<\/h2>\n\n\n\n<p>Die Planung eines Clusters ist immer ein Abw\u00e4gen zwischen Kosten (Effizienz), Sicherheit und Performance.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Wie viele Nodes werden ben\u00f6tigt?<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Replikation (3x):<\/strong> Du brauchst <strong>mindestens 3 Nodes<\/strong>. Mit nur 2 Nodes h\u00e4ttest du bei einem Ausfall keine Kopie mehr \u00fcbrig, um das System wieder &#8220;gesund&#8221; zu machen.<\/li>\n\n\n\n<li><strong>Erasure Coding:<\/strong> Die Faustformel lautet <strong>$k + m + 1$ Nodes<\/strong>. F\u00fcr ein EC 4+2 Profil (4 Daten-Chunks, 2 Sicherheits-Chunks) solltest du also mindestens 7 Nodes einplanen. So kann ein kompletter Server ausfallen und Ceph hat immer noch genug Ziele, um die Daten wieder im $4+2$ Schema zu verteilen.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Effizienz-Vergleich<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><td><strong>Strategie<\/strong><\/td><td><strong>Min. Nodes (Empfohlen)<\/strong><\/td><td><strong>Effizienz (Netto\/Brutto)<\/strong><\/td><td><strong>Sicherheit<\/strong><\/td><\/tr><\/thead><tbody><tr><td><strong>Replica 3x<\/strong><\/td><td>3<\/td><td>33,3%<\/td><td>Hoch (schnelles Recovery)<\/td><\/tr><tr><td><strong>EC 2+1<\/strong><\/td><td>4<\/td><td>66,7%<\/td><td>Mittel (1 Fehler toleriert)<\/td><\/tr><tr><td><strong>EC 4+2<\/strong><\/td><td>7<\/td><td>66,7%<\/td><td>Sehr Hoch (2 Fehler toleriert)<\/td><\/tr><tr><td><strong>EC 8+3<\/strong><\/td><td>12<\/td><td>72,7%<\/td><td>Extrem Hoch<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Tipps f\u00fcr den Aufbau<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Gleiche OSD-Gr\u00f6\u00dfen:<\/strong> Nutze nach M\u00f6glichkeit Festplatten derselben Gr\u00f6\u00dfe. Ceph f\u00fcllt OSDs prozentual. Hast du gemischte Gr\u00f6\u00dfen (z.B. 4 TB und 12 TB), werden die kleinen Platten viel schneller voll, was das gesamte Cluster blockieren kann.<\/li>\n\n\n\n<li><strong>Netzwerk-Bandbreite:<\/strong> F\u00fcr Ceph sind <strong>10 GbE Netzwerke<\/strong> das absolute Minimum. Im Falle eines Festplattenausfalls muss Ceph Terabytes an Daten \u00fcber das Netzwerk kopieren. Ein 1 GbE Netz w\u00fcrde hier zum Flaschenhals und die Performance deiner Anwendungen lahmlegen.<\/li>\n\n\n\n<li><strong>OSD-Verteilung:<\/strong> Plane etwa 10 bis 15 OSDs (Disks) pro Node ein. Zu viele Platten in einem einzelnen Server erh\u00f6hen das Risiko: F\u00e4llt dieser eine Server aus, muss das Netzwerk eine gewaltige Menge an Daten gleichzeitig kompensieren.<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>Ceph Kapazit\u00e4tsrechner Standard Manueller Modus (Nodes einzeln) Basis-Einheit der Disks Dezimal (TB = 1000 GB)Bin\u00e4r (TiB = 1024 GiB) Redundanz-Modus [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[69],"tags":[16,10,12,14,18,20],"class_list":["post-10","post","type-post","status-publish","format-standard","hentry","category-rechner-calculator","tag-calculator","tag-ceph","tag-proxmox","tag-rechner","tag-speicher","tag-storage"],"_links":{"self":[{"href":"https:\/\/netguide.io\/tools\/wp-json\/wp\/v2\/posts\/10","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/netguide.io\/tools\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/netguide.io\/tools\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/netguide.io\/tools\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/netguide.io\/tools\/wp-json\/wp\/v2\/comments?post=10"}],"version-history":[{"count":2,"href":"https:\/\/netguide.io\/tools\/wp-json\/wp\/v2\/posts\/10\/revisions"}],"predecessor-version":[{"id":14,"href":"https:\/\/netguide.io\/tools\/wp-json\/wp\/v2\/posts\/10\/revisions\/14"}],"wp:attachment":[{"href":"https:\/\/netguide.io\/tools\/wp-json\/wp\/v2\/media?parent=10"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/netguide.io\/tools\/wp-json\/wp\/v2\/categories?post=10"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/netguide.io\/tools\/wp-json\/wp\/v2\/tags?post=10"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}