{"id":14503,"date":"2026-10-21T21:37:29","date_gmt":"2026-10-21T19:37:29","guid":{"rendered":"https:\/\/irg-net.com\/?p=14503"},"modified":"2026-10-21T21:41:55","modified_gmt":"2026-10-21T19:41:55","slug":"removing-vcf-log-management-9-1-to-free-up-2-tb","status":"publish","type":"post","link":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/","title":{"rendered":"Removing VCF Log Management 9.1 to Free Up 2 TB"},"content":{"rendered":"<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"683\" src=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-36.png?resize=1024%2C683&#038;ssl=1\" alt=\"\" class=\"wp-image-14504\" style=\"aspect-ratio:1.4992888417882142;width:327px;height:auto\" srcset=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-36.png?resize=1024%2C683&amp;ssl=1 1024w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-36.png?resize=300%2C200&amp;ssl=1 300w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-36.png?resize=768%2C512&amp;ssl=1 768w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-36.png?w=1536&amp;ssl=1 1536w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">I run a 24\/7 Dell XR4000 Prod&#8217; Cluster that does not have a lot of storage to spare. With VMware vSphere Foundation (VVF) 9.1, Log Management (formerly VCF Operations for Logs) became an integrated service that runs on the VCF Management Services platform, and in my environment it was taking up almost 2 TB. For a cluster of my size that is simply too much, and I do not need centralized log management there. So the decision was easy: Log Management has to go.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">What I expected to be a quick click in the UI turned into a small adventure. There is no uninstall button, I needed a cleanup script from Broadcom, the script needs the <strong>admin@vsp.local<\/strong> password, and I had no idea what that password was. This post walks through everything I did, including both password resets, so you do not have to piece it together from several knowledge base articles like I did.<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Log Management 9.1 can be removed with Broadcom\u2019s cleanup_component.py script. The script logs in as admin@vsp.local. If you do not know that password, you can reset it on a control plane node of the VCF Services Runtime. For that you need SSH access as vmware-system-user, whose password can also be reset. The script runs from any machine with Python 3 \u2013 in VVF there is no SDDC Manager and you do not need one.<\/p>\n<\/blockquote>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">The Environment<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li style=\"font-size:15px\">VMware vSphere Foundation (VVF) 9.1.1, managed through VCF Operations<\/li>\n\n\n\n<li style=\"font-size:15px\">Log Management component version 9.1.1.0.25679624, deployed natively on VCF Management Services<\/li>\n\n\n\n<li style=\"font-size:15px\">Fleet Lifecycle<\/li>\n\n\n\n<li style=\"font-size:15px\">VCF Services Runtime <\/li>\n\n\n\n<li style=\"font-size:15px\">An Ubuntu VM to run the script from<\/li>\n<\/ul>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Why there is no simple uninstall<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">In VCF\/VVF 9.1 several components can be deployed after the initial setup under <strong>Build \u2192 Lifecycle \u2192 VCF Management \u2192 Components \u2192 Add Component<\/strong>. When I looked for the opposite function, there was none. At the time of writing, I could not find an uninstall workflow in that UI.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">What Broadcom provides instead is a Python script, cleanup_component.py, attached to a knowledge base article (KB 441333). William Lam also describes it in a blog post about uninstalling optional Day-N components. A few things to know before you use it:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li style=\"font-size:15px\">The KB lists VCF 9.1 and VVF 9.1 as the environment. It does not apply to 9.0 deployments, where components are deleted directly in Fleet Management.<\/li>\n\n\n\n<li style=\"font-size:15px\">For a <strong>natively deployed Log Management 9.1<\/strong> (running on VCF Management Services) the script removes the solution completely from the fleet. That was my case, and it uses the vsp-component commands.<\/li>\n\n\n\n<li style=\"font-size:15px\">For a Log Management that was <strong>imported from 9.0<\/strong> (OVA appliance), the script only removes the entry from the fleet lifecycle. The old appliance keeps running and has to be deleted separately. That variant uses ova-component.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"has-vivid-red-color has-text-color has-link-color wp-elements-1 wp-block-paragraph\"><strong>Warning:<\/strong> Removing the component is irreversible. Broadcom\u2019s KB explicitly asks you to make sure you have a backup of any logs or data you still need before running the cleanup. If you change your mind later, you can deploy Log Management again via Add Component, but the old data will be gone.<\/p>\n<\/blockquote>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">The Catch: two passwords I did not remember<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The script authenticates against the VCF Services Runtime as admin@vsp.local. Every VCF Services Runtime has two accounts:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li style=\"font-size:15px\"><strong>vmware-system-user<\/strong> is the local OS account that you use to SSH into a Services Runtime node.<\/li>\n\n\n\n<li style=\"font-size:15px\"><strong>admin@vsp.local<\/strong> is the API account used to talk to the components running on the platform. This is the one the cleanup script needs.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Both passwords are set during the deployment of the VCF Management Services. The password you enter in the deployment wizard is used as the initial value for both accounts, and it is only visible in the Deployment UI. I did not have it anymore.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The two resets depend on each other like this:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li style=\"font-size:15px\">For the cleanup script I only need the <strong>admin@vsp.local<\/strong> password.<\/li>\n\n\n\n<li style=\"font-size:15px\">To reset admin@vsp.local, I need a shell on a control plane node of the VCF Services Runtime, which means SSH access as <strong>vmware-system-user<\/strong>.<\/li>\n\n\n\n<li style=\"font-size:15px\">So: if you do not know vmware-system-user either, do Option 1 first. If you do know it, skip straight to Option 2.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Option 1: Resetting the vmware-system-user password<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This follows Broadcom KB 444453. The idea is to boot a control plane node into single-user mode, create a temporary user, and use it to write a new password into a Kubernetes secret. That secret then drives the password update on all VMs of the cluster.<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<blockquote class=\"wp-block-quote has-vivid-cyan-blue-color has-text-color has-link-color wp-elements-2 is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Heads-up:<\/strong> The change is cluster-wide. As soon as the Kubernetes secret is patched, all virtual machines in the cluster update the password for vmware-system-user. I also recommend taking a VM snapshot of the control plane node before you reboot it into single-user mode. That snapshot is my own precaution and is not part of the KB.<\/p>\n<\/blockquote>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">Step 1: Find a control plane node<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">In VCF Operations go to <strong>Build \u2192 Lifecycle \u2192 VCF Management \u2192 Components<\/strong>, open the <strong>VCF services runtime<\/strong>, scroll to the <strong>Nodes<\/strong> section and note the name and IP address of a <strong>Control Plane<\/strong> node. If the control plane node is not visible there, the KB suggests looking at the memory usage of the VMs in vCenter. The control plane node is the one with the lowest memory usage.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Step 2: Boot into single-user mode<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">In the vSphere Client open a console for that VM and choose <strong>Power \u2192 Restart Guest OS<\/strong>. When the Photon bootloader screen appears, press e, move the cursor to the end of the kernel command line, add the following, and press F10:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>rw init=\/bin\/bash\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">rw init<\/span><span style=\"color: #F47067\">=\/<\/span><span style=\"color: #6CB6FF\">bin<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">bash<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">Step 3: Create a temporary user with sudo rights<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">The password for the temporary user needs 15 characters, with no more than three sequential characters of the same class.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>useradd temp\npasswd temp\necho \"temp ALL=(ALL) ALL\" >> \/etc\/sudoers.d\/90-cloud-init-users\nreboot -f\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">useradd temp<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">passwd temp<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">echo <\/span><span style=\"color: #96D0FF\">&quot;temp ALL=(ALL) ALL&quot;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">&gt;&gt;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">etc<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">sudoers.d<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #6CB6FF\">90<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">cloud<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">init<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">users<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">reboot <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">f<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">Step 4: Write the new password into the Kubernetes secret<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">After the reboot I logged in via SSH as temp, switched to root, and ran the following commands:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>sudo su -\n \nCLUSTER=$(kubectl get configmap global-config -n vmsp-platform -o jsonpath='{.data.cluster\\.name}')\n\nread -sp \"Enter password: \" NEW_PASSWORD\n\nexport NEW_PASSWORD\n\nHASH=$(printf '%s' \"${NEW_PASSWORD}\" | vmsp passwd --password-stdin | tr -d '\\n' | base64 -w0)\n\nkubectl patch secret \"${CLUSTER}-ssh-password-secret\" -n vmsp-platform --type=merge -p \"{\\\"data\\\":{\\\"sshPassword\\\":\\\"${HASH}\\\"}}\"\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">sudo su <\/span><span style=\"color: #F47067\">-<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">CLUSTER<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #FF938A; font-style: italic\">$<\/span><span style=\"color: #ADBAC7\">(kubectl get configmap <\/span><span style=\"color: #F47067\">global-<\/span><span style=\"color: #ADBAC7\">config <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">n vmsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">platform <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">o jsonpath=<\/span><span style=\"color: #96D0FF\">&#39;{.data.cluster\\.name}&#39;<\/span><span style=\"color: #ADBAC7\">)<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">read <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">sp <\/span><span style=\"color: #96D0FF\">&quot;Enter password: &quot;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">NEW_PASSWORD<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">export <\/span><span style=\"color: #6CB6FF\">NEW_PASSWORD<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">HASH<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #FF938A; font-style: italic\">$<\/span><span style=\"color: #ADBAC7\">(printf <\/span><span style=\"color: #96D0FF\">&#39;<\/span><span style=\"color: #F47067\">%s<\/span><span style=\"color: #96D0FF\">&#39;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #96D0FF\">&quot;$<\/span><span style=\"color: #F47067\">{NEW_PASSWORD}<\/span><span style=\"color: #96D0FF\">&quot;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> vmsp passwd <\/span><span style=\"color: #FF938A; font-style: italic\">--<\/span><span style=\"color: #ADBAC7\">password<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">stdin <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> tr <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">d <\/span><span style=\"color: #96D0FF\">&#39;<\/span><span style=\"color: #F47067\">\\n<\/span><span style=\"color: #96D0FF\">&#39;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> base64 <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">w0)<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">kubectl patch secret <\/span><span style=\"color: #96D0FF\">&quot;$<\/span><span style=\"color: #F47067\">{CLUSTER}<\/span><span style=\"color: #96D0FF\">-ssh-password-secret&quot;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">n vmsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">platform <\/span><span style=\"color: #FF938A; font-style: italic\">--<\/span><span style=\"color: #6CB6FF\">type<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #ADBAC7\">merge <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">p <\/span><span style=\"color: #96D0FF\">&quot;{<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">data<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">:{<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">sshPassword<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">:<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">${HASH}<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">}}&quot;<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">If the password meets the policy, the vmsp passwd command prints a short validation message similar to this:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>2026\/10\/21 18:17:22 \/opt\/vsp\/password-policy.json not exist\n2026\/10\/21 18:17:22 validating password against local pwquality.conf\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #6CB6FF\">2026<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #6CB6FF\">10<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #6CB6FF\">21<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">18<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">17<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">22<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">opt<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">vsp<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">password<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">policy.json <\/span><span style=\"color: #F47067\">not<\/span><span style=\"color: #ADBAC7\"> exist<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">2026<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #6CB6FF\">10<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #6CB6FF\">21<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">18<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">17<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">22<\/span><span style=\"color: #ADBAC7\"> validating password against local pwquality.conf<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">Step 5: Verify and clean up<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Now check that you can log in as vmware-system-user via SSH or the VM console with the new password. Then remove the temporary user:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>sudo userdel temp\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">sudo userdel temp<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Option 2: Resetting the admin@vsp.local password<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This follows Broadcom KB 444456. It is a much shorter procedure: you replace the password hash in the vsp-admin-secret Kubernetes secret. The KB notes that this is meant for the case where the password cannot be managed through the Fleet Management UI or API.<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">Step 1: Connect to a control plane node<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">I connected via SSH as vmware-system-user to the control plane node. My first attempt at the backup command failed, because kubectl did not find any Kubernetes configuration for that user:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>kubectl get secret vsp-admin-secret -n vmsp-platform -o yaml > vsp-admin-secret.yaml.back\nE1021 18:11:50.753386   13017 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http:\/\/localhost:8080\/api?timeout=32s\\\": dial tcp 127.0.0.1:8080: connect: connection refused\"\n...\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">kubectl get secret vsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">admin<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">secret <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">n vmsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">platform <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">o yaml <\/span><span style=\"color: #F47067\">&gt;<\/span><span style=\"color: #ADBAC7\"> vsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">admin<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">secret.yaml.back<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">E1021 <\/span><span style=\"color: #6CB6FF\">18<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">11<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">50.753386<\/span><span style=\"color: #ADBAC7\">   <\/span><span style=\"color: #6CB6FF\">13017<\/span><span style=\"color: #ADBAC7\"> memcache.go:<\/span><span style=\"color: #6CB6FF\">265<\/span><span style=\"color: #ADBAC7\">] <\/span><span style=\"color: #96D0FF\">&quot;Unhandled Error&quot;<\/span><span style=\"color: #ADBAC7\"> err<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #96D0FF\">&quot;couldn&#39;t get current server API group list: Get <\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">http:\/\/localhost:8080\/api?timeout=32s<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">: dial tcp 127.0.0.1:8080: connect: connection refused&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">...<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">The connection to the server localhost:<\/span><span style=\"color: #6CB6FF\">8080<\/span><span style=\"color: #ADBAC7\"> was refused <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\"> did you specify the right host <\/span><span style=\"color: #F47067\">or<\/span><span style=\"color: #ADBAC7\"> port<\/span><span style=\"color: #FF938A; font-style: italic\">?<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">The fix is to become root and point kubectl to the admin kubeconfig. The KB uses exactly this in its validation section:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>kubectl get secret vsp-admin-secret -n vmsp-platform -o yaml > vsp-admin-secret.yaml.back\nE1021 18:11:50.753386   13017 memcache.go:265] \"Unhandled Error\" err=\"couldn't get current server API group list: Get \\\"http:\/\/localhost:8080\/api?timeout=32s\\\": dial tcp 127.0.0.1:8080: connect: connection refused\"\n...\nThe connection to the server localhost:8080 was refused - did you specify the right host or port?\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">kubectl get secret vsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">admin<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">secret <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">n vmsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">platform <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">o yaml <\/span><span style=\"color: #F47067\">&gt;<\/span><span style=\"color: #ADBAC7\"> vsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">admin<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">secret.yaml.back<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">E1021 <\/span><span style=\"color: #6CB6FF\">18<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">11<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">50.753386<\/span><span style=\"color: #ADBAC7\">   <\/span><span style=\"color: #6CB6FF\">13017<\/span><span style=\"color: #ADBAC7\"> memcache.go:<\/span><span style=\"color: #6CB6FF\">265<\/span><span style=\"color: #ADBAC7\">] <\/span><span style=\"color: #96D0FF\">&quot;Unhandled Error&quot;<\/span><span style=\"color: #ADBAC7\"> err<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #96D0FF\">&quot;couldn&#39;t get current server API group list: Get <\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">http:\/\/localhost:8080\/api?timeout=32s<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">: dial tcp 127.0.0.1:8080: connect: connection refused&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">...<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">The connection to the server localhost:<\/span><span style=\"color: #6CB6FF\">8080<\/span><span style=\"color: #ADBAC7\"> was refused <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\"> did you specify the right host <\/span><span style=\"color: #F47067\">or<\/span><span style=\"color: #ADBAC7\"> port<\/span><span style=\"color: #FF938A; font-style: italic\">?<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<blockquote class=\"wp-block-quote has-vivid-cyan-blue-color has-text-color has-link-color wp-elements-3 is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Watch out:<\/strong> Because of the failed first attempt, the redirect created an empty vsp-admin-secret.yaml.back in my home directory. Always check that your backup file really contains something before you continue. A valid backup starts with apiVersion: v1 and contains the password field.<\/p>\n<\/blockquote>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">Step 2: Back up the secret<\/h4>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>kubectl get secret vsp-admin-secret -n vmsp-platform -o yaml > vsp-admin-secret.yaml.back\nhead -5 vsp-admin-secret.yaml.back\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">kubectl get secret vsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">admin<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">secret <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">n vmsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">platform <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">o yaml <\/span><span style=\"color: #F47067\">&gt;<\/span><span style=\"color: #ADBAC7\"> vsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">admin<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">secret.yaml.back<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">head <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">5<\/span><span style=\"color: #ADBAC7\"> vsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">admin<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">secret.yaml.back<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">Step 3: Choose a new password<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">The new admin@vsp.local password has to meet these requirements:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li style=\"font-size:15px\">15 to 64 characters<\/li>\n\n\n\n<li style=\"font-size:15px\">At least one lowercase letter, one uppercase letter, one number and one special character from @ # $ ^ * !<\/li>\n\n\n\n<li style=\"font-size:15px\">No dictionary word, no palindrome, no more than four monotonic character sequences and no three identical consecutive characters<\/li>\n<\/ul>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">Step 4: Set the new password<\/h4>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>export NEW_PASSWORD='&lt;your-new-password>'\nhash=$(printf '%s' \"${NEW_PASSWORD}\" | vmsp passwd --password-stdin | tr -d \"\\n\" | base64 -w0)\n2026\/10\/21 18:17:22 \/opt\/vsp\/password-policy.json not exist\n2026\/10\/21 18:17:22 validating password against local pwquality.conf\n \nkubectl patch secret vsp-admin-secret -n vmsp-platform -p \"{\\\"data\\\":{\\\"password\\\":\\\"${hash}\\\"}}\"\nsecret\/vsp-admin-secret patched\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">export <\/span><span style=\"color: #6CB6FF\">NEW_PASSWORD<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #96D0FF\">&#39;&lt;your-new-password&gt;&#39;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">hash<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #FF938A; font-style: italic\">$<\/span><span style=\"color: #ADBAC7\">(printf <\/span><span style=\"color: #96D0FF\">&#39;<\/span><span style=\"color: #F47067\">%s<\/span><span style=\"color: #96D0FF\">&#39;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #96D0FF\">&quot;$<\/span><span style=\"color: #F47067\">{NEW_PASSWORD}<\/span><span style=\"color: #96D0FF\">&quot;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> vmsp passwd <\/span><span style=\"color: #FF938A; font-style: italic\">--<\/span><span style=\"color: #ADBAC7\">password<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">stdin <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> tr <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">d <\/span><span style=\"color: #96D0FF\">&quot;<\/span><span style=\"color: #F47067\">\\n<\/span><span style=\"color: #96D0FF\">&quot;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> base64 <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">w0)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">2026<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #6CB6FF\">10<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #6CB6FF\">21<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">18<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">17<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">22<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">opt<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">vsp<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">password<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">policy.json <\/span><span style=\"color: #F47067\">not<\/span><span style=\"color: #ADBAC7\"> exist<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">2026<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #6CB6FF\">10<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #6CB6FF\">21<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">18<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">17<\/span><span style=\"color: #ADBAC7\">:<\/span><span style=\"color: #6CB6FF\">22<\/span><span style=\"color: #ADBAC7\"> validating password against local pwquality.conf<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">kubectl patch secret vsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">admin<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">secret <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">n vmsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">platform <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">p <\/span><span style=\"color: #96D0FF\">&quot;{<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">data<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">:{<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">password<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">:<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">${hash}<\/span><span style=\"color: #F47067\">\\&quot;<\/span><span style=\"color: #96D0FF\">}}&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">secret<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">vsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">admin<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">secret patched<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">Step 5: Check that the password works<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">The KB describes a small check that requests a bearer token with the new password. First I looked up the FQDN of the identity route:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>kubectl get httproute vmsp-identity-server-route -n vmsp-platform\nNAME                         HOSTNAMES                                         AGE\nvmsp-identity-server-route   &#91;\"vvfsvc01.irgnet.wtf\",\"vvffleet01.irgnet.wtf\"&#93;   89d\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">kubectl get httproute vmsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">identity<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">server<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">route <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">n vmsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">platform<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">NAME<\/span><span style=\"color: #ADBAC7\">                         <\/span><span style=\"color: #6CB6FF\">HOSTNAMES<\/span><span style=\"color: #ADBAC7\">                                         <\/span><span style=\"color: #6CB6FF\">AGE<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">vmsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">identity<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">server<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">route   &#91;<\/span><span style=\"color: #96D0FF\">&quot;vvfsvc01.irgnet.wtf&quot;<\/span><span style=\"color: #ADBAC7\">,<\/span><span style=\"color: #96D0FF\">&quot;vvffleet01.irgnet.wtf&quot;<\/span><span style=\"color: #ADBAC7\">&#93;   <\/span><span style=\"color: #FF938A; font-style: italic\">89d<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Then I requested a token with the Services Runtime FQDN. Here is a shortened version of the KB script that does not print the token:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>export BASE_URL=\"vvfsvc01.irgnet.wtf\"\nexport VSP_ADMIN_PASSWORD='&lt;your-new-password>'\n \nTOKEN=$(curl -sk --fail -XPOST \"https:\/\/${BASE_URL}\/api\/v1\/identity\/token\" \\\n  --header 'content-type: application\/x-www-form-urlencoded' \\\n  --data 'grant_type=password' \\\n  --data 'username=admin@vsp.local' \\\n  --data \"password=${VSP_ADMIN_PASSWORD}\" | jq -r '.access_token')\n \n[&#91; -n \"$TOKEN\" &amp;&amp; \"$TOKEN\" != \"null\" &#93;] &amp;&amp; echo \"Auth token obtained.\" || echo \"ERROR: Failed to obtain Bearer token\"\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">export <\/span><span style=\"color: #6CB6FF\">BASE_URL<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #96D0FF\">&quot;vvfsvc01.irgnet.wtf&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">export <\/span><span style=\"color: #6CB6FF\">VSP_ADMIN_PASSWORD<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #96D0FF\">&#39;&lt;your-new-password&gt;&#39;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">TOKEN<\/span><span style=\"color: #F47067\">=<\/span><span style=\"color: #FF938A; font-style: italic\">$<\/span><span style=\"color: #ADBAC7\">(curl <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">sk <\/span><span style=\"color: #FF938A; font-style: italic\">--<\/span><span style=\"color: #ADBAC7\">fail <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">XPOST<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #96D0FF\">&quot;https:\/\/$<\/span><span style=\"color: #F47067\">{BASE_URL}<\/span><span style=\"color: #96D0FF\">\/api\/v1\/identity\/token&quot;<\/span><span style=\"color: #ADBAC7\"> \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  <\/span><span style=\"color: #FF938A; font-style: italic\">--<\/span><span style=\"color: #ADBAC7\">header <\/span><span style=\"color: #96D0FF\">&#39;content-type: application\/x-www-form-urlencoded&#39;<\/span><span style=\"color: #ADBAC7\"> \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  <\/span><span style=\"color: #FF938A; font-style: italic\">--<\/span><span style=\"color: #ADBAC7\">data <\/span><span style=\"color: #96D0FF\">&#39;grant_type=password&#39;<\/span><span style=\"color: #ADBAC7\"> \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  <\/span><span style=\"color: #FF938A; font-style: italic\">--<\/span><span style=\"color: #ADBAC7\">data <\/span><span style=\"color: #96D0FF\">&#39;username=admin@vsp.local&#39;<\/span><span style=\"color: #ADBAC7\"> \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">  <\/span><span style=\"color: #FF938A; font-style: italic\">--<\/span><span style=\"color: #ADBAC7\">data <\/span><span style=\"color: #96D0FF\">&quot;password=$<\/span><span style=\"color: #F47067\">{VSP_ADMIN_PASSWORD}<\/span><span style=\"color: #96D0FF\">&quot;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> jq <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">r <\/span><span style=\"color: #96D0FF\">&#39;.access_token&#39;<\/span><span style=\"color: #ADBAC7\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">[&#91; <\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">n <\/span><span style=\"color: #96D0FF\">&quot;$TOKEN&quot;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #FF938A; font-style: italic\">&amp;&amp;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #96D0FF\">&quot;$TOKEN&quot;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">!=<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #96D0FF\">&quot;null&quot;<\/span><span style=\"color: #ADBAC7\"> &#93;] <\/span><span style=\"color: #FF938A; font-style: italic\">&amp;&amp;<\/span><span style=\"color: #ADBAC7\"> echo <\/span><span style=\"color: #96D0FF\">&quot;Auth token obtained.&quot;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #FF938A; font-style: italic\">||<\/span><span style=\"color: #ADBAC7\"> echo <\/span><span style=\"color: #96D0FF\">&quot;ERROR: Failed to obtain Bearer token&quot;<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Getting a token back means the password is set and the cleanup script will be able to authenticate.<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Running the Cleanup Script<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The KB says the script can run on any system with Python 3 and network access to the Fleet and VCF Management Services components, and recommends the SDDC Manager in VCF environments. VVF has no SDDC Manager, and I did not need one. Looking through the script before running it, I saw that the SDDC Manager check only applies to the vsp-cluster command, which is used for VCF Automation. For vsp-component it is not involved, so I ran it from an Ubuntu VM.<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">Step 1: List the component<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">The list command is read-only and shows which components can be removed. It is also a good test that authentication and networking work:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>python3 cleanup_component.py list vsp-component --fleet-fqdn vvffleet01.irgnet.wtf --vcf-services-runtime-fqdn vvfsvc01.irgnet.wtf\nEnter password for user 'admin@vsp.local' on 'vvfsvc01.irgnet.wtf':\n \nAuthenticating with VSP platform (vvfsvc01.irgnet.wtf)...\nAuthentication successful.\nFetching VSP components from Fleet...\n \nAvailable VSP Components:\n-------------------------------------------------------------------------------------------------------\nID               | Type           | Deployment | Version          | FQDN                 | VCF Services Runtime FQDN\n-------------------------------------------------------------------------------------------------------\n&lt;component-id>   | Log management | VSP        | 9.1.1.0.25679624 | vvflogs01.irgnet.wtf | vvfsvc01.irgnet.wtf\n-------------------------------------------------------------------------------------------------------\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">python3 cleanup_component.py <\/span><span style=\"color: #6CB6FF\">list<\/span><span style=\"color: #ADBAC7\"> vsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">component <\/span><span style=\"color: #FF938A; font-style: italic\">--<\/span><span style=\"color: #ADBAC7\">fleet<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">fqdn vvffleet01.irgnet.wtf <\/span><span style=\"color: #FF938A; font-style: italic\">--<\/span><span style=\"color: #ADBAC7\">vcf<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">services<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">runtime<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">fqdn vvfsvc01.irgnet.wtf<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Enter password <\/span><span style=\"color: #F47067\">for<\/span><span style=\"color: #ADBAC7\"> user <\/span><span style=\"color: #96D0FF\">&#39;admin@vsp.local&#39;<\/span><span style=\"color: #ADBAC7\"> on <\/span><span style=\"color: #96D0FF\">&#39;vvfsvc01.irgnet.wtf&#39;<\/span><span style=\"color: #ADBAC7\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Authenticating <\/span><span style=\"color: #F47067\">with<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">VSP<\/span><span style=\"color: #ADBAC7\"> platform (vvfsvc01.irgnet.wtf)<\/span><span style=\"color: #6CB6FF\">...<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Authentication successful.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Fetching <\/span><span style=\"color: #6CB6FF\">VSP<\/span><span style=\"color: #ADBAC7\"> components <\/span><span style=\"color: #F47067\">from<\/span><span style=\"color: #ADBAC7\"> Fleet<\/span><span style=\"color: #6CB6FF\">...<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Available <\/span><span style=\"color: #6CB6FF\">VSP<\/span><span style=\"color: #ADBAC7\"> Components:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #FF938A; font-style: italic\">------------------------------------------------------------------------------------------------------<\/span><span style=\"color: #F47067\">-<\/span><\/span>\n<span class=\"line\"><span style=\"color: #6CB6FF\">ID<\/span><span style=\"color: #ADBAC7\">               <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Type           <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Deployment <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Version          <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">FQDN<\/span><span style=\"color: #ADBAC7\">                 <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">VCF<\/span><span style=\"color: #ADBAC7\"> Services Runtime <\/span><span style=\"color: #6CB6FF\">FQDN<\/span><\/span>\n<span class=\"line\"><span style=\"color: #FF938A; font-style: italic\">------------------------------------------------------------------------------------------------------<\/span><span style=\"color: #F47067\">-<\/span><\/span>\n<span class=\"line\"><span style=\"color: #F47067\">&lt;<\/span><span style=\"color: #ADBAC7\">component<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">id<\/span><span style=\"color: #F47067\">&gt;<\/span><span style=\"color: #ADBAC7\">   <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Log management <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">VSP<\/span><span style=\"color: #ADBAC7\">        <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">9.1<\/span><span style=\"color: #ADBAC7\">.1.0.25679624 <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> vvflogs01.irgnet.wtf <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> vvfsvc01.irgnet.wtf<\/span><\/span>\n<span class=\"line\"><span style=\"color: #FF938A; font-style: italic\">------------------------------------------------------------------------------------------------------<\/span><span style=\"color: #F47067\">-<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">There was exactly one entry, Log management, with the deployment type VSP. That confirmed it is the native 9.1 variant. I copied its ID for the next step.<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">Step 2: Delete the component<\/h4>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>python3 cleanup_component.py delete vsp-component --component-id &lt;component-id> --fleet-fqdn vvffleet01.irgnet.wtf --vcf-services-runtime-fqdn vvfsvc01.irgnet.wtf\nEnter password for user 'admin@vsp.local' on 'vvfsvc01.irgnet.wtf':\n \nAuthenticating with VSP platform (vvfsvc01.irgnet.wtf)...\nAuthentication successful.\n \nAbout to delete component '&lt;component-id>' of type 'Log management' with fqdn vvflogs01.irgnet.wtf from the system?\nProceed with deletion? (y\/n): y\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">python3 cleanup_component.py delete vsp<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">component <\/span><span style=\"color: #FF938A; font-style: italic\">--<\/span><span style=\"color: #ADBAC7\">component<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">id<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">&lt;<\/span><span style=\"color: #ADBAC7\">component<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">id<\/span><span style=\"color: #F47067\">&gt;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #FF938A; font-style: italic\">--<\/span><span style=\"color: #ADBAC7\">fleet<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">fqdn vvffleet01.irgnet.wtf <\/span><span style=\"color: #FF938A; font-style: italic\">--<\/span><span style=\"color: #ADBAC7\">vcf<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">services<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">runtime<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #ADBAC7\">fqdn vvfsvc01.irgnet.wtf<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Enter password <\/span><span style=\"color: #F47067\">for<\/span><span style=\"color: #ADBAC7\"> user <\/span><span style=\"color: #96D0FF\">&#39;admin@vsp.local&#39;<\/span><span style=\"color: #ADBAC7\"> on <\/span><span style=\"color: #96D0FF\">&#39;vvfsvc01.irgnet.wtf&#39;<\/span><span style=\"color: #ADBAC7\">:<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Authenticating <\/span><span style=\"color: #F47067\">with<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">VSP<\/span><span style=\"color: #ADBAC7\"> platform (vvfsvc01.irgnet.wtf)<\/span><span style=\"color: #6CB6FF\">...<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Authentication successful.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">About to delete component <\/span><span style=\"color: #96D0FF\">&#39;&lt;component-id&gt;&#39;<\/span><span style=\"color: #ADBAC7\"> of <\/span><span style=\"color: #6CB6FF\">type<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #96D0FF\">&#39;Log management&#39;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">with<\/span><span style=\"color: #ADBAC7\"> fqdn vvflogs01.irgnet.wtf <\/span><span style=\"color: #F47067\">from<\/span><span style=\"color: #ADBAC7\"> the system<\/span><span style=\"color: #FF938A; font-style: italic\">?<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Proceed <\/span><span style=\"color: #F47067\">with<\/span><span style=\"color: #ADBAC7\"> deletion<\/span><span style=\"color: #FF938A; font-style: italic\">?<\/span><span style=\"color: #ADBAC7\"> (y<\/span><span style=\"color: #F47067\">\/<\/span><span style=\"color: #ADBAC7\">n): y<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Before anything is deleted, the script shows the type and FQDN of the component and asks for confirmation. This is the moment to double-check that it really says Log management and the FQDN you expect.<\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">What happends next<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The script first deletes the component from the <strong>Fleet<\/strong>. In parallel I could watch the same task in VCF Operations under <strong>Build \u2192 Lifecycle \u2192 VCF Management \u2192 Tasks<\/strong>. It is started by admin@vsp.local and shows four subtasks: unregistering the component from VCF Operations, deleting it from the SDDC lifecycle service, deleting the record and credentials from the SDDC lifecycle inventory, and deleting it from the Fleet lifecycle inventory.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"477\" src=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-37.png?resize=1024%2C477&#038;ssl=1\" alt=\"\" class=\"wp-image-14505\" srcset=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-37.png?resize=1024%2C477&amp;ssl=1 1024w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-37.png?resize=300%2C140&amp;ssl=1 300w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-37.png?resize=766%2C357&amp;ssl=1 766w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-37.png?w=1371&amp;ssl=1 1371w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>Deleting component '&lt;component-id>' from Fleet...\nDelete task initiated (ID: &lt;task-id>)\nWaiting for task &lt;task-id> to complete (timeout: 7200 seconds)...\nTask status: RUNNING | Elapsed time: 0s\nTask status: RUNNING | Elapsed time: 30s\nTask status: RUNNING | Elapsed time: 60s\nTask status: RUNNING | Elapsed time: 90s\nTask status: RUNNING | Elapsed time: 120s\nTask status: RUNNING | Elapsed time: 150s\nTask status: RUNNING | Elapsed time: 180s\nTask status: RUNNING | Elapsed time: 210s\nTask status: RUNNING | Elapsed time: 240s\nTask status: SUCCEEDED | Elapsed time: 270s\nSuccessfully deleted component '&lt;component-id>' from Fleet.\nWaiting 120 seconds before checking if component &lt;component-id> has been successfully deleted from Fleet...\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">Deleting component <\/span><span style=\"color: #96D0FF\">&#39;&lt;component-id&gt;&#39;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">from<\/span><span style=\"color: #ADBAC7\"> Fleet<\/span><span style=\"color: #6CB6FF\">...<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Delete task initiated (<\/span><span style=\"color: #6CB6FF\">ID<\/span><span style=\"color: #ADBAC7\">: <\/span><span style=\"color: #F47067\">&lt;<\/span><span style=\"color: #ADBAC7\">task<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">id<\/span><span style=\"color: #F47067\">&gt;<\/span><span style=\"color: #ADBAC7\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Waiting <\/span><span style=\"color: #F47067\">for<\/span><span style=\"color: #ADBAC7\"> task <\/span><span style=\"color: #F47067\">&lt;<\/span><span style=\"color: #ADBAC7\">task<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">id<\/span><span style=\"color: #F47067\">&gt;<\/span><span style=\"color: #ADBAC7\"> to complete (timeout: <\/span><span style=\"color: #6CB6FF\">7200<\/span><span style=\"color: #ADBAC7\"> seconds)<\/span><span style=\"color: #6CB6FF\">...<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">0s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">30s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">60s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">90s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">120s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">150s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">180s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">210s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">240s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">SUCCEEDED<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">270s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Successfully deleted component <\/span><span style=\"color: #96D0FF\">&#39;&lt;component-id&gt;&#39;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">from<\/span><span style=\"color: #ADBAC7\"> Fleet.<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Waiting <\/span><span style=\"color: #6CB6FF\">120<\/span><span style=\"color: #ADBAC7\"> seconds before checking <\/span><span style=\"color: #F47067\">if<\/span><span style=\"color: #ADBAC7\"> component <\/span><span style=\"color: #F47067\">&lt;<\/span><span style=\"color: #ADBAC7\">component<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">id<\/span><span style=\"color: #F47067\">&gt;<\/span><span style=\"color: #ADBAC7\"> has been successfully deleted <\/span><span style=\"color: #F47067\">from<\/span><span style=\"color: #ADBAC7\"> Fleet<\/span><span style=\"color: #6CB6FF\">...<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">The Fleet part took 270 seconds, and VCF Operations showed the task as completed about four minutes after it started:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"474\" src=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-38.png?resize=1024%2C474&#038;ssl=1\" alt=\"\" class=\"wp-image-14506\" srcset=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-38.png?resize=1024%2C474&amp;ssl=1 1024w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-38.png?resize=300%2C139&amp;ssl=1 300w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-38.png?resize=766%2C355&amp;ssl=1 766w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-38.png?w=1293&amp;ssl=1 1293w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Then the script waits two minutes and checks whether the component is really gone from the Fleet. The 404 message at this point is exactly what you want to see. After that it deletes the component from the <strong>VCF Services Runtime (VSP)<\/strong> itself, which took another six minutes:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:14px;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#22272e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#adbac7;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>Component '&lt;component-id>' does not exist in Fleet (HTTP 404).\nDeleting component '&lt;component-id>' from VSP...\nDelete task initiated (ID: &lt;task-id>)\nWaiting for task &lt;task-id> to complete (timeout: 7200 seconds)...\nTask status: PENDING | Elapsed time: 0s\nTask status: RUNNING | Elapsed time: 30s\nTask status: RUNNING | Elapsed time: 60s\nTask status: RUNNING | Elapsed time: 90s\nTask status: RUNNING | Elapsed time: 120s\nTask status: RUNNING | Elapsed time: 150s\nTask status: RUNNING | Elapsed time: 180s\nTask status: RUNNING | Elapsed time: 210s\nTask status: RUNNING | Elapsed time: 240s\nTask status: RUNNING | Elapsed time: 270s\nTask status: RUNNING | Elapsed time: 300s\nTask status: RUNNING | Elapsed time: 330s\nTask status: SUCCEEDED | Elapsed time: 360s\nSuccessfully deleted component '&lt;component-id>' from VSP.\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark-dimmed\" style=\"background-color: #22272e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ADBAC7\">Component <\/span><span style=\"color: #96D0FF\">&#39;&lt;component-id&gt;&#39;<\/span><span style=\"color: #ADBAC7\"> does <\/span><span style=\"color: #F47067\">not<\/span><span style=\"color: #ADBAC7\"> exist <\/span><span style=\"color: #F47067\">in<\/span><span style=\"color: #ADBAC7\"> Fleet (<\/span><span style=\"color: #6CB6FF\">HTTP<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">404<\/span><span style=\"color: #ADBAC7\">).<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Deleting component <\/span><span style=\"color: #96D0FF\">&#39;&lt;component-id&gt;&#39;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">from<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">VSP...<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Delete task initiated (<\/span><span style=\"color: #6CB6FF\">ID<\/span><span style=\"color: #ADBAC7\">: <\/span><span style=\"color: #F47067\">&lt;<\/span><span style=\"color: #ADBAC7\">task<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">id<\/span><span style=\"color: #F47067\">&gt;<\/span><span style=\"color: #ADBAC7\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Waiting <\/span><span style=\"color: #F47067\">for<\/span><span style=\"color: #ADBAC7\"> task <\/span><span style=\"color: #F47067\">&lt;<\/span><span style=\"color: #ADBAC7\">task<\/span><span style=\"color: #F47067\">-<\/span><span style=\"color: #6CB6FF\">id<\/span><span style=\"color: #F47067\">&gt;<\/span><span style=\"color: #ADBAC7\"> to complete (timeout: <\/span><span style=\"color: #6CB6FF\">7200<\/span><span style=\"color: #ADBAC7\"> seconds)<\/span><span style=\"color: #6CB6FF\">...<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">PENDING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">0s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">30s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">60s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">90s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">120s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">150s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">180s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">210s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">240s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">270s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">300s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">RUNNING<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">330s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Task status: <\/span><span style=\"color: #6CB6FF\">SUCCEEDED<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">|<\/span><span style=\"color: #ADBAC7\"> Elapsed time: <\/span><span style=\"color: #FF938A; font-style: italic\">360s<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ADBAC7\">Successfully deleted component <\/span><span style=\"color: #96D0FF\">&#39;&lt;component-id&gt;&#39;<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #F47067\">from<\/span><span style=\"color: #ADBAC7\"> <\/span><span style=\"color: #6CB6FF\">VSP<\/span><span style=\"color: #ADBAC7\">.<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">The Result<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Back in VCF Operations, the component list under <strong>Build \u2192 Lifecycle \u2192 VCF Management \u2192 Components<\/strong> now only shows VCF Operations, VCF services runtime, Fleet lifecycle, Software depot, SDDC lifecycle and Telemetry. Log management is gone, and it is offered again in the <strong>Add Component<\/strong> menu, which is also how you would deploy it again if you ever need it:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"734\" height=\"507\" src=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-39.png?resize=734%2C507&#038;ssl=1\" alt=\"\" class=\"wp-image-14507\" srcset=\"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-39.png?w=734&amp;ssl=1 734w, https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-39.png?resize=300%2C207&amp;ssl=1 300w\" sizes=\"auto, (max-width: 734px) 100vw, 734px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">And that&#8217;s it from this Blog Post, if you have any question please use the comment section or consider to contact Broadcom Support! \ud83d\ude42<\/p>\n\n\n\n<p class=\"has-vivid-red-color has-text-color has-link-color wp-elements-4 wp-block-paragraph\"><strong>Important: The VCF Log Management Logo is just a fantasy logo made by myself and is not official from Broadcom.<\/strong><\/p>\n\n\n\n<div style=\"height:34px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>I run a 24\/7 Dell XR4000 Prod&#8217; Cluster that does not have a lot of storage to spare. With VMware vSphere Foundation (VVF) 9.1, Log Management (formerly VCF Operations for Logs) became an integrated service that runs on the VCF Management Services platform, and in my environment it was taking up almost 2 TB. For [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":true,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[1,56,19],"tags":[],"class_list":["post-14503","post","type-post","status-publish","format-standard","hentry","category-blog","category-cloud-foundation","category-vmware"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Removing VCF Log Management 9.1 to Free Up 2 TB - irgNET<\/title>\n<meta name=\"description\" content=\"No uninstall button for Log Management in VVF 9.1? Here\u2019s how to remove it, including the password resets you\u2019ll probably need.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Removing VCF Log Management 9.1 to Free Up 2 TB - irgNET\" \/>\n<meta property=\"og:description\" content=\"No uninstall button for Log Management in VVF 9.1? Here\u2019s how to remove it, including the password resets you\u2019ll probably need.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/\" \/>\n<meta property=\"og:site_name\" content=\"irgNET\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-21T19:37:29+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-21T19:41:55+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-36-1024x683.png\" \/>\n<meta name=\"author\" content=\"H. Cemre G\u00fcnay\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@irg_net\" \/>\n<meta name=\"twitter:site\" content=\"@irg_net\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"H. Cemre G\u00fcnay\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/removing-vcf-log-management-9-1-to-free-up-2-tb\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/removing-vcf-log-management-9-1-to-free-up-2-tb\\\/\"},\"author\":{\"name\":\"H. Cemre G\u00fcnay\",\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#\\\/schema\\\/person\\\/71b46e79e8c12bdc8e610214a6621a66\"},\"headline\":\"Removing VCF Log Management 9.1 to Free Up 2 TB\",\"datePublished\":\"2026-10-21T19:37:29+00:00\",\"dateModified\":\"2026-10-21T19:41:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/removing-vcf-log-management-9-1-to-free-up-2-tb\\\/\"},\"wordCount\":1714,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/removing-vcf-log-management-9-1-to-free-up-2-tb\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/irg-net.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/image-36-1024x683.png\",\"articleSection\":[\"Blog\",\"Cloud Foundation\",\"VMware\"],\"inLanguage\":\"en\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/irg-net.com\\\/index.php\\\/removing-vcf-log-management-9-1-to-free-up-2-tb\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/removing-vcf-log-management-9-1-to-free-up-2-tb\\\/\",\"url\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/removing-vcf-log-management-9-1-to-free-up-2-tb\\\/\",\"name\":\"Removing VCF Log Management 9.1 to Free Up 2 TB - irgNET\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/removing-vcf-log-management-9-1-to-free-up-2-tb\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/removing-vcf-log-management-9-1-to-free-up-2-tb\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/irg-net.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/image-36-1024x683.png\",\"datePublished\":\"2026-10-21T19:37:29+00:00\",\"dateModified\":\"2026-10-21T19:41:55+00:00\",\"description\":\"No uninstall button for Log Management in VVF 9.1? Here\u2019s how to remove it, including the password resets you\u2019ll probably need.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/removing-vcf-log-management-9-1-to-free-up-2-tb\\\/#breadcrumb\"},\"inLanguage\":\"en\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/irg-net.com\\\/index.php\\\/removing-vcf-log-management-9-1-to-free-up-2-tb\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en\",\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/removing-vcf-log-management-9-1-to-free-up-2-tb\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/irg-net.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/image-36.png?fit=1536%2C1024&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/irg-net.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/image-36.png?fit=1536%2C1024&ssl=1\",\"width\":1536,\"height\":1024},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/irg-net.com\\\/index.php\\\/removing-vcf-log-management-9-1-to-free-up-2-tb\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Removing VCF Log Management 9.1 to Free Up 2 TB\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#website\",\"url\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/\",\"name\":\"irgNET\",\"description\":\"a virtual Knowledge Base\",\"publisher\":{\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#organization\",\"name\":\"irg-NET\",\"url\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en\",\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/i2.wp.com\\\/irg-net.com\\\/wp-content\\\/uploads\\\/2021\\\/06\\\/cropped-FINAL-Removed-Alpha.png?fit=2048%2C2048&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i2.wp.com\\\/irg-net.com\\\/wp-content\\\/uploads\\\/2021\\\/06\\\/cropped-FINAL-Removed-Alpha.png?fit=2048%2C2048&ssl=1\",\"width\":2048,\"height\":2048,\"caption\":\"irg-NET\"},\"image\":{\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/irg_net\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/h-cemre-g\u00fcnay-2b61601b4\\\/\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UC8GknhO5YMAkAoVxppu6aaQ\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/irgnet-ga3w6nfbvw.live-website.com\\\/#\\\/schema\\\/person\\\/71b46e79e8c12bdc8e610214a6621a66\",\"name\":\"H. Cemre G\u00fcnay\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/15f5d90a0ec651cb5003605e56e8ba104f93bc11230562284db56c845df9d54d?s=96&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/15f5d90a0ec651cb5003605e56e8ba104f93bc11230562284db56c845df9d54d?s=96&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/15f5d90a0ec651cb5003605e56e8ba104f93bc11230562284db56c845df9d54d?s=96&r=g\",\"caption\":\"H. Cemre G\u00fcnay\"},\"sameAs\":[\"http:\\\/\\\/192.168.34.155\\\/wordpress\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Removing VCF Log Management 9.1 to Free Up 2 TB - irgNET","description":"No uninstall button for Log Management in VVF 9.1? Here\u2019s how to remove it, including the password resets you\u2019ll probably need.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/","og_locale":"en_US","og_type":"article","og_title":"Removing VCF Log Management 9.1 to Free Up 2 TB - irgNET","og_description":"No uninstall button for Log Management in VVF 9.1? Here\u2019s how to remove it, including the password resets you\u2019ll probably need.","og_url":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/","og_site_name":"irgNET","article_published_time":"2026-10-21T19:37:29+00:00","article_modified_time":"2026-10-21T19:41:55+00:00","og_image":[{"url":"https:\/\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-36-1024x683.png","type":"","width":"","height":""}],"author":"H. Cemre G\u00fcnay","twitter_card":"summary_large_image","twitter_creator":"@irg_net","twitter_site":"@irg_net","twitter_misc":{"Written by":"H. Cemre G\u00fcnay","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/#article","isPartOf":{"@id":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/"},"author":{"name":"H. Cemre G\u00fcnay","@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#\/schema\/person\/71b46e79e8c12bdc8e610214a6621a66"},"headline":"Removing VCF Log Management 9.1 to Free Up 2 TB","datePublished":"2026-10-21T19:37:29+00:00","dateModified":"2026-10-21T19:41:55+00:00","mainEntityOfPage":{"@id":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/"},"wordCount":1714,"commentCount":0,"publisher":{"@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#organization"},"image":{"@id":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/#primaryimage"},"thumbnailUrl":"https:\/\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-36-1024x683.png","articleSection":["Blog","Cloud Foundation","VMware"],"inLanguage":"en","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/","url":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/","name":"Removing VCF Log Management 9.1 to Free Up 2 TB - irgNET","isPartOf":{"@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/#primaryimage"},"image":{"@id":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/#primaryimage"},"thumbnailUrl":"https:\/\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-36-1024x683.png","datePublished":"2026-10-21T19:37:29+00:00","dateModified":"2026-10-21T19:41:55+00:00","description":"No uninstall button for Log Management in VVF 9.1? Here\u2019s how to remove it, including the password resets you\u2019ll probably need.","breadcrumb":{"@id":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/#breadcrumb"},"inLanguage":"en","potentialAction":[{"@type":"ReadAction","target":["https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/"]}]},{"@type":"ImageObject","inLanguage":"en","@id":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/#primaryimage","url":"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-36.png?fit=1536%2C1024&ssl=1","contentUrl":"https:\/\/i0.wp.com\/irg-net.com\/wp-content\/uploads\/2026\/10\/image-36.png?fit=1536%2C1024&ssl=1","width":1536,"height":1024},{"@type":"BreadcrumbList","@id":"https:\/\/irg-net.com\/index.php\/removing-vcf-log-management-9-1-to-free-up-2-tb\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/"},{"@type":"ListItem","position":2,"name":"Removing VCF Log Management 9.1 to Free Up 2 TB"}]},{"@type":"WebSite","@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#website","url":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/","name":"irgNET","description":"a virtual Knowledge Base","publisher":{"@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en"},{"@type":"Organization","@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#organization","name":"irg-NET","url":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/","logo":{"@type":"ImageObject","inLanguage":"en","@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#\/schema\/logo\/image\/","url":"https:\/\/i2.wp.com\/irg-net.com\/wp-content\/uploads\/2021\/06\/cropped-FINAL-Removed-Alpha.png?fit=2048%2C2048&ssl=1","contentUrl":"https:\/\/i2.wp.com\/irg-net.com\/wp-content\/uploads\/2021\/06\/cropped-FINAL-Removed-Alpha.png?fit=2048%2C2048&ssl=1","width":2048,"height":2048,"caption":"irg-NET"},"image":{"@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/irg_net","https:\/\/www.linkedin.com\/in\/h-cemre-g\u00fcnay-2b61601b4\/","https:\/\/www.youtube.com\/channel\/UC8GknhO5YMAkAoVxppu6aaQ"]},{"@type":"Person","@id":"https:\/\/irgnet-ga3w6nfbvw.live-website.com\/#\/schema\/person\/71b46e79e8c12bdc8e610214a6621a66","name":"H. Cemre G\u00fcnay","image":{"@type":"ImageObject","inLanguage":"en","@id":"https:\/\/secure.gravatar.com\/avatar\/15f5d90a0ec651cb5003605e56e8ba104f93bc11230562284db56c845df9d54d?s=96&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/15f5d90a0ec651cb5003605e56e8ba104f93bc11230562284db56c845df9d54d?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/15f5d90a0ec651cb5003605e56e8ba104f93bc11230562284db56c845df9d54d?s=96&r=g","caption":"H. Cemre G\u00fcnay"},"sameAs":["http:\/\/192.168.34.155\/wordpress"]}]}},"jetpack_sharing_enabled":true,"jetpack-related-posts":[],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/posts\/14503","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/comments?post=14503"}],"version-history":[{"count":4,"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/posts\/14503\/revisions"}],"predecessor-version":[{"id":14514,"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/posts\/14503\/revisions\/14514"}],"wp:attachment":[{"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/media?parent=14503"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/categories?post=14503"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/irg-net.com\/index.php\/wp-json\/wp\/v2\/tags?post=14503"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}