How to migrate from DigitalOcean: snapshots, DNS, and smooth cutover

calendar_month May 08, 2026 schedule 8 min read visibility 21 views
person
Valebyte Team
How to migrate from DigitalOcean: snapshots, DNS, and smooth cutover
To migrate from DigitalOcean to another VPS, you need to reduce the DNS record TTL to 300 seconds 24 hours before the work, export the disk image via the Custom Images mechanism or the dd utility, convert the Snapshot from qcow2 to raw format, and deploy it on the new server — this migration algorithm from DigitalOcean ensures minimal downtime and full data integrity.

Economic and Technical Reasons for Migrating from DigitalOcean

The process, known as leaving digitalocean, is often initiated due to changes in the provider's pricing policy. In recent years, DigitalOcean (DO) has revised the cost of its basic plans, introducing a separate fee for IPv4 addresses, which significantly increased the final bill for small projects and individual developers.

Comparison of Resource Costs and Performance

When analyzing costs, it is important to consider not only the nominal price of a Droplet but also hidden charges for traffic and additional IPs. When looking for a DigitalOcean alternative, you can notice a significant difference in the volume of resources for the same price.
Feature DigitalOcean (Basic) Valebyte (Cloud VPS) Difference
CPU (Cores) 1 vCPU 1 vCPU (High Frequency) Similar
RAM (GB) 1 GB 2 GB 2x more at Valebyte
Disk (NVMe) 25 GB 30 GB +20% volume
IPv4 Address Paid (from $4/mo) Included in price $4/mo savings
Total Price ~$6.00 + IPv4 = $10.00 $7.59 (all inclusive) 24% cheaper

The Problem of Paid IPv4 and Snapshot Limitations

Many users begin a digitalocean migration after noticing that the cost of a single public IP address on DO starts to account for 40-50% of the cost of the cheapest server. Furthermore, DO's internal ecosystem strictly limits data export: you cannot simply click a "Download snapshot" button in the control panel. This forces the use of workarounds via Custom Images or direct copying of disk partitions.

Preparing Infrastructure for DigitalOcean Migration

A successful move starts not with copying files, but with managing the time-to-live (TTL) of records across the global network. If you ignore this step, after changing the IP address, some of your users will continue trying to reach the old server at DigitalOcean for several days.

Lowering TTL and Dependency Audit

24 hours before starting the active phase of migration, you must log into your DNS control panel (this could be Cloudflare, DigitalOcean DNS, or your registrar) and change the TTL (Time To Live) value for all A and AAAA records to 300 seconds (5 minutes). This ensures that when you change the IP, the world will find out almost instantly. During preparation, it is useful to explore Hetzner alternatives and other platform options to ensure the chosen data center meets your requirements for latency and legal stability.

Service Inventory and Backups

Before starting the do snapshots export, compile a list of critical services.
  • Check paths to configuration files (nginx, apache, docker-compose).
  • Make separate database dumps (MySQL/PostgreSQL), even if you plan to transfer the entire disk image.
  • Record current firewall settings (UFW or iptables).
  • Ensure you have SSH key access to the new server.

Looking for a reliable server for your projects?

VPS from $10/mo and dedicated servers from $9/mo with NVMe, DDoS protection, and 24/7 support.

View Offers →

Technical Process of do snapshots export

Since DigitalOcean does not provide a direct link to download a snapshot, developers have to use a workaround via the Custom Images functionality.

Method via Custom Images and S3

This method is considered the most "civilized" but requires free space and time. 1. Create a Snapshot of your Droplet in the DO panel. 2. Go to the "Images" -> "Snapshots" section. 3. Next to the desired snapshot, select "More" -> "Export to Custom Images". 4. Once the export is complete, the image will be available in the Custom Images section, where it can be downloaded via a direct link that will be active for a limited time. The image is usually saved in `.qcow2` format. This is the standard for KVM virtualization, but importing to other platforms may require conversion.

Direct Disk Copying via dd and ssh

If you don't want to deal with the control panel, you can perform a do to vps real-time data transfer. To do this, you need to boot the Droplet in Recovery ISO mode.
# Example command to copy the entire disk from the old server to the new one
# Executed from the new server
ssh root@old-server-ip "dd if=/dev/vda bs=1M status=progress | gzip -c" | gunzip -c | dd if=/dev/vda
Warning: This method requires the disks on the target server to be the same size or larger than on the source. If the disk on the new VPS is smaller, you will first have to shrink the filesystem and partition on the DigitalOcean side, which is a risky operation.

Converting and Deploying the Image (do to vps)

After you have obtained the image file (e.g., `backup.qcow2`), it must be prepared for operation on the new infrastructure. Most modern cloud providers support image imports, but formats may vary.

