How to Migrate current PMM Server(Centos Linux Server) Data to New Server(Rocky Linux Server)

Hi,

I would like to Migrate all the PMM server docker data to new server without any data loss. We are actually Migrating our servers from Centos to Rocky Linux so, we want to migrate PMM Server(Centos) to Rocky Linux new server.

Well, as fate would have it, we’re actually just about to release our PMM Server on a EL9 based image, Oracle Linux 9 specifically.

In order to guide you on the migration we’d need to know a bit about how you’ve installed PMM. Can you provide the following:

  • How did you install PMM? (Docker, AMI, OVF)
  • How is /srv connected to your PMM? (if docker are you using volume, bind mount, or storing in native container)
  • How big is your /srv directory? du -sh /srv/ should give enough info for that.
  • How are your clients registered to the PMM server? By hostname or IP address (the pmm-admin config command you run on the clients can help answer this).
  • What is your expectation of downtime or recover point objective for the cutover?
  • What version of Server and Client(s) are you running?

There may be more info needed but this helps provide the best outline of the steps you’d need to take. The process is pretty straight forward and I’ve been doing it myself for several months now including live customer migrations.

Hi @steve.hoffman

Here are the details:

  • How did you install PMM? (Docker, AMI, OVF) – Docker
  • How is /srv connected to your PMM? (if docker are you using volume, bind mount, or storing in native container) – bind mount (Seperate Directory Mounted Instead of Default Directory)
  • How big is your /srv directory? du -sh /srv/ should give enough info for that. – 43GB
  • How are your clients registered to the PMM server? By hostname or IP address (the pmm-admin config command you run on the clients can help answer this). – IP
  • What is your expectation of downtime or recover point objective for the cutover? – No ETA
  • What version of Server and Client(s) are you running? – PMM 2.36 Version

Please let me know if you need more details on the same.

Ok, it’s pretty straight forward then. I assume you’re going to want to create a parallel system to the existing one so you can have time to install/configure/tune your host OS, get PMM up and running, migrate your data, then perform the final cutover. You can do it all in place too but you’ll lose metrics.

There’s a EL9 based 2.36.0 docker already available you can pull it from perconalab/pmm-server:2.36.0-el9 this has gone through all the same testing and validation that the EL7 container gets and has passed QA.

The steps are:

  • prep your new host (install/configure to your personal or corporate standards)
  • get your new PMM server up and running (you’ll use the same docker run you did on the old system only substitute the el9 image over the default el7 one.
  • migrate the data. Couple ways to do this.
    • stop both pmm-servers and scp the data from the old host directory to the new one, get your folder permissions correct (step 7 shows the ownerships you’ll need) and start the new pmm-server up.
    • I wrote a utility to be run inside the pmm-server docker that allows you to take a hot-backup, copy that artifact and run the same utility to restore…it handles all the internals so may be easier than a bunch of manual steps.
  • you need to re-ip your new host since your clients are all bound by IP but for anyone using DNS registrations you can update DNS and metrics will start flowing once the DNS TTL expires.

That’s basically it! Read the steps over and ask any questions…it will help us solidify the instructions we publish!

@steve.hoffman I appreciate your providing such thorough instructions. I’ll try the aforementioned process and report back to you on the results.