{"id":19499,"date":"2017-01-12T08:15:31","date_gmt":"2017-01-12T05:15:31","guid":{"rendered":"https:\/\/www.altoros.com\/blog\/?p=19499"},"modified":"2018-05-15T15:43:07","modified_gmt":"2018-05-15T12:43:07","slug":"migrating-pivotal-cloud-foundry-to-a-multi-az-deployment","status":"publish","type":"post","link":"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/","title":{"rendered":"Migrating Pivotal Cloud Foundry to a Multi-AZ Deployment"},"content":{"rendered":"<p>This post describes how we moved an up-and-running PCF installation from a single availability zone deployment to multiple AZs for one of the earliest adopters of the platform.<\/p>\n<p>&nbsp;<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_79_2 counter-hierarchy ez-toc-counter ez-toc-transparent ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#Issues_during_migration\" >Issues during migration<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#Workarounds\" >Workarounds<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#Steps_for_migration\" >Steps for migration<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#Lessons_learned\" >Lessons learned<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#Migrating_BOSH_to_a_different_network\" >Migrating BOSH to a different network<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#Related_reading\" >Related reading<\/a><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"Issues_during_migration\"><\/span>Issues during migration<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The customer had been using PCF starting from version 1.0 and eventually ran out of resources to support its deployments. Our task was to create a multi-AZ deployment while migrating all the company\u2019s environments to a wider network infrastructure. The moved PCF installation ran on VMware vSphere 6. Each deployment consisted of around 100 Diego Cells with an average memory usage of over <strong>80%<\/strong> of Diego Cell capacity.<\/p>\n<p>Having examined the customer\u2019s environment, we faced the following issues:<\/p>\n<ul>\n<li style=\"margin-bottom: 10px;\">Clusters would most likely fail during the migration. The MySQL cluster would get a split-brain state, the Consul cluster wouldn\u2019t be able to find routes, and the etcd cluster would fail, too.<\/li>\n<li style=\"margin-bottom: 10px;\">Pivotal CF tiles, except for the Elastic Runtime tile and the MySQL tile, were not supposed to be moved. The RabbitMQ tile, for example, would fail to move and the RabbitMQ cluster would be destroyed.<\/li>\n<li style=\"margin-bottom: 10px;\">With memory usage for Diego cluster exceeding <strong>80%<\/strong>, most of the application instances and applications would be unavailable.<\/li>\n<li style=\"margin-bottom: 10px;\">Changing network for service brokers would cause the Service Unavailable error, and applications wouldn\u2019t be able to reconnect.<\/li>\n<li style=\"margin-bottom: 30px;\">Any Pinned IPs for routers, proxies, etc. had to be removed from PCF to be able to apply changes.<\/li>\n<\/ul>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/pivotal-cloud-foundry-multi-az-deployment.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/pivotal-cloud-foundry-multi-az-deployment.png\" alt=\"pivotal-cloud-foundry-multi-az-deployment\" width=\"640\" height=\"360\" class=\"aligncenter size-full wp-image-19518\" \/><\/a><small><em>Image credit: <a href=\"https:\/\/docs.pivotal.io\/pivotalcf\/1-9\/customizing\/understand-az.html\" target=\"_blank\">Pivotal<\/a><\/em><\/small><\/center><\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Workarounds\"><\/span>Workarounds<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The revealed obstacles rendered plenty of room for exercising our troubleshooting skills:<\/p>\n<ul>\n<li style=\"margin-bottom: 10px;\">To address the cluster failure problem, we reduced the quorum to one-node clusters.<\/li>\n<li style=\"margin-bottom: 10px;\">During the migration, the Diego cluster memory capacity had to be more than <strong>20%<\/strong> of the total amount of memory resources to prevent applications from failing. We added more Diego Cells to the cluster to decrease memory usage to <strong>50%<\/strong>.<\/li>\n<li style=\"margin-bottom: 10px;\">PCF v1.7 had no option for setting custom Diego Cell instance sizes. Some of the instance parameters in the Resource Config settings were ill-fitting from the System administrator\u2019s point of view and needed to be changed. For example, the 2xlarge.mem instance was using four CPUs and 64 GB of RAM, while best practice for CPU\/memory ratio is one to four. Therefore, we added more size to this instance to get a 16 CPUs \/ 64 GB of RAM ratio using <a href=\"http:\/\/opsman-dev-api-docs.cfapps.io\/#vm-types\" target=\"_blank\">these API docs<\/a>. This also caused a problem with application instances. During Diego Cell resizing, most of the app instances were down; however, that didn\u2019t cause any application DoS. <\/li>\n<li style=\"margin-bottom: 10px;\">MySQL monitor job may also fail and return an error. This happens when MySQL monitor is trying to find the <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">uaa.CF_DOMAIN<\/code> route which is not available. The main reason for such a failure is that the Consul database is damaged and the routes are missing. To fix this error, you need to recreate the Consul database as described <a href=\"https:\/\/github.com\/cloudfoundry-attic\/consul-release\/tree\/master#failure-recovery\" target=\"_blank\">here<\/a>.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Steps_for_migration\"><\/span>Steps for migration<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>So, the complete process of moving to a multi-AZ deployment included the following steps:<\/p>\n<ol>\n<li>Reducing the quorum of all clusters (Consul, etcd, MySQL, etc.) to a single node<\/li>\n<li>Updating cluster info in the Ops Manager Director<\/li>\n<li>Adding a new availability zone to the Ops Manager Director<\/li>\n<li>Assigning a network to the newly created availability zone<\/li>\n<li>Unlocking PCF tiles using <a href=\"https:\/\/community.pivotal.io\/s\/?language=en_US\" target=\"_blank\">this approach<\/a><\/li>\n<li>Selecting the new availability zone as a balance zone <\/li>\n<li>Removing all secondary Pinned IPs for routers, HAProxy, and MySQL<\/li>\n<li>Restoring the quorum back to three-node clusters<\/li>\n<li style=\"margin-bottom: 30px;\">Running errand jobs<\/li>\n<\/ol>\n<p><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/migrating-from-single-to-multi-az-deployment-for-pivotal-cf-v12.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/migrating-from-single-to-multi-az-deployment-for-pivotal-cf-v12.png\" alt=\"migrating-from-single-to-multi-az-deployment-for-pivotal-cf-v12\" width=\"640\" class=\"aligncenter size-full wp-image-19573\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Lessons_learned\"><\/span>Lessons learned<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>When moving your PCF platform to a multi-AZ deployment, note these tips:<\/p>\n<ul>\n<li style=\"margin-bottom: 2px;\">Make sure the quorum for clusters is reduced to one node.<\/li>\n<li style=\"margin-bottom: 2px;\">When applying changes, watch the Consul server and be ready to recreate the Consul DB to recreate all routes.<\/li>\n<li style=\"margin-bottom: 2px;\">Pay attention to the MySQL cluster for Elastic Runtime (ERT).<\/li>\n<li style=\"margin-bottom: 2px;\">After introducing a new change, verify that you\u2019ve clicked the Apply Changes button.<\/li>\n<li style=\"margin-bottom: 2px;\">Do not try to move any tile, except for the ERT tile, to multiple networks. Also, make sure that you have removed any Pinned IPs before moving ERT to two networks and multiple AZs.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Migrating_BOSH_to_a_different_network\"><\/span>Migrating BOSH to a different network<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>In case of a misconfiguration during initial deployment, or when redeployment is not possible, or if a network range depleted, you may also need to move BOSH to a new network range and then migrate Pivotal CF.<\/p>\n<p>In our case, the migration was required for all PCF deployments, since the current network resources were depleted and the customer wasn\u2019t able to increase the number of Diego Cells or any other PCF Elastic Runtime components and tiles. All the current environments were deployed on VMware vSphere and used an external Load Balancer.<\/p>\n<p>To migrate BOSH successfully, we created the following runbook:<\/p>\n<ol>\n<li>Enable BOSH dual homing relying on <a href=\"https:\/\/community.pivotal.io\/s\/?language=en_US\" target=\"_blank\">this documentation<\/a>.<\/li>\n<li>Unlock PCF tiles and change the default deployment network for BOSH using <a href=\"https:\/\/community.pivotal.io\/s\/?language=en_US\" target=\"_blank\">this guide<\/a>. <\/li>\n<li>Since Ops Manager won\u2019t support applying changes when the BOSH network is changed, introduce modifications to the Validation process.<\/li>\n<li>As soon as BOSH is moved, unlock tiles and change the network for ERT, as well.<\/li>\n<\/ol>\n<p>Revealed problems and workarounds:<\/p>\n<ul>\n<li style=\"margin-bottom: 10px;\">Ops Manager wouldn\u2019t allow us to move BOSH to a different network, and the validation process would fail. As a workaround, we changed <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">bosh_director_job_ip_inertia_verifier.rb<\/code>. This gem checks if the BOSH Director IP changed and compares it with the current state of the BOSH deployment.<\/li>\n<li style=\"margin-bottom: 10px;\">Having changed the BOSH network and having implemented BOSH dual homing, we faced a problem that the ERT components were not able to talk to the BOSH Director through the Agents. The solution was to edit the <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">bosh.yml<\/code> file manually and specify new network components (DNS, Gateway). This step required starting bosh-init manually. With bosh-init, all the ERT components were still available, and BOSH was able to manage all jobs.<\/li>\n<li style=\"margin-bottom: 10px;\">Trying to disable BOSH dual homing would result in complete unavailability of the ERT deployment, making the BOSH Director unable to reach it. To prevent this, we ran <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">bosh deploy DEPLOYMENT_MANIFEST<\/code> manually after the BOSH Director was moved to the new network. During this step, the <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">settings.json<\/code> file for the Agent was updated with a new BOSH Director IP. After that, BOSH dual homing could be disabled.<\/li>\n<li style=\"margin-bottom: 10px;\">We also faced a problem related to quorum in clusters, including Consul, etcd, MySQL, etc. As a workaround, we reduced the quorum in these clusters to one node before introducing any changes. As soon as BOSH dual homing was disabled, the clusters were restored back to three nodes.<\/li>\n<li style=\"margin-bottom: 10px;\">In some cases, the Cloud Controller (CC) worker and CC itself would go down. To fix this issue, we had to power-cycle them. The issue was caused by the NFS mount point. During <code style=\"color: #222222; background-color: #e6e6e6; padding: 1px 2px;\">bosh deploy<\/code>, the NFS IP was changed and the Cloud Controller worker and CC were not able to unmount it.<\/li>\n<\/ul>\n<p>Moving Pivotal Cloud Foundry deployment is a relatively easy task, but workarounds are inevitable. Just hold to the outlined recommendations and be prepared to tackle issues down the road.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Related_reading\"><\/span>Related reading<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/multi-data-center-as-a-cloud-foundry-deployment-pattern\/\">Multi-Data Center as a Cloud Foundry Deployment Pattern<\/a><\/li>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/operating-cloud-foundry-across-multiple-data-centers-single-bosh-installation\/\">Operating Cloud Foundry Across Multiple Data Centers with a Single BOSH Installation<\/a><\/li>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/cloud-foundry-in-use-high-availability-backup-and-disaster-recovery\/\">Cloud Foundry in Use: High Availability, Backup, and Disaster Recovery<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>This post describes how we moved an up-and-running PCF installation from a single availability zone deployment to multiple AZs for one of the earliest adopters of the platform.<\/p>\n<p>&nbsp;<\/p>\n<p>Issues during migration<\/p>\n<p>The customer had been using PCF starting from version 1.0 and eventually ran out of resources to support its deployments. Our [&#8230;]<\/p>\n","protected":false},"author":43,"featured_media":19575,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":"","_links_to":"","_links_to_target":""},"categories":[214],"tags":[873,206,28],"class_list":["post-19499","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorials","tag-cloud-native","tag-oss-cloud-foundry","tag-pivotal-cf"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Migrating Pivotal Cloud Foundry to a Multi-AZ Deployment | Altoros<\/title>\n<meta name=\"description\" content=\"Deployments across multiple availability zones (AZ) help to achieve high availability at the network infrastructure level. Yet, there are installations implemented when Pivotal Cloud Foundry (PCF) could not be deployed in multiple AZs.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Migrating Pivotal Cloud Foundry to a Multi-AZ Deployment | Altoros\" \/>\n<meta property=\"og:description\" content=\"This post describes how we moved an up-and-running PCF installation from a single availability zone deployment to multiple AZs for one of the earliest adopters of the platform. &nbsp; Issues during migration The customer had been using PCF starting from version 1.0 and eventually ran out of resources to support its deployments. Our [...]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/\" \/>\n<meta property=\"og:site_name\" content=\"Altoros\" \/>\n<meta property=\"article:published_time\" content=\"2017-01-12T05:15:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-05-15T12:43:07+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/how-to-migrate-pivotal-cloud-foundry-to-multi-az-deployment-1.gif\" \/>\n\t<meta property=\"og:image:width\" content=\"640\" \/>\n\t<meta property=\"og:image:height\" content=\"451\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/gif\" \/>\n<meta name=\"author\" content=\"Alex Makarevich\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Alex Makarevich\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/\",\"name\":\"Migrating Pivotal Cloud Foundry to a Multi-AZ Deployment | Altoros\",\"isPartOf\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/how-to-migrate-pivotal-cloud-foundry-to-multi-az-deployment-1.gif\",\"datePublished\":\"2017-01-12T05:15:31+00:00\",\"dateModified\":\"2018-05-15T12:43:07+00:00\",\"author\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/0ad554ebe924a76b219a0287c1d2a770\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#primaryimage\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/how-to-migrate-pivotal-cloud-foundry-to-multi-az-deployment-1.gif\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/how-to-migrate-pivotal-cloud-foundry-to-multi-az-deployment-1.gif\",\"width\":640,\"height\":451},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.altoros.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Migrating Pivotal Cloud Foundry to a Multi-AZ Deployment\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\",\"url\":\"https:\/\/www.altoros.com\/blog\/\",\"name\":\"Altoros\",\"description\":\"Insight\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.altoros.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/0ad554ebe924a76b219a0287c1d2a770\",\"name\":\"Alex Makarevich\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/alexei-makarevich-1-140x140.jpg\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/alexei-makarevich-1-140x140.jpg\",\"caption\":\"Alex Makarevich\"},\"description\":\"Alex Makarevich is a Cloud Foundry engineer at Altoros. He has over 15 years of experience in IT, with over 4 years of experience in delivering cloud deployments. His professional interests include Cloud Foundry and OpenStack, as well as multi-AZ, multi-region, and multi-DC DevOps. Alex likes to challenge himself by solving non-trivial problems.\",\"url\":\"https:\/\/www.altoros.com\/blog\/author\/alexey-makarevich\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Migrating Pivotal Cloud Foundry to a Multi-AZ Deployment | Altoros","description":"Deployments across multiple availability zones (AZ) help to achieve high availability at the network infrastructure level. Yet, there are installations implemented when Pivotal Cloud Foundry (PCF) could not be deployed in multiple AZs.","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:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/","og_locale":"en_US","og_type":"article","og_title":"Migrating Pivotal Cloud Foundry to a Multi-AZ Deployment | Altoros","og_description":"This post describes how we moved an up-and-running PCF installation from a single availability zone deployment to multiple AZs for one of the earliest adopters of the platform. &nbsp; Issues during migration The customer had been using PCF starting from version 1.0 and eventually ran out of resources to support its deployments. Our [...]","og_url":"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/","og_site_name":"Altoros","article_published_time":"2017-01-12T05:15:31+00:00","article_modified_time":"2018-05-15T12:43:07+00:00","og_image":[{"width":640,"height":451,"url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/how-to-migrate-pivotal-cloud-foundry-to-multi-az-deployment-1.gif","type":"image\/gif"}],"author":"Alex Makarevich","twitter_misc":{"Written by":"Alex Makarevich","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/","url":"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/","name":"Migrating Pivotal Cloud Foundry to a Multi-AZ Deployment | Altoros","isPartOf":{"@id":"https:\/\/www.altoros.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#primaryimage"},"image":{"@id":"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#primaryimage"},"thumbnailUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/how-to-migrate-pivotal-cloud-foundry-to-multi-az-deployment-1.gif","datePublished":"2017-01-12T05:15:31+00:00","dateModified":"2018-05-15T12:43:07+00:00","author":{"@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/0ad554ebe924a76b219a0287c1d2a770"},"breadcrumb":{"@id":"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#primaryimage","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/how-to-migrate-pivotal-cloud-foundry-to-multi-az-deployment-1.gif","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/how-to-migrate-pivotal-cloud-foundry-to-multi-az-deployment-1.gif","width":640,"height":451},{"@type":"BreadcrumbList","@id":"https:\/\/www.altoros.com\/blog\/migrating-pivotal-cloud-foundry-to-a-multi-az-deployment\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.altoros.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Migrating Pivotal Cloud Foundry to a Multi-AZ Deployment"}]},{"@type":"WebSite","@id":"https:\/\/www.altoros.com\/blog\/#website","url":"https:\/\/www.altoros.com\/blog\/","name":"Altoros","description":"Insight","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.altoros.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/0ad554ebe924a76b219a0287c1d2a770","name":"Alex Makarevich","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/alexei-makarevich-1-140x140.jpg","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/01\/alexei-makarevich-1-140x140.jpg","caption":"Alex Makarevich"},"description":"Alex Makarevich is a Cloud Foundry engineer at Altoros. He has over 15 years of experience in IT, with over 4 years of experience in delivering cloud deployments. His professional interests include Cloud Foundry and OpenStack, as well as multi-AZ, multi-region, and multi-DC DevOps. Alex likes to challenge himself by solving non-trivial problems.","url":"https:\/\/www.altoros.com\/blog\/author\/alexey-makarevich\/"}]}},"_links":{"self":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/19499","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/users\/43"}],"replies":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/comments?post=19499"}],"version-history":[{"count":26,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/19499\/revisions"}],"predecessor-version":[{"id":33245,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/19499\/revisions\/33245"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media\/19575"}],"wp:attachment":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media?parent=19499"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/categories?post=19499"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/tags?post=19499"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}