Using qemu-img to Change Format

If your new hosting provider requires the RAW format (which is the most universal), use the `qemu-img` utility:
# Installing the utility on Ubuntu/Debian
apt-get install qemu-utils

# Converting from qcow2 to raw
qemu-img convert -f qcow2 -O raw snapshot_export.qcow2 disk_image.raw
The RAW format takes up more space because it is uncompressed and represents a full bit-by-bit copy of the disk. However, it provides maximum compatibility and speed when writing to the physical media of the new server.

First Launch and Fixing Network Interfaces

The most common problem during migration is network loss. In DigitalOcean, the interface is usually named `eth0`, but on the new VPS, it might be named `ens3` or `enp0s3`. If you are using a modern version of Ubuntu, check the Netplan settings:
# Open the network config
nano /etc/netplan/01-netcfg.yaml

# Replace the interface name and specify the new IP/Gateway
network:
  version: 2
  renderer: networkd
  ethernets:
    ens3:
      addresses:
        - 192.168.1.10/24
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 1.1.1.1]
After making changes, run `netplan apply`. Also, don't forget to remove DigitalOcean-specific agents, such as `do-agent`.

Smooth Cutover and DNS Switching

Once the new server is running and you have verified that SSH is accessible, the "smooth cutover" stage begins. This is the moment when traffic switches from the old platform to the new one.

Data Integrity Check and Synchronization

If several hours have passed between creating the snapshot and launching the new server, data (especially in the DB) might be outdated. To avoid losing the latest transactions: 1. Put the applications on the old server into "Maintenance" mode (read-only). 2. Perform a final file synchronization via rsync:
rsync -avz --exclude='/etc/fstab' --exclude='/etc/netplan/*' root@old-ip:/var/www/ /var/www/
3. Transfer a fresh database dump. For those looking for a Vultr vs Valebyte comparison, it's worth noting that the network connectivity speed between European data centers allows such synchronization to be completed in minutes.

Final Traffic Switch

Now, change the IP addresses in your DNS panel. Because we reduced the TTL to 300 seconds in advance, the switch will happen quickly. Monitor the Nginx logs on the new server to see the first incoming requests from real users. Do not turn off the old server in DigitalOcean for at least another 24-48 hours — you might need it to retrieve forgotten configs.

Optimizing the New Server After Migration

After completing the digitalocean migration, the server requires fine-tuning for the new hardware. CPU cores and the disk subsystem may perform differently, requiring adjustments to Linux kernel parameters.

Security and Firewall Setup

In DigitalOcean, many rely on external Cloud Firewalls. When moving to a regular VPS, you need to set up a local firewall.
# Basic UFW setup
ufw allow 22/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable
Also, check the `/etc/fstab` file. If disks were specified by UUID, which changed during conversion or the creation of a new partition, the server might not boot after a reboot. Use the `blkid` command to get current UUIDs and verify them against the config.

Benchmarks and Performance Check

Check what you are paying for. The `fio` utility will help measure disk speed, and `sysbench` will measure CPU performance.
# Disk read speed test
fio --name=loadtest --filename=testfile --size=1G --rw=read --direct=1 --ioengine=libaio --bs=4k --iodepth=64 --runtime=60 --numjobs=1 --time_based --group_reporting
Comparing results, you will see that modern NVMe disks on new plans often outperform old Droplets in IOPS by 2-3 times.

Migration of Specialized Services (VPN and Bots)

If your server was used for infrastructure tasks rather than a website, the migration process has its own nuances.

Transferring VPN Nodes and Proxies

For those who used WireGuard on VPS, the main task is to preserve client keys and update the IP address in the configurations on the user side. If there are many clients, it is easiest to use a domain name instead of an IP in the WireGuard/VLESS configs; then the migration is limited to updating a single DNS record. When transferring proxy servers (Squid, 3proxy), ensure that the new IP addresses are not blacklisted by major services, which sometimes happens with cheap providers.

Peculiarities of Trading Bots

For fintech projects and crypto bots, ping to exchanges (Binance, Bybit) is critical. After migration, be sure to measure the latency:
# Checking ping to Binance API
ping api.binance.com -c 10
If latency has increased, it might be worth changing the data center location. However, by moving from DigitalOcean to specialized VPS, users often get more stable Network Priority, which reduces "slippage" in trades.

Conclusions

Migrating from DigitalOcean is an effective way to reduce infrastructure costs by 30-50% and get twice as much RAM for the same money. For a successful move, it is enough to correctly prepare DNS, export the disk via Custom Images, and conduct a final data synchronization via rsync, which guarantees the project's operation without data loss.

Ready to choose a server?

VPS and dedicated servers in 72+ countries with instant activation and full root access.

Start Now →

Share this post:

support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.