{"id":81922,"date":"2020-05-18T01:42:25","date_gmt":"2020-05-17T23:42:25","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/kak-perenesti-openvz-6-kontejner-na-kvm-server-bez-golovnoj-boli"},"modified":"2020-05-18T01:42:25","modified_gmt":"2020-05-17T23:42:25","slug":"kak-perenesti-openvz-6-kontejner-na-kvm-server-bez-golovnoj-boli","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/kak-perenesti-openvz-6-kontejner-na-kvm-server-bez-golovnoj-boli","title":{"rendered":"How to Migrate an OpenVZ 6 Container to a KVM Server Hassle-Free","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Anyone who has ever needed to transfer an OpenVZ container to a server with full KVM virtualization has encountered some problems.<\/p>\n<p><\/p>\n<ul>\n<li>Most of the information is simply outdated and was relevant for operating systems that have long since reached their EOL cycle.<\/li>\n<li>Different operating systems always provide different information, and potential errors during migration are rarely considered.<\/li>\n<li>There are times when you have to deal with configurations that just won't work after the migration.<\/li>\n<\/ul>\n<p><\/p>\n<p>When transferring one server, you can always fix something on the fly, but what do you do when migrating an entire cluster? <\/p>\n<p><\/p>\n<p>In this article, I will try to explain how to properly migrate an OpenVZ container to KVM with minimal downtime and a quick resolution of all issues.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2 id=\"nebolshoy-likbez-chto-takoe-openvz-i-chto-takoe-kvm\">A brief overview: what is OpenVZ and what is KVM?<\/h2>\n<p><\/p>\n<p>We won\u2019t delve into the terminology; instead, let's say this in broad terms:<\/p>\n<p><\/p>\n<p><strong>OpenVZ<\/strong> \u2014 virtualization at the operating system level, which can even be deployed on a microwave, as there is no need for CPU instructions or virtualization technologies on the host machine. <\/p>\n<p><\/p>\n<p><strong>KVM <\/strong> \u2014 full virtualization which utilizes the full power of the CPU and can virtualize anything, in any way, cutting through in all directions. <\/p>\n<p><\/p>\n<p><em>Contrary to the common belief that in the <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/en\/\"   title=\"hosting providers\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1210\">hosting providers<\/a> OpenVZ environment overselling occurs but not in KVM \u2014 fortunately for the latter, KVM is currently oversold just as much as its counterpart.<\/em><\/p>\n<p><\/p>\n<h2 id=\"chto-budem-perenosit\">What are we going to migrate?<\/h2>\n<p><\/p>\n<p>As test cases for migration, we had to use the entire forest of operating systems available on OpenVZ: CentOS (versions 6 and 7), Ubuntu (14, 16, and 18 LTS), Debian 7.<\/p>\n<p><\/p>\n<p>It was assumed that on the majority of OpenVZ containers, some form of LAMP was already running, and some even had very specific software. Most often, these were configurations with the ISPmanager or VestaCP control panel (often not updated for years). Their requirements for migration must also be taken into account.<\/p>\n<p><\/p>\n<p>Migration is carried out while preserving <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/en\/lir\/ipv4\/\"   title=\"an IP address\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"668\">an IP address<\/a> the transferable container; we will assume that the IP address that belonged to the container is retained on the VM and will work without problems.<\/p>\n<p><\/p>\n<p>Before migration, let\u2019s make sure we have everything in order:<\/p>\n<p><\/p>\n<ul>\n<li>An OpenVZ server with full root access to the host machine, the ability to stop\/mount\/start\/delete containers.<\/li>\n<li>A KVM server with full root access to the host machine, along with all that entails. It is assumed that everything is already set up and ready to go.<\/li>\n<\/ul>\n<p><\/p>\n<h2 id=\"pristupaem-k-perenosu\">Let's begin the transfer<\/h2>\n<p><\/p>\n<p>Before we start the transfer, let's define the terms that will help avoid confusion:<\/p>\n<p><\/p>\n<p><strong>KVM_NODE<\/strong> \u2014 KVM host machine<br \/>\n<strong>VZ_NODE<\/strong> \u2014 OpenVZ host machine<br \/>\n<strong>CTID<\/strong> \u2014 OpenVZ container<br \/>\n<strong>VM<\/strong> \u2014 KVM virtual server<\/p>\n<p><\/p>\n<h4 id=\"podgotovka-k-perenosu-i-sozdanie-virtualnyh-mashin\">Preparation for the transfer and creation of virtual machines.<\/h4>\n<p><\/p>\n<p><strong>Step 1<\/strong><\/p>\n<p><\/p>\n<p>Since we need a destination for the container transfer, we will create one <strong>VM<\/strong> with a similar configuration on <strong>KVM_NODE<\/strong>.<br \/>\n<strong>Important!<\/strong> You need to create the VM on the same operating system that is currently running on CTID. For example, if Ubuntu 14 is installed on CTID, then Ubuntu 14 must also be installed on the VM. Minor version mismatches are not critical, but major versions must be the same.<\/p>\n<p><\/p>\n<p>After creating the VM, we will update the packages on both CTID and the VM (do not confuse with OS updates \u2014 we don\u2019t update the OS, we only update the packages and, if needed, the OS version within the same major version).<\/p>\n<p><\/p>\n<p>For CentOS, this process looks harmless:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\"># yum clean all\n# yum update -y<\/code><\/pre>\n<p><\/p>\n<p>And equally harmless for Ubuntu, Debian:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\"># apt-get update\n# apt-get upgrade<\/code><\/pre>\n<p><\/p>\n<p><strong>Step 2<\/strong><\/p>\n<p><\/p>\n<p>We install on <strong>CTID<\/strong>, <strong>VZ_NODE<\/strong> and <strong>VM<\/strong> utility <strong>rsync<\/strong>:<\/p>\n<p><\/p>\n<p>CentOS:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\"># yum install rsync -y<\/code><\/pre>\n<p><\/p>\n<p>Debian, Ubuntu:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\"># apt-get install rsync -y<\/code><\/pre>\n<p><\/p>\n<p>We do not install anything else on either.<\/p>\n<p><\/p>\n<p><strong>Step 3<\/strong><\/p>\n<p><\/p>\n<p>We stop <strong>CTID <\/strong>to <strong>VZ_NODE <\/strong>with the command<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vzctl stop CTID<\/code><\/pre>\n<p><\/p>\n<p>We mount the image <strong>CTID<\/strong>:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vzctl mount CTID<\/code><\/pre>\n<p><\/p>\n<p>We go to the folder \/vz\/root\/<strong>CTID<\/strong> and execute<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">mount --bind \/dev dev &amp;&amp; mount --bind \/sys sys &amp;&amp; mount --bind \/proc proc &amp;&amp; chroot .<\/code><\/pre>\n<p><\/p>\n<p>Under chroot, we create the file \/root\/exclude.txt \u2014 it will contain the list of exceptions that will not be transferred to the new server.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">\/boot\n\/proc\n\/sys\n\/tmp\n\/dev\n\/var\/lock\n\/etc\/fstab\n\/etc\/mtab\n\/etc\/resolv.conf\n\/etc\/conf.d\/net\n\/etc\/network\/interfaces\n\/etc\/networks\n\/etc\/sysconfig\/network*\n\/etc\/sysconfig\/hwconf\n\/etc\/sysconfig\/ip6tables-config\n\/etc\/sysconfig\/kernel\n\/etc\/hostname\n\/etc\/HOSTNAME\n\/etc\/hosts\n\/etc\/modprobe*\n\/etc\/modules\n\/net\n\/lib\/modules\n\/etc\/rc.conf\n\/usr\/share\/nova-agent*\n\/usr\/sbin\/nova-agent*\n\/etc\/init.d\/nova-agent*\n\/etc\/ips\n\/etc\/ipaddrpool\n\/etc\/ips.dnsmaster\n\/etc\/resolv.conf\n\/etc\/sysconfig\/network-scripts\/ifcfg-eth0\n\/etc\/sysconfig\/network-scripts\/ifcfg-ens3<\/code><\/pre>\n<p><\/p>\n<p>We connect to <strong>KVM_NODE<\/strong> and start our <strong>VM<\/strong>, so that it is operational and accessible over the network.<\/p>\n<p><\/p>\n<p>Now everything is ready for the transfer. Let's go!<\/p>\n<p><\/p>\n<p><strong>Step 4<\/strong><\/p>\n<p><\/p>\n<p>While still under chroot, we execute<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">rsync --exclude-from=\"\/root\/exclude.txt\" --numeric-ids -avpogtStlHz --progress -e \"ssh -T -o Compression=no -x\" \/ root@KVM_NODE:\/<\/code><\/pre>\n<p><\/p>\n<p>The rsync command will perform the transfer, and we hope the flags are clear \u2014 the transfer is conducted while preserving symlinks, permissions, owners, and groups, and encryption is turned off for greater speed (a faster cipher could have been used, but that\u2019s not so critical in this task), with compression also disabled.<\/p>\n<p><\/p>\n<p>After the rsync command completes, we exit chroot (by pressing ctrl+d) and execute<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">umount dev &amp;&amp; umount proc &amp;&amp; umount sys &amp;&amp; cd .. &amp;&amp; vzctl umount CTID<\/code><\/pre>\n<p><\/p>\n<p><strong>Step 5<\/strong><\/p>\n<p><\/p>\n<p>We will perform some actions that will help us in launching the VM after the transfer from OpenVZ.<br \/>\nOn servers with <strong>Systemd<\/strong> we execute a command that will help us log into the regular console, perhaps via VNC on the server screen<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">mv \/etc\/systemd\/system\/getty.target.wants\/getty@tty2.service \/etc\/systemd\/system\/getty.target.wants\/getty@tty1.service<\/code><\/pre>\n<p><\/p>\n<p>On servers <strong>CentOS 6<\/strong> and <strong>CentOS 7<\/strong> we will definitely install a fresh kernel:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">yum install kernel-$(uname -r)<\/code><\/pre>\n<p><\/p>\n<p>The server can boot from it, but it may stop working or be removed after migration.<\/p>\n<p><\/p>\n<p>On the server <strong>CentOS 7<\/strong> you need to apply a small fix for PolkitD, otherwise the server will enter an eternal boot loop:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">getent group polkitd &gt;\/dev\/null &amp;&amp; echo -e \"e[1;32mpolkitd group already exists e[0m\" || { groupadd -r polkitd &amp;&amp; echo -e \"e[1;33mAdded missing polkitd group e[0m\" || echo -e \"e[1;31mAdding polkitd group FAILED e[0m\"; }\n\ngetent passwd polkitd &gt;\/dev\/null \n&amp;&amp; echo -e \"e[1;32mpolkitd user already exists e[0m\" || { useradd -r -g polkitd -d \/ -s \/sbin\/nologin -c \"User for polkitd\" polkitd &amp;&amp; echo -e \"e[1;33mAdded missing polkitd user e[0m\" || echo -e \"e[1;31mAdding polkitd user FAILED e[0m\"; }\n\nrpm -Va polkit* &amp;&amp; echo -e \"e[1;32mpolkit* rpm verification passed e[0m\" || { echo -e \"e[1;33mResetting polkit* rpm user\/group ownership &amp; perms e[0m\"; rpm --setugids polkit polkit-pkla-compat; rpm --setperms polkit polkit-pkla-compat; }<\/code><\/pre>\n<p><\/p>\n<p>On all servers, if mod_fcgid for Apache was installed, we will apply a small fix for permissions; otherwise, websites using mod_fcgid will crash with a 500 error:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">chmod +s `which suexec` &amp;&amp; apachectl restart<\/code><\/pre>\n<p><\/p>\n<p>And finally, this will be useful for Ubuntu and Debian distributions. This OS can enter an eternal boot with the error<\/p>\n<p><\/p>\n<blockquote><p>looping too fast. throttling execution a little<\/p><\/blockquote>\n<p>unpleasant, but easily fixed depending on the OS version.<\/p>\n<p><\/p>\n<p>At <strong>Debian 9<\/strong> The fix looks like this:<\/p>\n<p><\/p>\n<p>we execute<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">dbus-uuidgen<\/code><\/pre>\n<p><\/p>\n<p>if we get an error<\/p>\n<p><\/p>\n<blockquote><p>\/usr\/local\/lib\/libdbus-1.so.3: version `LIBDBUS_PRIVATE_1.10.8\u2032 not found<\/p><\/blockquote>\n<p>we check for the presence of LIBDBUS <\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">ls -la \/lib\/x86_64-linux-gnu | grep dbus\nlibdbus-1.so.3 -&gt; libdbus-1.so.3.14.15 \nlibdbus-1.so.3.14.15 &lt;-- we need this\nlibdbus-1.so.3.14.16<\/code><\/pre>\n<p><\/p>\n<p>if everything is fine, we execute<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">cd \/lib\/x86_64-linux-gnu\nrm -rf libdbus-1.so.3\nln -s libdbus-1.so.3.14.15 libdbus-1.so.3<\/code><\/pre>\n<p><\/p>\n<p>If it doesn't help \u2014 we try the second option.<\/p>\n<p><\/p>\n<p>The second option for solving the issue with <strong>throttling execution a little<\/strong> is suitable for practically all Ubuntu and Debian distributions.<\/p>\n<p><\/p>\n<p>We execute<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">bash -x \/var\/lib\/dpkg\/info\/dbus.postinst configure<\/code><\/pre>\n<p><\/p>\n<p>And for <strong>Ubuntu 14<\/strong>, <strong>Debian 7<\/strong> additionally, we execute:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">adduser --system --home \/nonexistent --no-create-home --disabled-password --group messagebus\n\nrm -rf \/etc\/init.d\/modules_dep.sh <\/code><\/pre>\n<p><\/p>\n<p>What did we do? We restored the messagebus that was missing for launching Debian\/Ubuntu and removed modules_dep, which came from OpenVZ and interfered with the loading of many kernel modules.<\/p>\n<p><\/p>\n<p><strong>Step 6<\/strong><\/p>\n<p><\/p>\n<p>We restart the VM, check in VNC how the boot is going, and ideally \u2014 everything will boot without problems. However, some specific issues may arise after migration \u2014 but these are beyond the scope of this article and will be fixed as they come up.<\/p>\n<p><\/p>\n<p>I hope this information will be useful! \ud83d\ude42<\/p>\n<p>Source: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/502132\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u0430\u0436\u0434\u044b\u0439, \u043a\u043e\u043c\u0443 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u043e\u0441\u044c \u0445\u043e\u0442\u044f \u0431\u044b \u0440\u0430\u0437 \u0432 \u0436\u0438\u0437\u043d\u0438 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 OpenVZ \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e\u0439 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 KVM, \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u043b\u0441\u044f \u0441 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430\u043c\u0438: \u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u0431\u0430\u043d\u0430\u043b\u044c\u043d\u043e \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u043e \u0438 \u0431\u044b\u043b\u043e \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0443\u0436\u0435 \u0434\u0430\u0432\u043d\u043e \u043f\u0440\u043e\u0448\u0435\u0434\u0448\u0438\u0445 EOL \u0446\u0438\u043a\u043b \u041e\u0421 \u041f\u043e \u0440\u0430\u0437\u043d\u044b\u043c \u041e\u0421 \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f, \u0438 \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043e\u0448\u0438\u0431\u043a\u0438 \u043f\u0440\u0438 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0438 \u0418\u043d\u043e\u0433\u0434\u0430 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0438\u043c\u0435\u0442\u044c \u0434\u0435\u043b\u043e \u0441 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-81922","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u0430\u0436\u0434\u044b\u0439, \u043a\u043e\u043c\u0443 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u043e\u0441\u044c \u0445\u043e\u0442\u044f \u0431\u044b \u0440\u0430\u0437 \u0432 \u0436\u0438\u0437\u043d\u0438 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 OpenVZ \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e\u0439 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 KVM, \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u043b\u0441\u044f \u0441 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430\u043c\u0438: \u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u0431\u0430\u043d\u0430\u043b\u044c\u043d\u043e \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u043e \u0438.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/kak-perenesti-openvz-6-kontejner-na-kvm-server-bez-golovnoj-boli\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0430\u043a \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 OpenVZ 6 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043d\u0430 KVM \u0441\u0435\u0440\u0432\u0435\u0440 \u0431\u0435\u0437 \u0433\u043e\u043b\u043e\u0432\u043d\u043e\u0439 \u0431\u043e\u043b\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u0430\u0436\u0434\u044b\u0439, \u043a\u043e\u043c\u0443 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u043e\u0441\u044c \u0445\u043e\u0442\u044f \u0431\u044b \u0440\u0430\u0437 \u0432 \u0436\u0438\u0437\u043d\u0438 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 OpenVZ \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e\u0439 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 KVM, \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u043b\u0441\u044f \u0441 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430\u043c\u0438: \u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u0431\u0430\u043d\u0430\u043b\u044c\u043d\u043e \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u043e \u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/kak-perenesti-openvz-6-kontejner-na-kvm-server-bez-golovnoj-boli\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-05-17T23:42:25+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-05-17T23:42:25+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47How to Transfer an OpenVZ 6 Container to a KVM Server Without a Headache | ProHoster","description":"Anyone who has ever needed to transfer an OpenVZ container to a KVM server with full virtualization has encountered some problems: Most of the information is simply outdated.","canonical_url":"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/kak-perenesti-openvz-6-kontejner-na-kvm-server-bez-golovnoj-boli","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0430\u043a \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 OpenVZ 6 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043d\u0430 KVM \u0441\u0435\u0440\u0432\u0435\u0440 \u0431\u0435\u0437 \u0433\u043e\u043b\u043e\u0432\u043d\u043e\u0439 \u0431\u043e\u043b\u0438 | ProHoster","og:description":"\u041a\u0430\u0436\u0434\u044b\u0439, \u043a\u043e\u043c\u0443 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u043e\u0441\u044c \u0445\u043e\u0442\u044f \u0431\u044b \u0440\u0430\u0437 \u0432 \u0436\u0438\u0437\u043d\u0438 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 OpenVZ \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e\u0439 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 KVM, \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u043b\u0441\u044f \u0441 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430\u043c\u0438: \u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u0431\u0430\u043d\u0430\u043b\u044c\u043d\u043e \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u043e \u0438.","og:url":"https:\/\/prohoster.info\/en\/blog\/administrirovanie\/kak-perenesti-openvz-6-kontejner-na-kvm-server-bez-golovnoj-boli","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-05-17T23:42:25+00:00","article:modified_time":"2020-05-17T23:42:25+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"81922","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 15:47:31","updated":"2026-02-09 15:40:07","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/81922","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=81922"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/81922\/revisions"}],"predecessor-version":[{"id":158454,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/81922\/revisions\/158454"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=81922"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=81922"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=81922"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}