If you run more than one Proxmox VE cluster, you log in to each web page again and again. Proxmox Datacenter Manager (PDM) fixes this. It gives you one place to see all your clusters, nodes, VMs, containers, storage, and Ceph health.
In this guide, you will follow a full Proxmox Datacenter Manager 1.1 setup from zero to a working multi-cluster view.
Management Node and Cluster Layout
In this guide, you will set up one small management server and connect two Proxmox VE clusters to it. The management server runs Proxmox Datacenter Manager (PDM). Each cluster stays in its own location and keeps running on its own.
PDM only connects to each cluster through its management IPs, so you can see and manage everything from one place. Here is the full layout:
Admin VPN / office IPs | port 8443 (HTTPS) | +---------------------------+ | PDM management node | | pdm01.example.com | | 203.0.113.10 | +---------------------------+ | | port 8006 (API) port 8006 (API) | | +-------------------------+ +-------------------------+ | Cluster A (Dubai) | | Cluster B (Frankfurt) | | pve1 192.168.1.11 | | pveb1 192.168.2.11 | | pve2 192.168.1.12 | | pveb2 192.168.2.12 | | pve3 192.168.1.13 | | pveb3 192.168.2.13 | +-------------------------+ +-------------------------+
Use your own IP addresses and names. The IPs above are only examples.
Two important rules for the whole guide:
- PDM runs on its own server. It does not join any cluster, and it does not need the corosync network. No Proxmox VE cluster needs PDM to keep running.
- PDM talks to each cluster only on the management IPs, on port
8006.
Prerequisites for PDM Setup
Before you begin your Proxmox Datacenter Manager 1.1 setup, make sure to make these things ready:
- One small server or VPS for PDM. The official minimum for testing is 1 CPU core, 1 GiB RAM, and 10 GB disk. For real use, it is recommended to use a modern 64-bit CPU with at least 2 cores, at least 4 GiB RAM, and 40 GB or more of disk.
- Two or more working Proxmox VE clusters. This guide uses the same style as our Proxmox HA cluster guide: three nodes per cluster, corosync on a private network, and management IPs on a separate network. PDM only uses the management IPs.
- Root access to one node in each cluster.
- A DNS name for the PDM server, such as
pdm01.example.com.
- A VPN or a fixed list of admin IP addresses.
If your clusters run in different data centers, use dedicated servers with private networking for the Proxmox nodes. You can see the options on the PerLod dedicated server hosting page.
Proxmox Datacenter Manager 1.1 Setup Plan
Before you install anything, take a few minutes to plan. A clear plan helps you avoid changes later, like a wrong hostname or the wrong network for your nodes. First, decide these points:
| Item |
Example value |
Why it matters |
| PDM hostname |
pdm01.example.com |
Use a full name (FQDN). It is easy to remember and works for TLS. |
| PDM web port |
8443 |
PDM uses HTTPS on port 8443. |
| Cluster API port |
8006 |
PDM connects to each Proxmox VE node here. |
| Node address in PDM |
Management IP |
Never use the corosync IPs (for example 10.10.10.x). |
| Remote IDs |
dubai-prod, frankfurt-prod |
A short name for each cluster. Pick names you can use in permissions later. |
| Cluster login |
One API token per cluster |
You can remove one token without touching other clusters. |
Step 1: Install PDM
There are two ways to do the Proxmox Datacenter Manager 1.1 setup on the server. Use Option A if you can boot an ISO, such as bare metal, Proxmox VM, or a VPS with ISO upload. Use Option B if your VPS only gives you a Debian image.
Option A: Install From the ISO (Recommended)
First, you must download the PDM ISO from the official Proxmox downloads page.
For a USB stick on Linux, find the right device name:
Write the ISO to the USB stick. Replace /dev/XYZ with your real USB device. Be careful; this deletes all data on that device.
dd bs=1M conv=fdatasync if=./proxmox-datacenter-manager_*.iso of=/dev/XYZ
On Windows, use Etcher, or use Rufus in DD mode. Do not use UNetbootin.
- Boot the server from the USB stick or ISO and choose Install Proxmox Datacenter Manager.
- Accept the license (EULA), then pick the target disk.
- Choose your country, time zone, and keyboard layout.
- Set a strong root password and your email address.
- Set the hostname (FQDN), IP address, gateway, and DNS server.
- Check the summary and click Install. When it finishes, reboot and remove the USB stick.
Option B: Install on Top of Debian 13
Start with a clean Debian 13 (Trixie) server. Log in as root and set the hostname:
hostnamectl set-hostname pdm01.example.com
Edit /etc/hosts so the name points to the server IP:
Add this line with your own IP and name:
203.0.113.10 pdm01.example.com pdm01
Then, download the Proxmox repository key with the command below:
wget https://enterprise.proxmox.com/debian/proxmox-archive-keyring-trixie.gpg -O /usr/share/keyrings/proxmox-archive-keyring.gpg
Check the key. The SHA256 must match the value below:
sha256sum /usr/share/keyrings/proxmox-archive-keyring.gpg
136673be77aba35dcce385b28737689ad64fd785a797e57897589aed08db6e45 /usr/share/keyrings/proxmox-archive-keyring.gpg
Make sure your Debian base repository file looks like this:
nano /etc/apt/sources.list.d/debian.sources
Types: debURIs: http://deb.debian.org/debian/Suites: trixie trixie-updatesComponents: main contrib non-free-firmwareSigned-By: /usr/share/keyrings/debian-archive-keyring.gpg Types: debURIs: http://security.debian.org/debian-security/Suites: trixie-securityComponents: main contrib non-free-firmwareSigned-By: /usr/share/keyrings/debian-archive-keyring.gpg
Now you must add the PDM no-subscription repository. Create the file:
nano /etc/apt/sources.list.d/proxmox.sources
Types: debURIs: http://download.proxmox.com/debian/pdmSuites: trixieComponents: pdm-no-subscriptionSigned-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
Finally, install PDM. This command keeps your current Debian kernel, which is the best choice for most VPS servers:
apt updateapt install proxmox-datacenter-manager-container-meta -y
If you want the Proxmox kernel with ZFS support (bare metal), you can use this package instead:
apt install proxmox-datacenter-manager-meta -y
Note: Installing PDM on Debian looks easy, but you must set up disks and network yourself. The ISO is the safer way.
Step 2: Set the Update Repository
The ISO turns on the enterprise repository by default. It needs a valid subscription. Without one, apt update shows an error. PDM can use the enterprise repository if at least 80% of your remote nodes have a Basic or higher subscription.
If you have no subscription, you must turn off the enterprise repository:
nano /etc/apt/sources.list.d/pdm-enterprise.sources
Add this line at the end of the block:
Then, create the no-subscription repository file. Skip this if you used Option B, because you already did it:
nano /etc/apt/sources.list.d/proxmox.sources
Types: debURIs: http://download.proxmox.com/debian/pdmSuites: trixieComponents: pdm-no-subscriptionSigned-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
The no-subscription repository is for testing and non-production use. For production, use the enterprise repository.
Now update the system, so your Proxmox Datacenter Manager 1.1 setup has the latest fixes. PDM is a rolling release, so use a full upgrade, not an upgrade:
apt updateapt full-upgrade -y
Once you are done, check the installed versions:
proxmox-datacenter-manager-admin versions
Step 3: Open the PDM Web Interface
To access the PDM web interface, open this address in your browser:
https://pdm01.example.com:8443
Log in with user root and the password you set. Your browser will warn about the self-signed certificate. That is normal at this stage. You can add a trusted certificate later with ACME.
Step 4: Create a PDM User and Token on Each Cluster
A good Proxmox Datacenter Manager 1.1 setup needs a login on every cluster. The safest way is a separate user and API token with limited permissions. Also, PDM can create a token for you if you enter root credentials, but a token you create yourself gives you full control over its rights.
Get the Certificate Fingerprint
PDM checks each cluster by its TLS fingerprint. On any node of the cluster, run:
openssl x509 -in /etc/pve/local/pve-ssl.pem -noout -fingerprint -sha256
Copy the long value. Do this for one node of each cluster. Also, you can see it in the Proxmox VE web page under the node's Certificates panel, in the file pve-ssl.pem or pveproxy-ssl.pem if you use ACME.
Create the User and Token
Run these commands on one node of the cluster; the setting is shared in the whole cluster:
pveum user add pdm@pve --comment "Proxmox Datacenter Manager"pveum user token add pdm@pve pdm --privsep 1
The token secret is shown only once. Copy it now and save it in your password manager. The token ID is pdm@pve!pdm.
Give Permissions
With --privsep 1, the token only gets the rights that both the user and the token have. So give the same role to both:
pveum acl modify / --users pdm@pve --roles PVEAuditorpveum acl modify / --tokens 'pdm@pve!pdm' --roles PVEAuditor
PVEAuditor is read-only. It is enough for dashboards, resource lists, and Ceph status.
Also, if want to start, stop, or migrate guests from PDM, use PVEAdmin instead. Some actions, such as pushing updates, may need more rights, so you must raise rights only when you need a feature. Check the result:
pveum acl listpveum user token list pdm@pve
Do these steps on every cluster. Use a different token secret for each cluster.
Step 5: Allow PDM Through the Firewall
PDM must reach port 8006 on each Proxmox VE node. Only allow the PDM IP; do not open port 8006 to the whole internet.
If you use the Proxmox VE firewall, edit the cluster firewall file on one node:
nano /etc/pve/firewall/cluster.fw
Add these blocks with your PDM IP:
[IPSET pdm]203.0.113.10 [RULES]IN ACCEPT -source +pdm -p tcp -dport 8006 -log nolog
If the file does not exist yet, you can add [OPTIONS] with enable: 1. But only turn the firewall on after you have rules that keep your own admin access working. If the firewall is already on, only add the two blocks above.
Then, test the connection from the PDM server:
curl -k -H "Authorization: PVEAPIToken=pdm@pve!pdm=YOUR_TOKEN_SECRET" https://192.168.1.11:8006/api2/json/version
A JSON answer with the Proxmox VE version means the network path and the token both work. The -k option skips the certificate check, so use it for this test only.
If your clusters are in different locations, you need a safe path between the PDM server and each site. A VPN, for example, WireGuard or a strict IP allow list both work.
If you want an encrypted private network between your sites, check our guide on building a multi-site Proxmox SDN with a WireGuard fabric.
Step 6: Add the First Cluster
Now PDM is ready, and your first cluster has a token and a firewall rule. In this step, you can connect that cluster to PDM. In the PDM web interface:
- Go to Remotes and click Add. Also, you can start the wizard from the dashboard.
- On the probe step, enter the IP or name of one node, for example
192.168.1.11. Paste the fingerprint from Step 4. Click Connect.
- On the settings step, enter a remote ID such as
dubai-prod.
- Choose Use existing token. Enter the token ID
pdm@pve!pdm and the token secret.
- Add the other nodes of the cluster (
192.168.1.12 and 192.168.1.13), so PDM has other nodes to use if the first one is down.
- Check the summary and click Finish.
Always use the management IPs here. Do not use the corosync network.
Step 7: Add the Second Cluster
Now you can add your second cluster the same way you added the first one. Repeat Step 4, Step 5, and Step 6 for cluster B. Use these values:
- Remote ID:
frankfurt-prod
- Nodes:
192.168.2.11, 192.168.2.12, 192.168.2.13
- A new token and a new fingerprint from cluster B
Add a Remote From the CLI (Optional)
Also, you can add remotes from the PDM shell. This is useful for scripts. Use the token ID and secret you created:
proxmox-datacenter-manager-admin remote add \ --type pve \ --id dubai-prod \ --authid 'pdm@pve!pdm' \ --token 'YOUR_TOKEN_SECRET' \ --nodes 192.168.1.11 --nodes 192.168.1.12 --nodes 192.168.1.13
Then, list the remotes with the command below:
proxmox-datacenter-manager-admin remote list
If the node needs a fingerprint or a special port, use the same wizard in the web interface instead. It handles the fingerprint for you.
Step 8: Create PDM Users and Permissions
Now that both clusters are connected, you can set who can see and change them. Do not use root@pam for daily work, because it has full rights on everything. You can create separate PDM users and give each one only the access they need.
PDM has three built-in roles. You cannot create custom roles:
| Role |
What it can do |
Administrator |
Everything, on the path you assign |
Auditor |
View status and settings, no changes |
NoAccess |
Nothing |
Permissions use paths. These are the paths you can usually use:
| Path |
Meaning |
/resource |
All remotes and resources |
/resource/dubai-prod |
Only the dubai-prod remote |
/resource/dubai-prod/guest |
Only the guests of that remote |
Create the Users
Create two users in PDM. One for monitoring and one for daily operations. Then, give each user a role on the right path. This way, each person can only do what their job needs.
- Go to Configuration > Access Control > User Management and click Add.
- Create
noc@pdm (a monitoring user) and ops@pdm (an operator). Set a password for each.
- Go to Configuration > Access Control > Permissions and add these entries:
| Path |
User |
Role |
/resource |
noc@pdm |
Auditor |
/resource/dubai-prod |
ops@pdm |
Administrator |
/resource/frankfurt-prod |
ops@pdm |
Auditor |
Now ops@pdm can manage cluster A, but it can only watch cluster B. Permissions are saved in /etc/proxmox-datacenter-manager/access/acl.cfg. Each entry has this form:
acl:1:/resource/dubai-prod:ops@pdm:Administrator
Turn On Two-Factor Login
PDM supports TOTP, WebAuthn, and one-time recovery keys. You can add a second factor for every user, and save the recovery keys in a safe place.
This is very important, because PDM holds a token for every cluster.
Step 9: Check the Central Views
At this point, you can check that your Proxmox Datacenter Manager 1.1 setup shows the right data. In the web interface, look at these places:
- Dashboard: shows all remotes together, with status and resource use.
- Remotes: each cluster should show as online, and every node should be listed.
- Resource tree: you should see all nodes, VMs, containers, and storage from both clusters. Use the search box to find a guest by name or ID.
- Tasks and metrics: you should see recent tasks and graphs from both clusters.
You can check the same data from the PDM shell:
proxmox-datacenter-manager-admin remote listproxmox-datacenter-manager-admin remote version dubai-prodproxmox-datacenter-manager-admin remote version frankfurt-prod
Also, you can use the client tool. It logs in with a PDM user:
proxmox-datacenter-manager-client --host pdm01.example.com --user noc@pdm loginproxmox-datacenter-manager-client --host pdm01.example.com --user noc@pdm remote listproxmox-datacenter-manager-client --host pdm01.example.com --user noc@pdm resources
If the metric graphs look empty, check the collection state and start a new collection:
proxmox-datacenter-manager-client --host pdm01.example.com --user ops@pdm metric-collection statusproxmox-datacenter-manager-client --host pdm01.example.com --user ops@pdm metric-collection trigger
To make sure permissions work, log in as noc@pdm and try to stop a test VM. It must fail. Then, log in as ops@pdm and confirm you can start and stop a test VM only on dubai-prod.
Step 10: Monitor Ceph Across Clusters
PDM can monitor the Ceph state of hyper-converged Proxmox VE clusters. Click Ceph in the left sidebar. You will see one row for each Ceph cluster, from all remotes. The overview shows:
- Health: the Ceph health status, with the number of active health checks.
- Capacity, Available, and Usage: raw size, free space, and the used percentage.
- OSDs: for example,
{up} up, {in}/{total} in.
- Monitors: the monitor quorum, for example,
3 / 3 in quorum.
- Activity: a short note such as Near full, Degraded, or Recovering when the cluster is not clean.
Click a cluster to open its detail panel. It has tabs for Dashboard, Monitors, Managers, OSDs, Pools, CephFS, and Flags. Use the Flags tab to see if a flag such as noout is still set after maintenance.
Two things to know:
- The Ceph view is read-only. To fix something, click Open Web UI. It opens the Ceph panel of the Proxmox VE node in a new tab.
- A user needs the
Resource.Audit privilege on the remote. The Auditor role has it. If a user cannot see a Ceph cluster, check the permission on /resource/<remote-id>.
To confirm that PDM shows the true state, compare it with Ceph on a node of the same cluster:
ceph -sceph health detail
The health status, OSD counts, and monitor quorum must match what PDM shows.
Tips: If you want to build a Ceph cluster, you can check this guide on building a Ceph Tentacle cluster on Proxmox VE with NVMe OSDs.
Step 11: Secure the PDM Management Node
In any Proxmox Datacenter Manager 1.1 setup, PDM stores the API token of every cluster it manages. If someone takes over PDM, they may reach all your clusters. So treat the management node as a high-value server.
You can follow these rules to protect your PDM management node:
- Run PDM on its own server, outside the clusters it manages. Do not run it as a VM inside one of those clusters.
- Keep the corosync network private. PDM does not need it, so do not connect PDM to it.
- Allow port 8443 on PDM only from your VPN or office IPs.
- Allow port 8006 on each Proxmox VE node only from the PDM IP.
- Give each cluster its own token. If one token leaks, remove only that one.
- Start with
PVEAuditor tokens. Use PVEAdmin only when you really need actions from PDM.
- Use named users with 2FA. Keep
root@pam for emergencies.
- If you move guests between clusters, the source nodes must be able to reach the target cluster API on port 8006.
Protect the PDM Server With nftables
In this step, you can add a small firewall on the PDM server. It allows SSH and the web interface only from your VPN or office network and blocks everything else.
Install nftables if it is not installed and edit the rules file with the commands below:
apt install nftables -ynano /etc/nftables.conf
Paste this content. Change 10.99.0.0/24 to your VPN or office network:
flush ruleset table inet filter { chain input { type filter hook input priority 0; policy drop; ct state established,related accept iif lo accept meta l4proto { icmp, ipv6-icmp } accept ip saddr 10.99.0.0/24 tcp dport { 22, 8443 } accept }}
Once you are done, save and close the file. Check the file for errors, then turn it on:
nft -c -f /etc/nftables.confsystemctl enable --now nftablesnft list ruleset
Keep your current SSH session open while you test. Open a second session to make sure you can still log in.
Add a Trusted Certificate (Optional)
If the clusters or PDM use a public certificate, for example, from Let's Encrypt via ACME, PDM trusts it without a fingerprint. If a cluster uses the default self-signed certificate and it changes, PDM will fail to connect, because it uses the old fingerprint. Fix it like this:
proxmox-datacenter-manager-client --host pdm01.example.com --user ops@pdm remote probe-certificate dubai-prod pve1proxmox-datacenter-manager-client --host pdm01.example.com --user ops@pdm remote set-fingerprint dubai-prod pve1 --fingerprint NEW_FINGERPRINT
Confirm the new certificate in a trusted way before you accept it. For example, run the fingerprint command from the Add the First Cluster step directly on the node. An unexpected change can mean someone is secretly sitting between PDM and the node. In the web interface, you can do the same with the Check Certificate action on the remote.
Keep Proxmox Datacenter Manager Updated
PDM gets regular fixes and security updates, so you must update it. Update PDM from Administration > Updates in the web interface, or from the shell:
apt updateapt full-upgrade -y
Note: Only run the upgrade if apt update shows no errors. Remember to read the release notes.
Conclusion
At this point, you have a full Proxmox Datacenter Manager 1.1 setup. PDM runs on its own management node and manages two Proxmox VE clusters. Each cluster has its own token, and users only get the access they need. You can see all your resources and Ceph health in one place. Keep PDM outside your clusters, allow only the ports you need, and keep it updated.
For a clean Proxmox Datacenter Manager 1.1 setup, you can use a small PerLod management VPS for PDM and run each Proxmox VE cluster on PerLod dedicated servers in different locations. The VPS stays separate from the clusters, and each location keeps its own private network.