Files
nexus/sreweekly/articles/295/04-multicloud-failover-is-almost-always-a-terrible-idea.html
2026-09-12 17:23:01 +08:00

1618 lines
130 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<!--[if IE 7]>
<html id="ie7" lang="en">
<![endif]-->
<!--[if IE 8]>
<html id="ie8" lang="en">
<![endif]-->
<!--[if (!IE)]><!-->
<html lang="en">
<!--<![endif]-->
<head>
<meta charset="UTF-8" />
<link rel="profile" href="http://gmpg.org/xfn/11" />
<link rel="pingback" href="https://cloudpundit.com/xmlrpc.php" />
<title>Multicloud failover is almost always a terrible idea &#8211; CloudPundit: Massive-Scale Computing</title>
<meta name='robots' content='max-image-preview:large' />
<!-- Async WordPress.com Remote Login -->
<script id="wpcom_remote_login_js">
var wpcom_remote_login_extra_auth = '';
function wpcom_remote_login_remove_dom_node_id( element_id ) {
var dom_node = document.getElementById( element_id );
if ( dom_node ) { dom_node.parentNode.removeChild( dom_node ); }
}
function wpcom_remote_login_remove_dom_node_classes( class_name ) {
var dom_nodes = document.querySelectorAll( '.' + class_name );
for ( var i = 0; i < dom_nodes.length; i++ ) {
dom_nodes[ i ].parentNode.removeChild( dom_nodes[ i ] );
}
}
function wpcom_remote_login_final_cleanup() {
wpcom_remote_login_remove_dom_node_classes( "wpcom_remote_login_msg" );
wpcom_remote_login_remove_dom_node_id( "wpcom_remote_login_key" );
wpcom_remote_login_remove_dom_node_id( "wpcom_remote_login_validate" );
wpcom_remote_login_remove_dom_node_id( "wpcom_remote_login_js" );
wpcom_remote_login_remove_dom_node_id( "wpcom_request_access_iframe" );
wpcom_remote_login_remove_dom_node_id( "wpcom_request_access_styles" );
}
// Watch for messages back from the remote login
window.addEventListener( "message", function( e ) {
if ( e.origin === "https://r-login.wordpress.com" ) {
var data = {};
try {
data = JSON.parse( e.data );
} catch( e ) {
wpcom_remote_login_final_cleanup();
return;
}
if ( data.msg === 'LOGIN' ) {
// Clean up the login check iframe
wpcom_remote_login_remove_dom_node_id( "wpcom_remote_login_key" );
var id_regex = new RegExp( /^[0-9]+$/ );
var token_regex = new RegExp( /^.*|.*|.*$/ );
if (
token_regex.test( data.token )
&& id_regex.test( data.wpcomid )
) {
// We have everything we need to ask for a login
var script = document.createElement( "script" );
script.setAttribute( "id", "wpcom_remote_login_validate" );
script.src = '/remote-login.php?wpcom_remote_login=validate'
+ '&wpcomid=' + data.wpcomid
+ '&token=' + encodeURIComponent( data.token )
+ '&host=' + window.location.protocol
+ '//' + window.location.hostname
+ '&postid=1158'
+ '&is_singular=1';
document.body.appendChild( script );
}
return;
}
// Safari ITP, not logged in, so redirect
if ( data.msg === 'LOGIN-REDIRECT' ) {
window.location = 'https://wordpress.com/log-in?redirect_to=' + window.location.href;
return;
}
// Safari ITP, storage access failed, remove the request
if ( data.msg === 'LOGIN-REMOVE' ) {
var css_zap = 'html { -webkit-transition: margin-top 1s; transition: margin-top 1s; } /* 9001 */ html { margin-top: 0 !important; } * html body { margin-top: 0 !important; } @media screen and ( max-width: 782px ) { html { margin-top: 0 !important; } * html body { margin-top: 0 !important; } }';
var style_zap = document.createElement( 'style' );
style_zap.type = 'text/css';
style_zap.appendChild( document.createTextNode( css_zap ) );
document.body.appendChild( style_zap );
var e = document.getElementById( 'wpcom_request_access_iframe' );
e.parentNode.removeChild( e );
document.cookie = 'wordpress_com_login_access=denied; path=/; max-age=31536000';
return;
}
// Safari ITP
if ( data.msg === 'REQUEST_ACCESS' ) {
console.log( 'request access: safari' );
// Check ITP iframe enable/disable knob
if ( wpcom_remote_login_extra_auth !== 'safari_itp_iframe' ) {
return;
}
// If we are in a "private window" there is no ITP.
var private_window = false;
try {
var opendb = window.openDatabase( null, null, null, null );
} catch( e ) {
private_window = true;
}
if ( private_window ) {
console.log( 'private window' );
return;
}
var iframe = document.createElement( 'iframe' );
iframe.id = 'wpcom_request_access_iframe';
iframe.setAttribute( 'scrolling', 'no' );
iframe.setAttribute( 'sandbox', 'allow-storage-access-by-user-activation allow-scripts allow-same-origin allow-top-navigation-by-user-activation' );
iframe.src = 'https://r-login.wordpress.com/remote-login.php?wpcom_remote_login=request_access&origin=' + encodeURIComponent( data.origin ) + '&wpcomid=' + encodeURIComponent( data.wpcomid );
var css = 'html { -webkit-transition: margin-top 1s; transition: margin-top 1s; } /* 9001 */ html { margin-top: 46px !important; } * html body { margin-top: 46px !important; } @media screen and ( max-width: 660px ) { html { margin-top: 71px !important; } * html body { margin-top: 71px !important; } #wpcom_request_access_iframe { display: block; height: 71px !important; } } #wpcom_request_access_iframe { border: 0px; height: 46px; position: fixed; top: 0; left: 0; width: 100%; min-width: 100%; z-index: 99999; background: #23282d; } ';
var style = document.createElement( 'style' );
style.type = 'text/css';
style.id = 'wpcom_request_access_styles';
style.appendChild( document.createTextNode( css ) );
document.body.appendChild( style );
document.body.appendChild( iframe );
}
if ( data.msg === 'DONE' ) {
wpcom_remote_login_final_cleanup();
}
}
}, false );
// Inject the remote login iframe after the page has had a chance to load
// more critical resources
window.addEventListener( "DOMContentLoaded", function( e ) {
var iframe = document.createElement( "iframe" );
iframe.style.display = "none";
iframe.setAttribute( "scrolling", "no" );
iframe.setAttribute( "id", "wpcom_remote_login_key" );
iframe.src = "https://r-login.wordpress.com/remote-login.php"
+ "?wpcom_remote_login=key"
+ "&origin=aHR0cHM6Ly9jbG91ZHB1bmRpdC5jb20%3D"
+ "&wpcomid=4543198"
+ "&time=" + Math.floor( Date.now() / 1000 );
document.body.appendChild( iframe );
}, false );
</script>
<link rel='dns-prefetch' href='//s1.wp.com' />
<link rel='dns-prefetch' href='//s2.wp.com' />
<link rel='dns-prefetch' href='//widgets.wp.com' />
<link rel='dns-prefetch' href='//wordpress.com' />
<link rel='dns-prefetch' href='//s0.wp.com' />
<link rel='dns-prefetch' href='//af.pubmine.com' />
<link rel="alternate" type="application/rss+xml" title="CloudPundit: Massive-Scale Computing &raquo; Feed" href="https://cloudpundit.com/feed/" />
<link rel="alternate" type="application/rss+xml" title="CloudPundit: Massive-Scale Computing &raquo; Comments Feed" href="https://cloudpundit.com/comments/feed/" />
<link rel="alternate" type="application/rss+xml" title="CloudPundit: Massive-Scale Computing &raquo; Multicloud failover is almost always a terrible&nbsp;idea Comments Feed" href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/feed/" />
<script type="text/javascript">
/* <![CDATA[ */
function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function () {
oldonload();
func();
}
}
}
/* ]]> */
</script>
<style id="wp-img-auto-sizes-contain-inline-css">
img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
/*# sourceURL=wp-img-auto-sizes-contain-inline-css */
</style>
<link crossorigin='anonymous' rel='stylesheet' id='all-css-2-1' href='/_static/??-eJx9jFEKAjEMRC9kjfrh4od4ltKGpdu0CSaleHtbEQQRCQw8ZvKgiwtcDatBaU6orakq9BRXNAVso+Wc0JHvYFiEvKGC2oNwH1R38FuwoYkP+c1QmGfERuP5jlMSnbDaF/1TUsr4Eb9ozm/lelyWw2Xc6bw9AWlRTZ8=&cssminify=yes' type='text/css' media='all' />
<style id="wp-emoji-styles-inline-css">
img.wp-smiley, img.emoji {
display: inline !important;
border: none !important;
box-shadow: none !important;
height: 1em !important;
width: 1em !important;
margin: 0 0.07em !important;
vertical-align: -0.1em !important;
background: none !important;
padding: 0 !important;
}
/*# sourceURL=wp-emoji-styles-inline-css */
</style>
<style id="wp-block-library-inline-css">
:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-break:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style^=border-color],[style*=";border-color"],[style*="; border-color"]){border-style:solid}html :where([style^=border-top-color],[style*=";border-top-color"],[style*="; border-top-color"]){border-top-style:solid}html :where([style^=border-right-color],[style*=";border-right-color"],[style*="; border-right-color"]){border-right-style:solid}html :where([style^=border-bottom-color],[style*=";border-bottom-color"],[style*="; border-bottom-color"]){border-bottom-style:solid}html :where([style^=border-left-color],[style*=";border-left-color"],[style*="; border-left-color"]){border-left-style:solid}html :where([style^=border-width],[style*=";border-width"],[style*="; border-width"]){border-style:solid}html :where([style^=border-top-width],[style*=";border-top-width"],[style*="; border-top-width"]){border-top-style:solid}html :where([style^=border-right-width],[style*=";border-right-width"],[style*="; border-right-width"]){border-right-style:solid}html :where([style^=border-bottom-width],[style*=";border-bottom-width"],[style*="; border-bottom-width"]){border-bottom-style:solid}html :where([style^=border-left-width],[style*=";border-left-width"],[style*="; border-left-width"]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}
/*# sourceURL=/wp-content/plugins/gutenberg-core/v23.9.1/build/styles/block-library/common.min.css */
</style>
<style id="wp-block-paragraph-inline-css">
.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-left[style*="writing-mode:vertical-lr"],p.has-text-align-right[style*="writing-mode:vertical-rl"]{rotate:180deg}
/*# sourceURL=/wp-content/plugins/gutenberg-core/v23.9.1/build/styles/block-library/paragraph/style.min.css */
</style>
<style id="wp-block-library-inline-css-extra">
.has-text-align-justify {
text-align:justify;
}
.has-text-align-justify{text-align:justify;}
/*# sourceURL=wp-block-library-inline-css */
</style>
<style id="classic-theme-styles-inline-css">
.wp-block-button__link{background-color:#32373c;border-radius:9999px;box-shadow:none;color:#fff;font-size:1.125em;padding:calc(.667em + 2px) calc(1.333em + 2px);text-decoration:none}.wp-block-file__button{background:#32373c;color:#fff}.wp-block-accordion-heading{margin:0}.wp-block-accordion-heading__toggle{background-color:inherit!important;color:inherit!important}.wp-block-accordion-heading__toggle:not(:focus-visible){outline:none}.wp-block-accordion-heading__toggle:focus,.wp-block-accordion-heading__toggle:hover{background-color:inherit!important;border:none;box-shadow:none;color:inherit;padding:var(--wp--preset--spacing--20,1em) 0;text-decoration:none}.wp-block-accordion-heading__toggle:focus-visible{outline:auto;outline-offset:0}.wp-block-tab:not(.has-text-color){color:inherit!important}.wp-block-tab:not(.has-background){background-color:inherit!important}.wp-block-tab:focus,.wp-block-tab:hover{text-decoration:none}.wp-block-tab:focus-visible{outline:auto;outline-offset:0}
/*# sourceURL=/wp-content/plugins/gutenberg-core/v23.9.1/build/styles/block-library/classic.min.css */
</style>
<style id="coblocks-inline-format-inline-css">
.uppercase{text-transform:uppercase}
/*# sourceURL=coblocks-inline-format-inline-css */
</style>
<link crossorigin='anonymous' rel='stylesheet' id='all-css-12-1' href='/_static/??-eJx9jUsOwjAMRC+EY6UgCAvEWZrEKoG4jWq3hduTLvisurFG1nszuBQIQ6/UK5Y8dakXDIPPQ3gINsY6Y0ESl0ww0mwOGJPolwDRVyYTRHb4V8QT/LpGqn8ura4EU0wtZeKKbWlLih1p1eWTQem5rZQ6A96XkUSgXk4Tg97qlqzelS/26KzbN835dH8DjlpbIA==&cssminify=yes' type='text/css' media='all' />
<style id="global-styles-inline-css">
:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--font-family--albert-sans: 'Albert Sans', sans-serif;--wp--preset--font-family--alegreya: Alegreya, serif;--wp--preset--font-family--arvo: Arvo, serif;--wp--preset--font-family--bodoni-moda: 'Bodoni Moda', serif;--wp--preset--font-family--bricolage-grotesque: 'Bricolage Grotesque', sans-serif;--wp--preset--font-family--cabin: Cabin, sans-serif;--wp--preset--font-family--chivo: Chivo, sans-serif;--wp--preset--font-family--commissioner: Commissioner, sans-serif;--wp--preset--font-family--cormorant: Cormorant, serif;--wp--preset--font-family--courier-prime: 'Courier Prime', monospace;--wp--preset--font-family--crimson-pro: 'Crimson Pro', serif;--wp--preset--font-family--dm-mono: 'DM Mono', monospace;--wp--preset--font-family--dm-sans: 'DM Sans', sans-serif;--wp--preset--font-family--dm-serif-display: 'DM Serif Display', serif;--wp--preset--font-family--domine: Domine, serif;--wp--preset--font-family--eb-garamond: 'EB Garamond', serif;--wp--preset--font-family--epilogue: Epilogue, sans-serif;--wp--preset--font-family--fahkwang: Fahkwang, sans-serif;--wp--preset--font-family--figtree: Figtree, sans-serif;--wp--preset--font-family--fira-sans: 'Fira Sans', sans-serif;--wp--preset--font-family--fjalla-one: 'Fjalla One', sans-serif;--wp--preset--font-family--fraunces: Fraunces, serif;--wp--preset--font-family--gabarito: Gabarito, system-ui;--wp--preset--font-family--ibm-plex-mono: 'IBM Plex Mono', monospace;--wp--preset--font-family--ibm-plex-sans: 'IBM Plex Sans', sans-serif;--wp--preset--font-family--ibarra-real-nova: 'Ibarra Real Nova', serif;--wp--preset--font-family--instrument-serif: 'Instrument Serif', serif;--wp--preset--font-family--inter: Inter, sans-serif;--wp--preset--font-family--josefin-sans: 'Josefin Sans', sans-serif;--wp--preset--font-family--jost: Jost, sans-serif;--wp--preset--font-family--libre-baskerville: 'Libre Baskerville', serif;--wp--preset--font-family--libre-franklin: 'Libre Franklin', sans-serif;--wp--preset--font-family--literata: Literata, serif;--wp--preset--font-family--lora: Lora, serif;--wp--preset--font-family--merriweather: Merriweather, serif;--wp--preset--font-family--montserrat: Montserrat, sans-serif;--wp--preset--font-family--newsreader: Newsreader, serif;--wp--preset--font-family--noto-sans-mono: 'Noto Sans Mono', sans-serif;--wp--preset--font-family--nunito: Nunito, sans-serif;--wp--preset--font-family--open-sans: 'Open Sans', sans-serif;--wp--preset--font-family--overpass: Overpass, sans-serif;--wp--preset--font-family--pt-serif: 'PT Serif', serif;--wp--preset--font-family--petrona: Petrona, serif;--wp--preset--font-family--piazzolla: Piazzolla, serif;--wp--preset--font-family--playfair-display: 'Playfair Display', serif;--wp--preset--font-family--plus-jakarta-sans: 'Plus Jakarta Sans', sans-serif;--wp--preset--font-family--poppins: Poppins, sans-serif;--wp--preset--font-family--raleway: Raleway, sans-serif;--wp--preset--font-family--roboto: Roboto, sans-serif;--wp--preset--font-family--roboto-slab: 'Roboto Slab', serif;--wp--preset--font-family--rubik: Rubik, sans-serif;--wp--preset--font-family--rufina: Rufina, serif;--wp--preset--font-family--sora: Sora, sans-serif;--wp--preset--font-family--source-sans-3: 'Source Sans 3', sans-serif;--wp--preset--font-family--source-serif-4: 'Source Serif 4', serif;--wp--preset--font-family--space-mono: 'Space Mono', monospace;--wp--preset--font-family--syne: Syne, sans-serif;--wp--preset--font-family--texturina: Texturina, serif;--wp--preset--font-family--urbanist: Urbanist, sans-serif;--wp--preset--font-family--work-sans: 'Work Sans', sans-serif;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.has-albert-sans-font-family{font-family: var(--wp--preset--font-family--albert-sans) !important;}.has-alegreya-font-family{font-family: var(--wp--preset--font-family--alegreya) !important;}.has-arvo-font-family{font-family: var(--wp--preset--font-family--arvo) !important;}.has-bodoni-moda-font-family{font-family: var(--wp--preset--font-family--bodoni-moda) !important;}.has-bricolage-grotesque-font-family{font-family: var(--wp--preset--font-family--bricolage-grotesque) !important;}.has-cabin-font-family{font-family: var(--wp--preset--font-family--cabin) !important;}.has-chivo-font-family{font-family: var(--wp--preset--font-family--chivo) !important;}.has-commissioner-font-family{font-family: var(--wp--preset--font-family--commissioner) !important;}.has-cormorant-font-family{font-family: var(--wp--preset--font-family--cormorant) !important;}.has-courier-prime-font-family{font-family: var(--wp--preset--font-family--courier-prime) !important;}.has-crimson-pro-font-family{font-family: var(--wp--preset--font-family--crimson-pro) !important;}.has-dm-mono-font-family{font-family: var(--wp--preset--font-family--dm-mono) !important;}.has-dm-sans-font-family{font-family: var(--wp--preset--font-family--dm-sans) !important;}.has-dm-serif-display-font-family{font-family: var(--wp--preset--font-family--dm-serif-display) !important;}.has-domine-font-family{font-family: var(--wp--preset--font-family--domine) !important;}.has-eb-garamond-font-family{font-family: var(--wp--preset--font-family--eb-garamond) !important;}.has-epilogue-font-family{font-family: var(--wp--preset--font-family--epilogue) !important;}.has-fahkwang-font-family{font-family: var(--wp--preset--font-family--fahkwang) !important;}.has-figtree-font-family{font-family: var(--wp--preset--font-family--figtree) !important;}.has-fira-sans-font-family{font-family: var(--wp--preset--font-family--fira-sans) !important;}.has-fjalla-one-font-family{font-family: var(--wp--preset--font-family--fjalla-one) !important;}.has-fraunces-font-family{font-family: var(--wp--preset--font-family--fraunces) !important;}.has-gabarito-font-family{font-family: var(--wp--preset--font-family--gabarito) !important;}.has-ibm-plex-mono-font-family{font-family: var(--wp--preset--font-family--ibm-plex-mono) !important;}.has-ibm-plex-sans-font-family{font-family: var(--wp--preset--font-family--ibm-plex-sans) !important;}.has-ibarra-real-nova-font-family{font-family: var(--wp--preset--font-family--ibarra-real-nova) !important;}.has-instrument-serif-font-family{font-family: var(--wp--preset--font-family--instrument-serif) !important;}.has-inter-font-family{font-family: var(--wp--preset--font-family--inter) !important;}.has-josefin-sans-font-family{font-family: var(--wp--preset--font-family--josefin-sans) !important;}.has-jost-font-family{font-family: var(--wp--preset--font-family--jost) !important;}.has-libre-baskerville-font-family{font-family: var(--wp--preset--font-family--libre-baskerville) !important;}.has-libre-franklin-font-family{font-family: var(--wp--preset--font-family--libre-franklin) !important;}.has-literata-font-family{font-family: var(--wp--preset--font-family--literata) !important;}.has-lora-font-family{font-family: var(--wp--preset--font-family--lora) !important;}.has-merriweather-font-family{font-family: var(--wp--preset--font-family--merriweather) !important;}.has-montserrat-font-family{font-family: var(--wp--preset--font-family--montserrat) !important;}.has-newsreader-font-family{font-family: var(--wp--preset--font-family--newsreader) !important;}.has-noto-sans-mono-font-family{font-family: var(--wp--preset--font-family--noto-sans-mono) !important;}.has-nunito-font-family{font-family: var(--wp--preset--font-family--nunito) !important;}.has-open-sans-font-family{font-family: var(--wp--preset--font-family--open-sans) !important;}.has-overpass-font-family{font-family: var(--wp--preset--font-family--overpass) !important;}.has-pt-serif-font-family{font-family: var(--wp--preset--font-family--pt-serif) !important;}.has-petrona-font-family{font-family: var(--wp--preset--font-family--petrona) !important;}.has-piazzolla-font-family{font-family: var(--wp--preset--font-family--piazzolla) !important;}.has-playfair-display-font-family{font-family: var(--wp--preset--font-family--playfair-display) !important;}.has-plus-jakarta-sans-font-family{font-family: var(--wp--preset--font-family--plus-jakarta-sans) !important;}.has-poppins-font-family{font-family: var(--wp--preset--font-family--poppins) !important;}.has-raleway-font-family{font-family: var(--wp--preset--font-family--raleway) !important;}.has-roboto-font-family{font-family: var(--wp--preset--font-family--roboto) !important;}.has-roboto-slab-font-family{font-family: var(--wp--preset--font-family--roboto-slab) !important;}.has-rubik-font-family{font-family: var(--wp--preset--font-family--rubik) !important;}.has-rufina-font-family{font-family: var(--wp--preset--font-family--rufina) !important;}.has-sora-font-family{font-family: var(--wp--preset--font-family--sora) !important;}.has-source-sans-3-font-family{font-family: var(--wp--preset--font-family--source-sans-3) !important;}.has-source-serif-4-font-family{font-family: var(--wp--preset--font-family--source-serif-4) !important;}.has-space-mono-font-family{font-family: var(--wp--preset--font-family--space-mono) !important;}.has-syne-font-family{font-family: var(--wp--preset--font-family--syne) !important;}.has-texturina-font-family{font-family: var(--wp--preset--font-family--texturina) !important;}.has-urbanist-font-family{font-family: var(--wp--preset--font-family--urbanist) !important;}.has-work-sans-font-family{font-family: var(--wp--preset--font-family--work-sans) !important;}
/*# sourceURL=global-styles-inline-css */
</style>
<link crossorigin='anonymous' rel='stylesheet' id='all-css-14-1' href='/wp-content/mu-plugins/jetpack-mu-wpcom-plugin/moon/jetpack_vendor/automattic/jetpack-mu-wpcom/src/build/verbum-comments/verbum-comments.css?m=1785895867i&cssminify=yes' type='text/css' media='all' />
<link rel='stylesheet' id='verbum-gutenberg-css-css' href='https://widgets.wp.com/verbum-block-editor/block-editor.css?ver=1771405207' media='all' />
<link crossorigin='anonymous' rel='stylesheet' id='all-css-16-1' href='/_static/??-eJyNjkEOwjAMBD9EsHqAtgfEW5rIBIMTh8YR6u8JVIICEuLk3bXHWrgm4yQqRoVQTOLiKWZwEkKNDNMZq8sfybomKyCIolTp/BTzYvFTjxjqh1QshCkrXQpC1onxr0snLGOeh7FcvqlF5xEti6/SPwq/7C/IoxgWNyhJfDPmwAONd3Qfdk3bdX273TT96QZhlnJO&cssminify=yes' type='text/css' media='all' />
<link crossorigin='anonymous' rel='stylesheet' id='print-css-17-1' href='/wp-content/mu-plugins/global-print/global-print.css?m=1465851035i&cssminify=yes' type='text/css' media='print' />
<style id="jetpack-global-styles-frontend-style-inline-css">
:root { --font-headings: unset; --font-base: unset; --font-headings-default: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif; --font-base-default: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;}
/*# sourceURL=jetpack-global-styles-frontend-style-inline-css */
</style>
<link crossorigin='anonymous' rel='stylesheet' id='all-css-20-1' href='/_static/??-eJyNjcEKAjEMRH/ImhVlqwfxU6TbhrZrmhTTIv69u+JFvHgZ5sHwBh7VeOGG3KB0U6nHzAoztur87cNQRNYInVBBk7tjcCE83zVz3HrVDfxvumb2MPVMAVR8dmRIougX/DhbwrK8pwNEksnROriU884e9+PJDnaYXxwFS20=&cssminify=yes' type='text/css' media='all' />
<script id="jetpack_related-posts-js-extra">
var related_posts_js_options = {"post_heading":"h4"};
//# sourceURL=jetpack_related-posts-js-extra
</script>
<script id="wpcom-actionbar-placeholder-js-extra">
var actionbardata = {"siteID":"4543198","postID":"1158","siteURL":"https://cloudpundit.com","xhrURL":"https://cloudpundit.com/wp-admin/admin-ajax.php","nonce":"e8f3aebd24","isLoggedIn":"","statusMessage":"","subsEmailDefault":"instantly","proxyScriptUrl":"https://s0.wp.com/wp-content/js/wpcom-proxy-request.js?m=1513050504i&amp;ver=20211021","shortlink":"https://wp.me/pj3To-iG","i18n":{"followedText":"New posts from this site will now appear in your \u003Ca href=\"https://wordpress.com/reader\"\u003EReader\u003C/a\u003E","foldBar":"Collapse this bar","unfoldBar":"Expand this bar","shortLinkCopied":"Shortlink copied to clipboard."}};
//# sourceURL=wpcom-actionbar-placeholder-js-extra
</script>
<script id="jetpack-mu-wpcom-settings-js-before">
var JETPACK_MU_WPCOM_SETTINGS = {"assetsUrl":"https://s1.wp.com/wp-content/mu-plugins/jetpack-mu-wpcom-plugin/moon/jetpack_vendor/automattic/jetpack-mu-wpcom/src/build/"};
//# sourceURL=jetpack-mu-wpcom-settings-js-before
</script>
<script crossorigin='anonymous' type='text/javascript' src='/_static/??-eJx1j0sOwjAMRC9EsMqGskAcBbVJKAmJHWIH6O1JxUcFwWo08swbGa5JaUKxKBCLSqEMDhm8ldTp09NDJELYO9TQFxcMZBs6sUYlYuFPt4wOl54XMAP7mgmiUqbb+LpVWCjG8nT052Lz+JQ54G9IRTfkOvprTY421koqPcSRxdXC1D8U1OII+TvfBxrej18pm86w0qFjfgzrmOCymkQhoRpMyhWxi9tm3bbrTduuGn8HRex5nw=='></script>
<script id="rlt-proxy-js-after">
rltInitialize( {"token":null,"iframeOrigins":["https:\/\/widgets.wp.com"]} );
//# sourceURL=rlt-proxy-js-after
</script>
<link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://cloudpundit.wordpress.com/xmlrpc.php?rsd" />
<meta name="generator" content="WordPress.com" />
<link rel="canonical" href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/" />
<link rel='shortlink' href='https://wp.me/pj3To-iG' />
<link rel="alternate" type="application/json+oembed" href="https://public-api.wordpress.com/oembed/?format=json&amp;url=https%3A%2F%2Fcloudpundit.com%2F2021%2F10%2F14%2Fmulticloud-failover-is-almost-always-a-terrible-idea%2F&amp;for=wpcom-auto-discovery" /><link rel="alternate" type="application/xml+oembed" href="https://public-api.wordpress.com/oembed/?format=xml&amp;url=https%3A%2F%2Fcloudpundit.com%2F2021%2F10%2F14%2Fmulticloud-failover-is-almost-always-a-terrible-idea%2F&amp;for=wpcom-auto-discovery" />
<!-- Jetpack Open Graph Tags -->
<meta property="og:type" content="article" />
<meta property="og:title" content="Multicloud failover is almost always a terrible idea" />
<meta property="og:url" content="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/" />
<meta property="og:description" content="Multicloud failover is complex and costly to the point of nearly almost always being impractical, and it&#8217;s not an especially effective way to address cloud resilience risks." />
<meta property="article:published_time" content="2021-10-14T18:13:31+00:00" />
<meta property="article:modified_time" content="2021-10-15T01:02:02+00:00" />
<meta property="og:site_name" content="CloudPundit: Massive-Scale Computing" />
<meta property="og:image" content="https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=200&#038;ts=1789178013" />
<meta property="og:image:width" content="200" />
<meta property="og:image:height" content="200" />
<meta property="og:image:alt" content="" />
<meta property="og:locale" content="en_US" />
<meta property="article:publisher" content="https://www.facebook.com/WordPresscom" />
<meta name="twitter:creator" content="@cloudpundit" />
<meta name="twitter:site" content="@cloudpundit" />
<meta name="twitter:text:title" content="Multicloud failover is almost always a terrible&nbsp;idea" />
<meta name="twitter:image" content="https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=240" />
<meta name="twitter:card" content="summary" />
<!-- End Jetpack Open Graph Tags -->
<link rel="shortcut icon" type="image/x-icon" href="https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=32" sizes="16x16" />
<link rel="icon" type="image/x-icon" href="https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=32" sizes="16x16" />
<link rel="apple-touch-icon" href="https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=114" />
<link rel='openid.server' href='https://cloudpundit.com/?openidserver=1' />
<link rel='openid.delegate' href='https://cloudpundit.com/' />
<link rel="search" type="application/opensearchdescription+xml" href="https://cloudpundit.com/osd.xml" title="CloudPundit: Massive-Scale Computing" />
<link rel="search" type="application/opensearchdescription+xml" href="https://s1.wp.com/opensearch.xml" title="WordPress.com" />
<style>.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style> <style type="text/css">
.recentcomments a {
display: inline !important;
padding: 0 !important;
margin: 0 !important;
}
table.recentcommentsavatartop img.avatar, table.recentcommentsavatarend img.avatar {
border: 0px;
margin: 0;
}
table.recentcommentsavatartop a, table.recentcommentsavatarend a {
border: 0px !important;
background-color: transparent !important;
}
td.recentcommentsavatarend, td.recentcommentsavatartop {
padding: 0px 0px 1px 0px;
margin: 0px;
}
td.recentcommentstextend {
border: none !important;
padding: 0px 0px 2px 10px;
}
.rtl td.recentcommentstextend {
padding: 0px 10px 2px 0px;
}
td.recentcommentstexttop {
border: none;
padding: 0px 0px 0px 10px;
}
.rtl td.recentcommentstexttop {
padding: 0px 10px 0px 0px;
}
</style>
<meta name="description" content="Multicloud failover is complex and costly to the point of nearly almost always being impractical, and it&#039;s not an especially effective way to address cloud resilience risks." />
<script>
var wa_client = {}; wa_client.cmd = []; wa_client.config = { 'blog_id': 4543198, 'blog_language': 'en', 'is_wordads': false, 'hosting_type': 0, 'afp_account_id': 'pub-2749551775505399', 'afp_host_id': 5038568878849053, 'theme': 'pub/mystique', '_': { 'title': 'Advertisement', 'privacy_settings': 'Privacy Settings' }, 'formats': [ 'inline', 'belowpost', 'bottom_sticky', 'sidebar_sticky_right', 'sidebar', 'gutenberg_rectangle', 'gutenberg_leaderboard', 'gutenberg_mobile_leaderboard', 'gutenberg_skyscraper' ] };
</script>
<script type="text/javascript">
window.doNotSellCallback = function() {
var linkElements = [
'a[href="https://wordpress.com/?ref=footer_blog"]',
'a[href="https://wordpress.com/?ref=footer_website"]',
'a[href="https://wordpress.com/?ref=vertical_footer"]',
'a[href^="https://wordpress.com/?ref=footer_segment_"]',
].join(',');
var dnsLink = document.createElement( 'a' );
dnsLink.href = 'https://wordpress.com/advertising-program-optout/';
dnsLink.classList.add( 'do-not-sell-link' );
dnsLink.rel = 'nofollow';
dnsLink.style.marginLeft = '0.5em';
dnsLink.textContent = 'Do Not Sell or Share My Personal Information';
var creditLinks = document.querySelectorAll( linkElements );
if ( 0 === creditLinks.length ) {
return false;
}
Array.prototype.forEach.call( creditLinks, function( el ) {
el.insertAdjacentElement( 'afterend', dnsLink );
});
return true;
};
</script>
<script type="text/javascript">
window.google_analytics_uacct = "UA-52447-2";
</script>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-52447-2']);
_gaq.push(['_gat._anonymizeIp']);
_gaq.push(['_setDomainName', 'none']);
_gaq.push(['_setAllowLinker', true]);
_gaq.push(['_initData']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(ga);
})();
</script>
</head>
<body class="wp-singular post-template-default single single-post postid-1158 single-format-standard wp-theme-pubmystique customizer-styles-applied content-sidebar jetpack-reblog-enabled">
<div id="page">
<div id="container">
<ul class="skip">
<li><a href="#access">Skip to navigation</a></li>
<li><a href="#main">Skip to main content</a></li>
<li><a href="#sidebar">Skip to primary sidebar</a></li>
<li><a href="#sidebar2">Skip to secondary sidebar</a></li>
<li><a href="#footer">Skip to footer</a></li>
</ul>
<div id="header">
<div id="branding" class="clear-block">
<a class="home-link" href="https://cloudpundit.com/" title="CloudPundit: Massive-Scale Computing" rel="home">
<h1 id="logo">CloudPundit: Massive-Scale Computing</h1>
<h2 id="site-description">the business of Internet infrastructure, cloud computing, and data centers</h2>
</a>
</div><!-- #branding-->
<div id="access" class="clear-block" role="navigation">
<false class="menu"><ul>
<li ><a href="https://cloudpundit.com/">Home</a></li><li class="page_item page-item-2"><a href="https://cloudpundit.com/about/">About Me</a></li>
<li class="page_item page-item-348"><a href="https://cloudpundit.com/coverage/">Coverage</a></li>
<li class="page_item page-item-135"><a href="https://cloudpundit.com/for-investors/">For Investors</a></li>
<li class="page_item page-item-912"><a href="https://cloudpundit.com/my-team/">My Team</a></li>
</ul></false>
<div class="social-icons">
<a href="https://cloudpundit.com/" class="twitter">Twitter</a>
<a href="https://cloudpundit.com/feed/" class="rss">RSS Feed</a>
</div><!-- .social-icons -->
</div><!-- #access -->
</div><!-- #header-->
<div id="main">
<div id="content-container">
<div id="content">
<div class="post-navigation nav-above">
<div class="nav-previous">
<a href="https://cloudpundit.com/2021/10/05/banks-are-accelerating-their-cloud-journeys/" rel="prev">&larr; Banks are accelerating their cloud&nbsp;journeys</a> </div>
<div class="nav-next">
<a href="https://cloudpundit.com/2021/10/20/cloud-cost-overruns-may-be-a-business-leadership-failure/" rel="next">Cloud cost overruns may be a business leadership&nbsp;failure &rarr;</a> </div>
</div><!-- .post-navigation -->
<div class="post-wrapper clear-block post-1158 post type-post status-publish format-standard hentry category-infrastructure tag-banking tag-bc-dr tag-cloud tag-iaas tag-paas tag-regulatory tag-resilience">
<h1 class="single-title">Multicloud failover is almost always a terrible&nbsp;idea</h1>
<div class="post-date">
<p class="day"><a href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/" rel="bookmark" title="Permanent Link to Multicloud failover is almost always a terrible&nbsp;idea">Oct 14</a></p>
</div><!-- .post-date -->
<div class="post-info clear-block">
<p class="author alignleft">Posted by <a href="https://cloudpundit.com/author/cyberlwl/" rel="author">Lydia Leong</a></p>
</div><!-- .post-info clear-block" -->
<div class="entry clear-block">
<p class="wp-block-paragraph">Most people &#8212; and notably, almost all regulators &#8212; are entirely wrong about addressing cloud resilience through the belief that they should do multicloud failover because, as I noted in a previous blog post,&nbsp;<a href="https://cloudpundit.com/2021/09/22/the-cloud-is-not-just-someone-elses-computer/"> the cloud is NOT just someone else&#8217;s computer</a>. (I have been particularly aghast at a recent Reuters article about the <a href="https://www.reuters.com/technology/new-rules-needed-cover-risks-cloud-computing-says-bank-england-2021-10-08/">Bank of England&#8217;s stance</a>.)</p>
<p class="wp-block-paragraph">Regulators, risk managers, and plenty of IT management largely think of AWS, Azure, etc. as monolithic entities, where &#8220;the cloud&#8221; can just break for them, and then kaboom, everything is dead everywhere worldwide. They imagine one gargantuan amorphous data center, subject to all the problems that can afflict single data centers, or single systems. But that&#8217;s not how it works, that&#8217;s not the most effective way to address risk, and testing the &#8220;resilience of the provider&#8221; (as a generic whole) is both impossible and meaningless.</p>
<p class="wp-block-paragraph">I mean, yes, there&#8217;s the possibility of the catastrophic failure of practically any software technology. There could be, for instance, a bug in the control systems of airplanes from fill-in-the-blank manufacturer that could be simultaneously triggered at a particular time and cause all their airplanes to drop out of the sky simultaneously. But we don&#8217;t plan to make commercial airlines maintain backup planes from some other manufacturer in case it happens. Instead, we try to ensure that each plane is resilient in many ways &#8212; which importantly addresses the <em>most probable&nbsp;</em>forms of failure, which will be electrical or mechanical failures of particular components.</p>
<p class="wp-block-paragraph">Hyperscale cloud providers are full of moving parts &#8212; lots of components, assembled together into something that looks and feels like a cohesive whole. Each of those components has its own form of resilience, and some of those components are more fragile than others. Some of those components are typically operating well within engineered tolerances. Some of those components might be operating at the edge of those tolerances in certain circumstances &#8212; likely due to unexpected pressures from scale &#8212; and might be extra-scary if the provider isn&#8217;t aware that they&#8217;re operating at that edge. In addition to fault-tolerance within each component, there are many mechanisms for fault-tolerance built into the interaction between those components.</p>
<p class="wp-block-paragraph">Every provider also has its own equivalent of &#8220;maintenance&#8221; (returning to the plane analogy). The quality of the &#8220;mechanics&#8221; and the operations will also impact how well the system as a whole operates.&nbsp; (See my previous blog post, &#8220;<a href="https://cloudpundit.com/2020/10/21/the-multi-headed-hydra-of-cloud-resilience/">The multi-headed hydra of cloud resilience</a>&#8221; for the factors that go into provider resilience.)</p>
<p class="wp-block-paragraph">It&#8217;s not impossible for a provider to have a worldwide outage that effectively impacts <em>all</em> services (rather than just a single service).&nbsp; Such outages are all typically rooted in something that prevents components from communicating with each other, or customers from connecting to the services &#8212; global network issues, DNS, security certificates, or identity. The first major incident of this type was the <a href="https://www.wired.com/2012/03/azure-leap-year-bug/">2012 Azure leap year outage</a>. The 2019 <a href="https://techmonitor.ai/techonology/cloud/google-cloud-outage-chubby">Google &#8220;Chubby&#8221; outage</a> had global network impact, including on GCP. There have been multiple Azure AD outages with broad impact across Microsoft&#8217;s cloud portfolio, most recently the <a href="https://www.computerweekly.com/news/252497921/Microsoft-cloud-users-hit-by-global-outage-linked-to-Azure-Active-Directory-issue">2021 Azure Active Directory outage</a>. (But there are certainly other possibilities. As recently as yesterday, there was a <a href="https://www.zdnet.com/article/global-azure-outage-knocked-out-virtual-machines-other-vm-dependent-services/">global Azure Windows VM outage</a> that impacted all Windows VM-dependent services.)</p>
<p class="wp-block-paragraph">Provider architectural and operational differences do clearly make a difference. AWS, notably, has never had a full regional failure or a global outage. The unique nature of GCP&#8217;s global network has both benefits and drawbacks. Azure has been improving steadily in reliability over the years as Microsoft addresses both service architecture and deployment (and other operations) processes.</p>
<p class="wp-block-paragraph">Note that while these outages can be multi-hour, they have generally been short enough that &#8212; given typical enterprise recovery-time objectives for disaster recovery, which are often lengthy &#8212; customers typically don&#8217;t activate a traditional DR plan. (Customers may take other mitigation actions, i.e. failover to another region, failover to an alternative application for a business process, and so forth.)</p>
<p class="wp-block-paragraph">Multicloud failover requires that you maintain full portability between two providers, which is a massive burden on your application developers. The basic compute runtime (whether VMs or containers) is not the problem, so OpenShift, Anthos, or other &#8220;I can move my containers&#8221; solutions won&#8217;t really help you. The problem is all the differentiators &#8212; the different network architectures and features, the different storage capabilities, the proprietary PaaS capabilities, the wildly different security capabilities, etc. Sure, you can run all open source in VMs, but at that point, why are you bothering with the cloud at all? Plus, even in a DR situation, you need some operational capabilities on the other cloud (monitoring, logging, etc.), even if not your full toolset.</p>
<p class="wp-block-paragraph">Moreover, the huge cost and complexity of a multicloud implementation is effectively a negative distraction from what you should&nbsp;<em>actually&nbsp;</em>be doing that would improve your uptime and reduce your risks, which is making your applications resilient to the types of failure that are actually probable. More on that in a future blog post.</p>
<div id="atatags-370373-6aa4b09dd6615">
<script type="text/javascript">
__ATA = window.__ATA || {};
__ATA.cmd = window.__ATA.cmd || [];
__ATA.cmd.push(function() {
__ATA.initVideoSlot('atatags-370373-6aa4b09dd6615', {
sectionId: '370373',
format: 'inread'
});
});
</script>
</div><span id="wordads-inline-marker" style="display: none;"></span><div id="jp-post-flair" class="sharedaddy sd-like-enabled sd-sharing-enabled"><div class="sharedaddy sd-sharing-enabled"><div class="robots-nocontent sd-block sd-social sd-social-official sd-sharing"><div class="sd-content"><ul><li class="share-twitter"><a href="https://twitter.com/share" class="twitter-share-button" data-url="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/" data-text="Multicloud failover is almost always a terrible idea" data-via="cloudpundit" data-related="wordpressdotcom">Tweet</a></li><li class="share-linkedin"><div class="linkedin_button"><script type="in/share" data-url="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/" data-counter="right"></script></div></li><li class="share-facebook"><div class="fb-share-button" data-href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/" data-layout="button_count"></div></li><li><a href="#" class="sharing-anchor sd-button share-more"><span>More</span></a></li><li class="share-end"></li></ul><div class="sharing-hidden"><div class="inner" style="display: none;"><ul><li class="share-email"><a rel="nofollow noopener noreferrer"
data-shared="sharing-email-1158"
class="share-email sd-button"
href="mailto:?subject=%5BShared%20Post%5D%20Multicloud%20failover%20is%20almost%20always%20a%20terrible%20idea&#038;body=https%3A%2F%2Fcloudpundit.com%2F2021%2F10%2F14%2Fmulticloud-failover-is-almost-always-a-terrible-idea%2F&#038;share=email"
target="_blank"
aria-labelledby="sharing-email-1158"
data-email-share-error-title="Do you have email set up?" data-email-share-error-text="If you&#039;re having problems sharing via email, you might not have email set up for your browser. You may need to create a new email yourself." data-email-share-nonce="de2ff0b913" data-email-share-track-url="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/?share=email">
<span id="sharing-email-1158" hidden>Email a link to a friend (Opens in new window)</span>
<span>Email</span>
</a></li><li class="share-print"><a rel="nofollow noopener noreferrer"
data-shared="sharing-print-1158"
class="share-print sd-button"
href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/#print?share=print"
target="_blank"
aria-labelledby="sharing-print-1158"
>
<span id="sharing-print-1158" hidden>Print (Opens in new window)</span>
<span>Print</span>
</a></li><li class="share-reddit"><a rel="nofollow noopener noreferrer"
data-shared="sharing-reddit-1158"
class="share-reddit sd-button"
href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/?share=reddit"
target="_blank"
aria-labelledby="sharing-reddit-1158"
>
<span id="sharing-reddit-1158" hidden>Share on Reddit (Opens in new window)</span>
<span>Reddit</span>
</a></li><li class="share-end"></li></ul></div></div></div></div></div><div class='sharedaddy sd-block sd-like jetpack-likes-widget-wrapper jetpack-likes-widget-unloaded' id='like-post-wrapper-4543198-1158-6aa4b09dd73e7' data-src='//widgets.wp.com/likes/index.html?ver=20260912#blog_id=4543198&amp;post_id=1158&amp;origin=cloudpundit.wordpress.com&amp;obj_id=4543198-1158-6aa4b09dd73e7&amp;domain=cloudpundit.com' data-name='like-post-frame-4543198-1158-6aa4b09dd73e7' data-title='Like or Reblog'><div class='likes-widget-placeholder post-likes-widget-placeholder' style='height: 55px;'><span class='button'><span>Like</span></span> <span class='loading'>Loading...</span></div><span class='sd-text-color'></span><a class='sd-link-color'></a></div>
<div id='jp-relatedposts' class='jp-relatedposts' >
<h3 class="jp-relatedposts-headline"><em>Related</em></h3>
</div></div> </div><!-- .entry -->
</div><!-- .post-wrapper -->
<div class="post-utility">
<p class="details">
Posted on October 14, 2021, in <a href="https://cloudpundit.com/category/infrastructure/" rel="category tag">Infrastructure</a> and tagged <a href="https://cloudpundit.com/tag/banking/" rel="tag">banking</a>, <a href="https://cloudpundit.com/tag/bc-dr/" rel="tag">BC/DR</a>, <a href="https://cloudpundit.com/tag/cloud/" rel="tag">cloud</a>, <a href="https://cloudpundit.com/tag/iaas/" rel="tag">IaaS</a>, <a href="https://cloudpundit.com/tag/paas/" rel="tag">PaaS</a>, <a href="https://cloudpundit.com/tag/regulatory/" rel="tag">regulatory</a>, <a href="https://cloudpundit.com/tag/resilience/" rel="tag">resilience</a>. Bookmark the <a href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/" title="Permalink to Multicloud failover is almost always a terrible&nbsp;idea" rel="bookmark">permalink</a>. <a href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/#comments">11 Comments</a>. </p>
</div><!-- .post-utility -->
<div class="post-navigation nav-below">
<div class="nav-previous">
<a href="https://cloudpundit.com/2021/10/05/banks-are-accelerating-their-cloud-journeys/" rel="prev">&larr; Banks are accelerating their cloud&nbsp;journeys</a> </div>
<div class="nav-next">
<a href="https://cloudpundit.com/2021/10/20/cloud-cost-overruns-may-be-a-business-leadership-failure/" rel="next">Cloud cost overruns may be a business leadership&nbsp;failure &rarr;</a> </div>
</div><!-- .post-navigation -->
<div id="post-extra-content" class="clear-block">
<div id="secondary-tabs">
<ul class="comment-tabs">
<li class="leave-a-comment">
<h3 class="comment-tab-title">
<a href="#respond" title="Leave a comment"> Leave a comment</a>
</h3>
</li>
<li>
<h3 class="comment-tab-title">
<a href="#trackbacks">Trackbacks 8</a>
</h3>
</li>
<li>
<h3 class="comment-tab-title">
<a href="#comments">Comments 3</a>
</h3>
</li>
</ul><!-- .comment-tabs -->
</div><!-- #secondary-tabs -->
<div id="commentlist">
<ol id="comments">
<li class="comment even thread-even depth-1" id="li-comment-211233">
<div id="comment-211233" class="tiptrigger">
<div class="comment-head comment-author vcard">
<cite class="fn"><a href="https://downdetector.co.uk/status/facebook/" class="url" rel="ugc external nofollow">T Rx</a></cite>
<span class="comment-meta commentmetadata">
|
<a href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/#comment-211233">
October 22, 2021 at 3:50 am</a>
</span><!-- .comment-meta .commentmetadata -->
</div><!-- .comment-head .comment-author .vcard -->
<div class="comment-body">
<p>Facebook and its many services went down for hours. Can&#8217;t imagine the implications if that happened to mission critical payment systems. The &#8216;clouds are not monoliths&#8217; argument misses the point. Distributed systems have catastrophic failures too e.g. if common / shared services go down / if there is a bug, config error introduced into them.</p>
<p id="comment-like-211233" data-liked=comment-not-liked class="comment-likes comment-not-liked"><a href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/?like_comment=211233&#038;_wpnonce=8184654c1e" class="comment-like-link needs-login" rel="nofollow" data-blog="4543198"><span>Like</span></a><span id="comment-like-count-211233" class="comment-like-feedback">Like</span></p>
</div><!-- .comment-body -->
<div class="act tip">
</span>
</div><!-- .act .tip -->
</div><!-- #comment-## -->
</li><!-- #comment-## -->
<li class="comment odd alt thread-odd thread-alt depth-1" id="li-comment-216122">
<div id="comment-216122" class="tiptrigger">
<div class="comment-head comment-author vcard">
<cite class="fn">MJ</cite>
<span class="comment-meta commentmetadata">
|
<a href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/#comment-216122">
February 24, 2022 at 12:24 am</a>
</span><!-- .comment-meta .commentmetadata -->
</div><!-- .comment-head .comment-author .vcard -->
<div class="comment-body">
<p>In response to the above comment:</p>
<p>&#8220;Facebook and its many services went down for hours. Can’t imagine the implications if that happened to mission critical payment systems. The ‘clouds are not monoliths’ argument misses the point. Distributed systems have catastrophic failures too e.g. if common / shared services go down / if there is a bug, config error introduced into them.&#8221;</p>
<p>It&#8217;s true that distributed systems have failures too and hence the point in this article about spending time to &#8220;make your applications resilient to the types of failure that are actually probable&#8221; makes more sense.</p>
<p>Facebook does not even use any of the public cloud providers, it uses its own datacenters. Because of these failures on Facebook, no one is hounding them to move to public cloud or multi-public cloud as a solution to all of its problems, but instead to bring better policies and systems in place to make sure it does not happen again.</p>
<p>I think this is also true for any system, any bank just because they use their own datacenters are not immune to any self-inflicting application/design problems, same is true for the banks using public cloud-providers. If anything, the impact of such self-inflicting application/design problem increases it&#8217;s blast radius when you are on multiple cloud providers. The mistakes that you could previously only make in one public cloud provider, instead of spending time to fix them, now you are making the same mistakes in 2 public cloud providers.</p>
<p id="comment-like-216122" data-liked=comment-not-liked class="comment-likes comment-not-liked"><a href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/?like_comment=216122&#038;_wpnonce=312a3f5278" class="comment-like-link needs-login" rel="nofollow" data-blog="4543198"><span>Like</span></a><span id="comment-like-count-216122" class="comment-like-feedback">Like</span></p>
</div><!-- .comment-body -->
<div class="act tip">
</span>
</div><!-- .act .tip -->
</div><!-- #comment-## -->
</li><!-- #comment-## -->
<li class="comment even thread-even depth-1" id="li-comment-216123">
<div id="comment-216123" class="tiptrigger">
<div class="comment-head comment-author vcard">
<cite class="fn">MJ</cite>
<span class="comment-meta commentmetadata">
|
<a href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/#comment-216123">
February 24, 2022 at 12:26 am</a>
</span><!-- .comment-meta .commentmetadata -->
</div><!-- .comment-head .comment-author .vcard -->
<div class="comment-body">
<p>I am not sure, if there is any BoE policy saying if you are using private datacenters, you should not have all the machines from the same provider, i.e. Dell, you should not use the same loadbalancers across your datacenters, i.e. F5, you should not use the same anti-virus at all places, etc. just because all the Dell machines can go and malfunction at the same time, etc.</p>
<p>So taking that concept and trying to make that argument for cloud providers seems like a stretch.</p>
<p id="comment-like-216123" data-liked=comment-not-liked class="comment-likes comment-not-liked"><a href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/?like_comment=216123&#038;_wpnonce=bcecd02f0c" class="comment-like-link needs-login" rel="nofollow" data-blog="4543198"><span>Like</span></a><span id="comment-like-count-216123" class="comment-like-feedback">Like</span></p>
</div><!-- .comment-body -->
<div class="act tip">
</span>
</div><!-- .act .tip -->
</div><!-- #comment-## -->
</li><!-- #comment-## -->
</ol><!-- #comments -->
<ol id="trackbacks">
<li class="post pingback">
<p>Pingback: <a href="https://blog.revolve.team/2021/10/21/revolve-press-start-revue-presse-cloud-octobre-2021/" class="url" rel="ugc external nofollow">Revolve Press Start : la revue de presse du Cloud - Octobre 2021 Blog Devoteam Revolve</a></p>
</li>
</li><!-- #comment-## -->
<li class="post pingback">
<p>Pingback: <a href="https://cloudpundit.com/2021/10/21/improving-cloud-resilience-through-stuff-that-works/" class="url" rel="ugc">Improving cloud resilience through stuff that works | CloudPundit: Massive-Scale Computing</a></p>
</li>
</li><!-- #comment-## -->
<li class="post pingback">
<p>Pingback: <a href="https://allesnurgecloud.com/newsletter/allesnurgecloud-40-facebook-downtime-modern-solution-gitlab-hacks-und-sre-bei-google/" class="url" rel="ugc external nofollow">allesnurgecloud #40 &#8211; Facebook Downtime, Modern Solution, GitLab Hacks und SRE bei Google &#8211; allesnurgecloud.com</a></p>
</li>
</li><!-- #comment-## -->
<li class="post pingback">
<p>Pingback: <a href="http://loopback1.net/2021/11/06/fi-tietoliikennealan-katsaus-2021-10/" class="url" rel="ugc external nofollow">[FI] Tietoliikennealan katsaus 2021-10 &#8211; loopback1.net</a></p>
</li>
</li><!-- #comment-## -->
<li class="post pingback">
<p>Pingback: <a href="https://sreweekly.com/sre-weekly-issue-295/" class="url" rel="ugc external nofollow">SRE Weekly Issue #295 &#8211; SRE WEEKLY</a></p>
</li>
</li><!-- #comment-## -->
<li class="post pingback">
<p>Pingback: <a href="https://fde.cat/index.php/2021/11/08/sre-weekly-issue-295/" class="url" rel="ugc external nofollow">SRE Weekly Issue #295 &#8211; FDE</a></p>
</li>
</li><!-- #comment-## -->
<li class="post pingback">
<p>Pingback: <a href="https://cloudpundit.com/2022/02/22/resilience-cloudy-without-a-chance-of-meatballs/" class="url" rel="ugc">Resilience: Cloudy without a chance of meatballs | CloudPundit: Massive-Scale Computing</a></p>
</li>
</li><!-- #comment-## -->
<li class="post pingback">
<p>Pingback: <a href="https://www.telcodr.com/insights/ep-28-talking-public-cloud-with-gsma/" class="url" rel="ugc external nofollow">Episode 28 - GSMA and TelcoDR talk telco and public cloud | TelcoDR</a></p>
</li>
</li><!-- #comment-## -->
</ol><!-- #trackbacks -->
</div><!-- #comment-list -->
<div id="respond" class="comment-respond">
<h3 id="reply-title" class="comment-reply-title">Leave a comment</h3><form action="https://cloudpundit.com/wp-comments-post.php" method="post" id="commentform" class="comment-form">
<div class="comment-form__verbum transparent"></div><div class="verbum-form-meta"><input type='hidden' name='comment_post_ID' value='1158' id='comment_post_ID' />
<input type='hidden' name='comment_parent' id='comment_parent' value='0' />
<input type="hidden" name="highlander_comment_nonce" id="highlander_comment_nonce" value="4affefa77f" />
<input type="hidden" name="verbum_show_subscription_modal" value="" /></div><p style="display: none;"><input type="hidden" id="akismet_comment_nonce" name="akismet_comment_nonce" value="5980c4c6de" /></p><p style="display: none !important;" class="akismet-fields-container" data-prefix="ak_"><label>&#916;<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_1" name="ak_js" value="66"/><script>
document.getElementById( "ak_js_1" ).setAttribute( "value", ( new Date() ).getTime() );
</script>
</p></form> </div><!-- #respond -->
</div><!-- #post-extra-content -->
</div><!-- #content -->
</div><!-- #content-container -->
<div id="sidebar" class="widget-area" role="complementary">
<ul class="xoxo">
<li id="text-251338661" class="widget widget_text"><h3 class="widget-title"><span>About the Author</span></h3> <div class="textwidget"><p>Lydia Leong is an analyst at Gartner, where she covers cloud computing and related topics in infrastructure and operations, Internet services, and digital transformation. [<i><a href="/about">Read more.</a></i>]</p>
<p>This is a personal blog, and as such, it should not be taken to express Gartner&#8217;s views. Coverage-related posts are, however, mirrored on the <a href="http://blogs.gartner.com/lydia_leong/">Gartner Blog Network</a>.</p>
<p><em>Standard Gartner social media disclaimer: I am using this medium as an opportunity to test ideas and move research forward. Because the content I posted here does not undergo our standard editorial review, all comments or opinions expressed hereunder are mine and do not represent the views of Gartner, Inc., its subsidiaries or its management.</em></p>
</div>
</li><li id="mystique-widget-2" class="widget mystique"> <div class="tabbed-content sidebar-tabs">
<ul class="sidebar-tabs">
<li class="tab-tags"><a href="#tab-tags" title="Tags">Tags</a></li>
<li class="tab-categories"><a href="#tab-categories" title="Categories">Categories</a></li>
</ul>
<div class="tab-container">
<div id="tab-tags" class="tab-content">
<a href="https://cloudpundit.com/tag/akam/" class="tag-cloud-link tag-link-715032 tag-link-position-1" style="font-size: 13.631284916201pt;" aria-label="AKAM (20 items)">AKAM</a>
<a href="https://cloudpundit.com/tag/amazon/" class="tag-cloud-link tag-link-6602 tag-link-position-2" style="font-size: 17.072625698324pt;" aria-label="Amazon (57 items)">Amazon</a>
<a href="https://cloudpundit.com/tag/appdev/" class="tag-cloud-link tag-link-393984 tag-link-position-3" style="font-size: 12.927374301676pt;" aria-label="appdev (16 items)">appdev</a>
<a href="https://cloudpundit.com/tag/azure/" class="tag-cloud-link tag-link-335778 tag-link-position-4" style="font-size: 8pt;" aria-label="Azure (3 items)">Azure</a>
<a href="https://cloudpundit.com/tag/bc-dr/" class="tag-cloud-link tag-link-74523124 tag-link-position-5" style="font-size: 8.7821229050279pt;" aria-label="BC/DR (4 items)">BC/DR</a>
<a href="https://cloudpundit.com/tag/book/" class="tag-cloud-link tag-link-2364 tag-link-position-6" style="font-size: 8.7821229050279pt;" aria-label="book (4 items)">book</a>
<a href="https://cloudpundit.com/tag/cdn/" class="tag-cloud-link tag-link-473015 tag-link-position-7" style="font-size: 17.776536312849pt;" aria-label="CDN (69 items)">CDN</a>
<a href="https://cloudpundit.com/tag/cloud/" class="tag-cloud-link tag-link-69816 tag-link-position-8" style="font-size: 22pt;" aria-label="cloud (243 items)">cloud</a>
<a href="https://cloudpundit.com/tag/colocation/" class="tag-cloud-link tag-link-760284 tag-link-position-9" style="font-size: 13.631284916201pt;" aria-label="colocation (20 items)">colocation</a>
<a href="https://cloudpundit.com/tag/conference/" class="tag-cloud-link tag-link-33525 tag-link-position-10" style="font-size: 12.301675977654pt;" aria-label="conference (13 items)">conference</a>
<a href="https://cloudpundit.com/tag/contracts/" class="tag-cloud-link tag-link-10009 tag-link-position-11" style="font-size: 11.128491620112pt;" aria-label="contracts (9 items)">contracts</a>
<a href="https://cloudpundit.com/tag/customers/" class="tag-cloud-link tag-link-8780 tag-link-position-12" style="font-size: 12.301675977654pt;" aria-label="customers (13 items)">customers</a>
<a href="https://cloudpundit.com/tag/dns/" class="tag-cloud-link tag-link-17846 tag-link-position-13" style="font-size: 8pt;" aria-label="DNS (3 items)">DNS</a>
<a href="https://cloudpundit.com/tag/eqix/" class="tag-cloud-link tag-link-998845 tag-link-position-14" style="font-size: 8.7821229050279pt;" aria-label="EQIX (4 items)">EQIX</a>
<a href="https://cloudpundit.com/tag/finops/" class="tag-cloud-link tag-link-205784085 tag-link-position-15" style="font-size: 8.7821229050279pt;" aria-label="FinOps (4 items)">FinOps</a>
<a href="https://cloudpundit.com/tag/gartner/" class="tag-cloud-link tag-link-328920 tag-link-position-16" style="font-size: 19.340782122905pt;" aria-label="Gartner (110 items)">Gartner</a>
<a href="https://cloudpundit.com/tag/google/" class="tag-cloud-link tag-link-81 tag-link-position-17" style="font-size: 13.474860335196pt;" aria-label="Google (19 items)">Google</a>
<a href="https://cloudpundit.com/tag/hands-on/" class="tag-cloud-link tag-link-79279 tag-link-position-18" style="font-size: 9.9553072625698pt;" aria-label="hands-on (6 items)">hands-on</a>
<a href="https://cloudpundit.com/tag/hosting/" class="tag-cloud-link tag-link-149 tag-link-position-19" style="font-size: 18.011173184358pt;" aria-label="hosting (74 items)">hosting</a>
<a href="https://cloudpundit.com/tag/iaas/" class="tag-cloud-link tag-link-1419732 tag-link-position-20" style="font-size: 18.245810055866pt;" aria-label="IaaS (80 items)">IaaS</a>
<a href="https://cloudpundit.com/tag/llnw/" class="tag-cloud-link tag-link-1412479 tag-link-position-21" style="font-size: 12.536312849162pt;" aria-label="LLNW (14 items)">LLNW</a>
<a href="https://cloudpundit.com/tag/mmog/" class="tag-cloud-link tag-link-35673 tag-link-position-22" style="font-size: 9.4078212290503pt;" aria-label="mmog (5 items)">mmog</a>
<a href="https://cloudpundit.com/tag/mq/" class="tag-cloud-link tag-link-293421 tag-link-position-23" style="font-size: 16.446927374302pt;" aria-label="MQ (47 items)">MQ</a>
<a href="https://cloudpundit.com/tag/msp/" class="tag-cloud-link tag-link-333207 tag-link-position-24" style="font-size: 8.7821229050279pt;" aria-label="MSP (4 items)">MSP</a>
<a href="https://cloudpundit.com/tag/multicloud/" class="tag-cloud-link tag-link-73233928 tag-link-position-25" style="font-size: 8.7821229050279pt;" aria-label="multicloud (4 items)">multicloud</a>
<a href="https://cloudpundit.com/tag/net-neutrality/" class="tag-cloud-link tag-link-38036 tag-link-position-26" style="font-size: 8pt;" aria-label="net neutrality (3 items)">net neutrality</a>
<a href="https://cloudpundit.com/tag/networking/" class="tag-cloud-link tag-link-7426 tag-link-position-27" style="font-size: 11.128491620112pt;" aria-label="networking (9 items)">networking</a>
<a href="https://cloudpundit.com/tag/news/" class="tag-cloud-link tag-link-103 tag-link-position-28" style="font-size: 13.31843575419pt;" aria-label="news (18 items)">news</a>
<a href="https://cloudpundit.com/tag/open-source/" class="tag-cloud-link tag-link-25 tag-link-position-29" style="font-size: 10.737430167598pt;" aria-label="open source (8 items)">open source</a>
<a href="https://cloudpundit.com/tag/operations/" class="tag-cloud-link tag-link-28285 tag-link-position-30" style="font-size: 8.7821229050279pt;" aria-label="operations (4 items)">operations</a>
<a href="https://cloudpundit.com/tag/p2p/" class="tag-cloud-link tag-link-991 tag-link-position-31" style="font-size: 8.7821229050279pt;" aria-label="P2P (4 items)">P2P</a>
<a href="https://cloudpundit.com/tag/paas/" class="tag-cloud-link tag-link-1438933 tag-link-position-32" style="font-size: 11.988826815642pt;" aria-label="PaaS (12 items)">PaaS</a>
<a href="https://cloudpundit.com/tag/people/" class="tag-cloud-link tag-link-660 tag-link-position-33" style="font-size: 15.27374301676pt;" aria-label="people (33 items)">people</a>
<a href="https://cloudpundit.com/tag/process/" class="tag-cloud-link tag-link-9719 tag-link-position-34" style="font-size: 9.4078212290503pt;" aria-label="process (5 items)">process</a>
<a href="https://cloudpundit.com/tag/rax/" class="tag-cloud-link tag-link-1438643 tag-link-position-35" style="font-size: 13.162011173184pt;" aria-label="RAX (17 items)">RAX</a>
<a href="https://cloudpundit.com/tag/regulatory/" class="tag-cloud-link tag-link-85557 tag-link-position-36" style="font-size: 8.7821229050279pt;" aria-label="regulatory (4 items)">regulatory</a>
<a href="https://cloudpundit.com/tag/research/" class="tag-cloud-link tag-link-668 tag-link-position-37" style="font-size: 18.558659217877pt;" aria-label="research (88 items)">research</a>
<a href="https://cloudpundit.com/tag/resilience/" class="tag-cloud-link tag-link-340215 tag-link-position-38" style="font-size: 9.9553072625698pt;" aria-label="resilience (6 items)">resilience</a>
<a href="https://cloudpundit.com/tag/risk/" class="tag-cloud-link tag-link-37372 tag-link-position-39" style="font-size: 8.7821229050279pt;" aria-label="risk (4 items)">risk</a>
<a href="https://cloudpundit.com/tag/science/" class="tag-cloud-link tag-link-173 tag-link-position-40" style="font-size: 8.7821229050279pt;" aria-label="science (4 items)">science</a>
<a href="https://cloudpundit.com/tag/security/" class="tag-cloud-link tag-link-801 tag-link-position-41" style="font-size: 12.536312849162pt;" aria-label="security (14 items)">security</a>
<a href="https://cloudpundit.com/tag/software/" class="tag-cloud-link tag-link-581 tag-link-position-42" style="font-size: 10.737430167598pt;" aria-label="software (8 items)">software</a>
<a href="https://cloudpundit.com/tag/travel/" class="tag-cloud-link tag-link-200 tag-link-position-43" style="font-size: 8pt;" aria-label="travel (3 items)">travel</a>
<a href="https://cloudpundit.com/tag/video/" class="tag-cloud-link tag-link-412 tag-link-position-44" style="font-size: 8pt;" aria-label="video (3 items)">video</a>
<a href="https://cloudpundit.com/tag/vmware/" class="tag-cloud-link tag-link-38600 tag-link-position-45" style="font-size: 11.754189944134pt;" aria-label="VMware (11 items)">VMware</a> </div><!-- #tab-tags -->
<div id="tab-categories" class="tab-content">
<ul class="menu-list">
<li class="cat-item cat-item-40249"><a href="https://cloudpundit.com/category/analyst-life/">Analyst Life</a> (42)
</li>
<li class="cat-item cat-item-357"><a href="https://cloudpundit.com/category/applications/">Applications</a> (3)
</li>
<li class="cat-item cat-item-1559"><a href="https://cloudpundit.com/category/gadgets/">Gadgets</a> (2)
</li>
<li class="cat-item cat-item-1256"><a href="https://cloudpundit.com/category/gaming/">Gaming</a> (6)
</li>
<li class="cat-item cat-item-16505"><a href="https://cloudpundit.com/category/governance/">Governance</a> (10)
</li>
<li class="cat-item cat-item-3570"><a href="https://cloudpundit.com/category/industry/">Industry</a> (110)
</li>
<li class="cat-item cat-item-32"><a href="https://cloudpundit.com/category/infrastructure/">Infrastructure</a> (219)
</li>
<li class="cat-item cat-item-175"><a href="https://cloudpundit.com/category/marketing/">Marketing</a> (13)
</li>
<li class="cat-item cat-item-64"><a href="https://cloudpundit.com/category/personal/">Personal</a> (3)
</li>
<li class="cat-item cat-item-8553"><a href="https://cloudpundit.com/category/strategy/">Strategy</a> (4)
</li>
<li class="cat-item cat-item-1"><a href="https://cloudpundit.com/category/uncategorized/">Uncategorized</a> (4)
</li>
</ul>
</div><!-- #tab-categories -->
</div><!-- .tab-container -->
</div><!-- .tabbed-content -->
</li><li id="search-2" class="widget widget_search"><h3 class="widget-title"><span>Search</span></h3>
<form method="get" id="searchform" action="https://cloudpundit.com/">
<div id="searchfield">
<label for="s" class="screen-reader-text">Search for:</label>
<input type="text" name="s" id="s" class="searchtext" />
<input type="submit" value="Go" class="searchbutton" />
</div>
</form></li><li id="categories-338367772" class="widget widget_categories"><h3 class="widget-title"><span>Categories</span></h3><form action="https://cloudpundit.com" method="get"><label class="screen-reader-text" for="cat">Categories</label><select name='cat' id='cat' class='postform'>
<option value='-1'>Select Category</option>
<option class="level-0" value="40249">Analyst Life&nbsp;&nbsp;(42)</option>
<option class="level-0" value="357">Applications&nbsp;&nbsp;(3)</option>
<option class="level-0" value="1559">Gadgets&nbsp;&nbsp;(2)</option>
<option class="level-0" value="1256">Gaming&nbsp;&nbsp;(6)</option>
<option class="level-0" value="16505">Governance&nbsp;&nbsp;(10)</option>
<option class="level-0" value="3570">Industry&nbsp;&nbsp;(110)</option>
<option class="level-0" value="32">Infrastructure&nbsp;&nbsp;(219)</option>
<option class="level-0" value="175">Marketing&nbsp;&nbsp;(13)</option>
<option class="level-0" value="64">Personal&nbsp;&nbsp;(3)</option>
<option class="level-0" value="8553">Strategy&nbsp;&nbsp;(4)</option>
<option class="level-0" value="1">Uncategorized&nbsp;&nbsp;(4)</option>
</select>
</form><script>
( ( dropdownId ) => {
const dropdown = document.getElementById( dropdownId );
function onSelectChange() {
setTimeout( () => {
if ( 'escape' === dropdown.dataset.lastkey ) {
return;
}
if ( dropdown.value && parseInt( dropdown.value ) > 0 && dropdown instanceof HTMLSelectElement ) {
dropdown.parentElement.submit();
}
}, 250 );
}
function onKeyUp( event ) {
if ( 'Escape' === event.key ) {
dropdown.dataset.lastkey = 'escape';
} else {
delete dropdown.dataset.lastkey;
}
}
function onClick() {
delete dropdown.dataset.lastkey;
}
dropdown.addEventListener( 'keyup', onKeyUp );
dropdown.addEventListener( 'click', onClick );
dropdown.addEventListener( 'change', onSelectChange );
})( "cat" );
//# sourceURL=WP_Widget_Categories%3A%3Awidget
</script>
</li><li id="archives-2" class="widget widget_archive"><h3 class="widget-title"><span>Archives</span></h3>
<ul>
<li><a href='https://cloudpundit.com/2026/04/'>April 2026</a></li>
<li><a href='https://cloudpundit.com/2023/03/'>March 2023</a></li>
<li><a href='https://cloudpundit.com/2022/09/'>September 2022</a></li>
<li><a href='https://cloudpundit.com/2022/03/'>March 2022</a></li>
<li><a href='https://cloudpundit.com/2022/02/'>February 2022</a></li>
<li><a href='https://cloudpundit.com/2021/12/'>December 2021</a></li>
<li><a href='https://cloudpundit.com/2021/11/'>November 2021</a></li>
<li><a href='https://cloudpundit.com/2021/10/'>October 2021</a></li>
<li><a href='https://cloudpundit.com/2021/09/'>September 2021</a></li>
<li><a href='https://cloudpundit.com/2021/03/'>March 2021</a></li>
<li><a href='https://cloudpundit.com/2021/01/'>January 2021</a></li>
<li><a href='https://cloudpundit.com/2020/10/'>October 2020</a></li>
<li><a href='https://cloudpundit.com/2020/09/'>September 2020</a></li>
<li><a href='https://cloudpundit.com/2020/08/'>August 2020</a></li>
<li><a href='https://cloudpundit.com/2020/07/'>July 2020</a></li>
<li><a href='https://cloudpundit.com/2019/07/'>July 2019</a></li>
<li><a href='https://cloudpundit.com/2018/06/'>June 2018</a></li>
<li><a href='https://cloudpundit.com/2016/12/'>December 2016</a></li>
<li><a href='https://cloudpundit.com/2016/09/'>September 2016</a></li>
<li><a href='https://cloudpundit.com/2016/08/'>August 2016</a></li>
<li><a href='https://cloudpundit.com/2016/06/'>June 2016</a></li>
<li><a href='https://cloudpundit.com/2016/04/'>April 2016</a></li>
<li><a href='https://cloudpundit.com/2016/01/'>January 2016</a></li>
<li><a href='https://cloudpundit.com/2015/01/'>January 2015</a></li>
<li><a href='https://cloudpundit.com/2014/10/'>October 2014</a></li>
<li><a href='https://cloudpundit.com/2014/09/'>September 2014</a></li>
<li><a href='https://cloudpundit.com/2014/08/'>August 2014</a></li>
<li><a href='https://cloudpundit.com/2014/07/'>July 2014</a></li>
<li><a href='https://cloudpundit.com/2014/05/'>May 2014</a></li>
<li><a href='https://cloudpundit.com/2014/02/'>February 2014</a></li>
<li><a href='https://cloudpundit.com/2014/01/'>January 2014</a></li>
<li><a href='https://cloudpundit.com/2013/12/'>December 2013</a></li>
<li><a href='https://cloudpundit.com/2013/11/'>November 2013</a></li>
<li><a href='https://cloudpundit.com/2013/10/'>October 2013</a></li>
<li><a href='https://cloudpundit.com/2013/09/'>September 2013</a></li>
<li><a href='https://cloudpundit.com/2013/08/'>August 2013</a></li>
<li><a href='https://cloudpundit.com/2013/06/'>June 2013</a></li>
<li><a href='https://cloudpundit.com/2013/05/'>May 2013</a></li>
<li><a href='https://cloudpundit.com/2013/04/'>April 2013</a></li>
<li><a href='https://cloudpundit.com/2013/03/'>March 2013</a></li>
<li><a href='https://cloudpundit.com/2012/12/'>December 2012</a></li>
<li><a href='https://cloudpundit.com/2012/11/'>November 2012</a></li>
<li><a href='https://cloudpundit.com/2012/10/'>October 2012</a></li>
<li><a href='https://cloudpundit.com/2012/08/'>August 2012</a></li>
<li><a href='https://cloudpundit.com/2012/07/'>July 2012</a></li>
<li><a href='https://cloudpundit.com/2012/05/'>May 2012</a></li>
<li><a href='https://cloudpundit.com/2012/04/'>April 2012</a></li>
<li><a href='https://cloudpundit.com/2012/03/'>March 2012</a></li>
<li><a href='https://cloudpundit.com/2011/12/'>December 2011</a></li>
<li><a href='https://cloudpundit.com/2011/11/'>November 2011</a></li>
<li><a href='https://cloudpundit.com/2011/10/'>October 2011</a></li>
<li><a href='https://cloudpundit.com/2011/08/'>August 2011</a></li>
<li><a href='https://cloudpundit.com/2011/07/'>July 2011</a></li>
<li><a href='https://cloudpundit.com/2011/06/'>June 2011</a></li>
<li><a href='https://cloudpundit.com/2011/05/'>May 2011</a></li>
<li><a href='https://cloudpundit.com/2011/04/'>April 2011</a></li>
<li><a href='https://cloudpundit.com/2011/03/'>March 2011</a></li>
<li><a href='https://cloudpundit.com/2011/02/'>February 2011</a></li>
<li><a href='https://cloudpundit.com/2011/01/'>January 2011</a></li>
<li><a href='https://cloudpundit.com/2010/12/'>December 2010</a></li>
<li><a href='https://cloudpundit.com/2010/11/'>November 2010</a></li>
<li><a href='https://cloudpundit.com/2010/10/'>October 2010</a></li>
<li><a href='https://cloudpundit.com/2010/09/'>September 2010</a></li>
<li><a href='https://cloudpundit.com/2010/08/'>August 2010</a></li>
<li><a href='https://cloudpundit.com/2010/07/'>July 2010</a></li>
<li><a href='https://cloudpundit.com/2010/06/'>June 2010</a></li>
<li><a href='https://cloudpundit.com/2010/05/'>May 2010</a></li>
<li><a href='https://cloudpundit.com/2010/04/'>April 2010</a></li>
<li><a href='https://cloudpundit.com/2010/03/'>March 2010</a></li>
<li><a href='https://cloudpundit.com/2010/01/'>January 2010</a></li>
<li><a href='https://cloudpundit.com/2009/11/'>November 2009</a></li>
<li><a href='https://cloudpundit.com/2009/10/'>October 2009</a></li>
<li><a href='https://cloudpundit.com/2009/08/'>August 2009</a></li>
<li><a href='https://cloudpundit.com/2009/07/'>July 2009</a></li>
<li><a href='https://cloudpundit.com/2009/06/'>June 2009</a></li>
<li><a href='https://cloudpundit.com/2009/05/'>May 2009</a></li>
<li><a href='https://cloudpundit.com/2009/04/'>April 2009</a></li>
<li><a href='https://cloudpundit.com/2009/03/'>March 2009</a></li>
<li><a href='https://cloudpundit.com/2009/02/'>February 2009</a></li>
<li><a href='https://cloudpundit.com/2009/01/'>January 2009</a></li>
<li><a href='https://cloudpundit.com/2008/12/'>December 2008</a></li>
<li><a href='https://cloudpundit.com/2008/11/'>November 2008</a></li>
<li><a href='https://cloudpundit.com/2008/10/'>October 2008</a></li>
<li><a href='https://cloudpundit.com/2008/09/'>September 2008</a></li>
</ul>
</li>
<li id="recent-posts-2" class="widget widget_recent_entries">
<h3 class="widget-title"><span>Recent Posts</span></h3>
<ul>
<li>
<a href="https://cloudpundit.com/2026/04/28/where-did-i-go/">Where did I&nbsp;go?</a>
</li>
<li>
<a href="https://cloudpundit.com/2023/03/31/finops-can-be-a-big-waste-of-money/">FinOps can be a big waste of&nbsp;money</a>
</li>
<li>
<a href="https://cloudpundit.com/2023/03/13/greenops-for-sustainability-must-parallel-finops-for-cost/">GreenOps for sustainability must parallel FinOps for&nbsp;cost</a>
</li>
<li>
<a href="https://cloudpundit.com/2022/09/22/the-road-to-cloud-purgatory/">The road to cloud&nbsp;purgatory</a>
</li>
<li>
<a href="https://cloudpundit.com/2022/09/12/cloud-adoption-will-fail-because-of-the-skills-gap/">Cloud adoption will fail because of the skills&nbsp;gap</a>
</li>
<li>
<a href="https://cloudpundit.com/2022/03/28/cloud-self-service-doesnt-need-to-invite-the-orc-apocalypse/">Cloud self-service doesn&#8217;t need to invite the orc&nbsp;apocalypse</a>
</li>
<li>
<a href="https://cloudpundit.com/2022/02/22/resilience-cloudy-without-a-chance-of-meatballs/">Resilience: Cloudy without a chance of&nbsp;meatballs</a>
</li>
<li>
<a href="https://cloudpundit.com/2021/12/08/my-q1-2022-research-agenda/">My Q1 2022 research&nbsp;agenda</a>
</li>
<li>
<a href="https://cloudpundit.com/2021/11/24/the-cloud-budget-overrun-rainbow-of-flavors/">The cloud budget overrun rainbow of&nbsp;flavors</a>
</li>
<li>
<a href="https://cloudpundit.com/2021/10/28/five-p-factors-for-root-cause-analysis/">Five-P factors for root cause&nbsp;analysis</a>
</li>
<li>
<a href="https://cloudpundit.com/2021/10/27/dont-be-surprised-when-move-fast-and-break-things-results-in-broken-stuff/">Don&#8217;t be surprised when &#8220;move fast and break things&#8221; results in broken&nbsp;stuff</a>
</li>
<li>
<a href="https://cloudpundit.com/2021/10/22/group-hugs-for-managing-cloud-economics/">Group hugs for managing cloud&nbsp;economics</a>
</li>
<li>
<a href="https://cloudpundit.com/2021/10/21/improving-cloud-resilience-through-stuff-that-works/">Improving cloud resilience through stuff that&nbsp;works</a>
</li>
<li>
<a href="https://cloudpundit.com/2021/10/20/cloud-cost-overruns-may-be-a-business-leadership-failure/">Cloud cost overruns may be a business leadership&nbsp;failure</a>
</li>
<li>
<a href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/" aria-current="page">Multicloud failover is almost always a terrible&nbsp;idea</a>
</li>
</ul>
</li><li id="recent-comments-2" class="widget widget_recent_comments"><h3 class="widget-title"><span>Recent Comments</span></h3> <ul id="recentcomments">
<li class="recentcomments">
<a href="http://medicalresearch95.wordpress.com" class="url" rel="ugc external nofollow">Vaibhav</a> on <a href="https://cloudpundit.com/2012/10/01/the-meta-info-of-my-openstack-note/#comment-240466">The meta-info of my OpenStack&nbsp;note</a> </li>
<li class="recentcomments">
<a href="https://shorturl.at/fdE2J" class="url" rel="ugc external nofollow">business profitability</a> on <a href="https://cloudpundit.com/2011/04/21/amazon-outage-and-the-auto-immune-vulnerabilities-of-resiliency/#comment-240460">Amazon outage and the auto-immune vulnerabilities of&nbsp;resiliency</a> </li>
<li class="recentcomments">
<a href="https://fonateam.nasrblog.ir/post-56032.html" class="url" rel="ugc external nofollow">German</a> on <a href="https://cloudpundit.com/2011/01/10/the-process-of-a-magic-quadrant/#comment-240453">The process of a Magic&nbsp;Quadrant</a> </li>
<li class="recentcomments">
UPSKILLGENERATIVEAI on <a href="https://cloudpundit.com/2012/10/01/the-meta-info-of-my-openstack-note/#comment-240447">The meta-info of my OpenStack&nbsp;note</a> </li>
<li class="recentcomments">
Tim on <a href="https://cloudpundit.com/2021/09/22/the-cloud-is-not-just-someone-elses-computer/#comment-240446">The cloud is NOT just someone else&#8217;s&nbsp;computer</a> </li>
<li class="recentcomments">
<a href="http://innomax" class="url" rel="ugc external nofollow">innomax itsolution</a> on <a href="https://cloudpundit.com/2012/10/01/the-meta-info-of-my-openstack-note/#comment-240445">The meta-info of my OpenStack&nbsp;note</a> </li>
<li class="recentcomments">
<a href="http://IT%20Consulting%20and%20Services" class="url" rel="ugc external nofollow">innomax itsolution</a> on <a href="https://cloudpundit.com/2012/10/01/the-meta-info-of-my-openstack-note/#comment-240444">The meta-info of my OpenStack&nbsp;note</a> </li>
<li class="recentcomments">
<a href="http://sgholidaysresorts.com" class="url" rel="ugc external nofollow">SG holidays</a> on <a href="https://cloudpundit.com/2012/10/01/the-meta-info-of-my-openstack-note/#comment-240440">The meta-info of my OpenStack&nbsp;note</a> </li>
<li class="recentcomments">
<a href="https://multicloud365.com/dont-be-shocked-when-transfer-quick-and-break-issues-ends-in-damaged-stuff/" class="url" rel="ugc external nofollow">Don’t be shocked when “transfer quick and break issues” ends in damaged stuff - multicloud365</a> on <a href="https://cloudpundit.com/2021/10/20/cloud-cost-overruns-may-be-a-business-leadership-failure/#comment-240436">Cloud cost overruns may be a business leadership&nbsp;failure</a> </li>
<li class="recentcomments">
grace martin on <a href="https://cloudpundit.com/2023/03/13/greenops-for-sustainability-must-parallel-finops-for-cost/#comment-240409">GreenOps for sustainability must parallel FinOps for&nbsp;cost</a> </li>
</ul>
</li><li id="rss-251199281" class="widget widget_rss"><h3 class="widget-title"><span><a class="rsswidget" href="https://www.gartner.com:443/en/insights" title="Syndicate this content"><img style="background: orange; color: white; border: none;" width="14" height="14" src="https://s.wordpress.com/wp-includes/images/rss.png?m=1354137473i" alt="RSS" /></a> <a class="rsswidget" href="" title="">More Comments</a></span></h3><ul><li>An error has occurred; the feed is probably down. Try again later.</li></ul></li><li id="top-clicks-2" class="widget widget_top-clicks"><h3 class="widget-title"><span>Top Clicks</span></h3><ul><li>None</li></ul></li><li id="meta-2" class="widget widget_meta"><h3 class="widget-title"><span>Meta</span></h3>
<ul>
<li><a class="click-register" href="https://wordpress.com/start?ref=wplogin">Create account</a></li> <li><a href="https://cloudpundit.wordpress.com/wp-login.php">Log in</a></li>
<li><a href="https://cloudpundit.com/feed/">Entries feed</a></li>
<li><a href="https://cloudpundit.com/comments/feed/">Comments feed</a></li>
<li><a href="https://wordpress.com/" title="Powered by WordPress, state-of-the-art semantic personal publishing platform.">WordPress.com</a></li>
</ul>
</li>
</ul>
</div><!-- #sidebar .widget-area -->
</div><!-- #main -->
<div id="footer" role="contentinfo">
<div id="copyright">
<p>
<a href="https://wordpress.com/?ref=footer_blog" rel="nofollow">Blog at WordPress.com.</a>
</p>
</div><!-- #copyright -->
</div><!-- #footer -->
</div><!-- #container -->
</div><!-- #page -->
<!-- -->
<script type="speculationrules">
{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/files/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/pub/mystique/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
</script>
<div style="display:none">
</div>
<!-- CCPA [start] -->
<script type="text/javascript">
( function () {
var setupPrivacy = function() {
// Minimal Mozilla Cookie library
// https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie/Simple_document.cookie_framework
var cookieLib = window.cookieLib = {getItem:function(e){return e&&decodeURIComponent(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*"+encodeURIComponent(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"))||null},setItem:function(e,o,n,t,r,i){if(!e||/^(?:expires|max\-age|path|domain|secure)$/i.test(e))return!1;var c="";if(n)switch(n.constructor){case Number:c=n===1/0?"; expires=Fri, 31 Dec 9999 23:59:59 GMT":"; max-age="+n;break;case String:c="; expires="+n;break;case Date:c="; expires="+n.toUTCString()}return"rootDomain"!==r&&".rootDomain"!==r||(r=(".rootDomain"===r?".":"")+document.location.hostname.split(".").slice(-2).join(".")),document.cookie=encodeURIComponent(e)+"="+encodeURIComponent(o)+c+(r?"; domain="+r:"")+(t?"; path="+t:"")+(i?"; secure":""),!0}};
// Implement IAB USP API.
window.__uspapi = function( command, version, callback ) {
// Validate callback.
if ( typeof callback !== 'function' ) {
return;
}
// Validate the given command.
if ( command !== 'getUSPData' || version !== 1 ) {
callback( null, false );
return;
}
// Check for GPC. If set, override any stored cookie.
if ( navigator.globalPrivacyControl ) {
callback( { version: 1, uspString: '1YYN' }, true );
return;
}
// Check for cookie.
var consent = cookieLib.getItem( 'usprivacy' );
// Invalid cookie.
if ( null === consent ) {
callback( null, false );
return;
}
// Everything checks out. Fire the provided callback with the consent data.
callback( { version: 1, uspString: consent }, true );
};
// Initialization.
document.addEventListener( 'DOMContentLoaded', function() {
// Internal functions.
var setDefaultOptInCookie = function() {
var value = '1YNN';
var domain = '.wordpress.com' === location.hostname.slice( -14 ) ? '.rootDomain' : location.hostname;
cookieLib.setItem( 'usprivacy', value, 365 * 24 * 60 * 60, '/', domain );
};
var setDefaultOptOutCookie = function() {
var value = '1YYN';
var domain = '.wordpress.com' === location.hostname.slice( -14 ) ? '.rootDomain' : location.hostname;
cookieLib.setItem( 'usprivacy', value, 24 * 60 * 60, '/', domain );
};
var setDefaultNotApplicableCookie = function() {
var value = '1---';
var domain = '.wordpress.com' === location.hostname.slice( -14 ) ? '.rootDomain' : location.hostname;
cookieLib.setItem( 'usprivacy', value, 24 * 60 * 60, '/', domain );
};
var setCcpaAppliesCookie = function( applies ) {
var domain = '.wordpress.com' === location.hostname.slice( -14 ) ? '.rootDomain' : location.hostname;
cookieLib.setItem( 'ccpa_applies', applies, 24 * 60 * 60, '/', domain );
}
var maybeCallDoNotSellCallback = function() {
if ( 'function' === typeof window.doNotSellCallback ) {
return window.doNotSellCallback();
}
return false;
}
// Look for usprivacy cookie first.
var usprivacyCookie = cookieLib.getItem( 'usprivacy' );
// Found a usprivacy cookie.
if ( null !== usprivacyCookie ) {
// If the cookie indicates that CCPA does not apply, then bail.
if ( '1---' === usprivacyCookie ) {
return;
}
// CCPA applies, so call our callback to add Do Not Sell link to the page.
maybeCallDoNotSellCallback();
// We're all done, no more processing needed.
return;
}
// We don't have a usprivacy cookie, so check to see if we have a CCPA applies cookie.
var ccpaCookie = cookieLib.getItem( 'ccpa_applies' );
// No CCPA applies cookie found, so we'll need to geolocate if this visitor is from California.
// This needs to happen client side because we do not have region geo data in our $SERVER headers,
// only country data -- therefore we can't vary cache on the region.
if ( null === ccpaCookie ) {
var request = new XMLHttpRequest();
request.open( 'GET', 'https://public-api.wordpress.com/geo/', true );
request.onreadystatechange = function () {
if ( 4 === this.readyState ) {
if ( 200 === this.status ) {
// Got a geo response. Parse out the region data.
var data = JSON.parse( this.response );
var region = data.region ? data.region.toLowerCase() : '';
var ccpa_applies = ['california', 'colorado', 'connecticut', 'delaware', 'indiana', 'iowa', 'montana', 'new jersey', 'oregon', 'tennessee', 'texas', 'utah', 'virginia'].indexOf( region ) > -1;
// Set CCPA applies cookie. This keeps us from having to make a geo request too frequently.
setCcpaAppliesCookie( ccpa_applies );
// Check if CCPA applies to set the proper usprivacy cookie.
if ( ccpa_applies ) {
if ( maybeCallDoNotSellCallback() ) {
// Do Not Sell link added, so set default opt-in.
setDefaultOptInCookie();
} else {
// Failed showing Do Not Sell link as required, so default to opt-OUT just to be safe.
setDefaultOptOutCookie();
}
} else {
// CCPA does not apply.
setDefaultNotApplicableCookie();
}
} else {
// Could not geo, so let's assume for now that CCPA applies to be safe.
setCcpaAppliesCookie( true );
if ( maybeCallDoNotSellCallback() ) {
// Do Not Sell link added, so set default opt-in.
setDefaultOptInCookie();
} else {
// Failed showing Do Not Sell link as required, so default to opt-OUT just to be safe.
setDefaultOptOutCookie();
}
}
}
};
// Send the geo request.
request.send();
} else {
// We found a CCPA applies cookie.
if ( ccpaCookie === 'true' ) {
if ( maybeCallDoNotSellCallback() ) {
// Do Not Sell link added, so set default opt-in.
setDefaultOptInCookie();
} else {
// Failed showing Do Not Sell link as required, so default to opt-OUT just to be safe.
setDefaultOptOutCookie();
}
} else {
// CCPA does not apply.
setDefaultNotApplicableCookie();
}
}
} );
};
// Kickoff initialization.
if ( window.defQueue && defQueue.isLOHP && defQueue.isLOHP === 2020 ) {
defQueue.items.push( setupPrivacy );
} else {
setupPrivacy();
}
} )();
</script>
<!-- CCPA [end] -->
<div class="widget widget_eu_cookie_law_widget">
<div
class="hide-on-button ads-active"
data-hide-timeout="30"
data-consent-expiration="180"
id="eu-cookie-law"
style="display: none"
>
<form method="post">
<input type="submit" value="Close and accept" class="accept" />
Privacy &amp; Cookies: This site uses cookies. By continuing to use this website, you agree to their use. <br />
To find out more, including how to control cookies, see here:
<a href="https://automattic.com/cookies/" rel="nofollow">
Cookie Policy </a>
</form>
</div>
</div> <div id="actionbar" dir="ltr" style="display: none;"
class="actnbr-pub-mystique actnbr-has-follow actnbr-has-actions">
<ul>
<li class="actnbr-btn actnbr-hidden">
<a class="actnbr-action actnbr-actn-comment" href="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/#comments">
<svg class="gridicon gridicons-comment" height="20" width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g><path d="M12 16l-5 5v-5H5c-1.1 0-2-.9-2-2V5c0-1.1.9-2 2-2h14c1.1 0 2 .9 2 2v9c0 1.1-.9 2-2 2h-7z"/></g></svg> <span>Comment </span>
</a>
</li>
<li class="actnbr-btn actnbr-hidden">
<a class="actnbr-action actnbr-actn-reblog" href="">
<svg class="gridicon gridicons-reblog" height="20" width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g><path d="M22.086 9.914L20 7.828V18c0 1.105-.895 2-2 2h-7v-2h7V7.828l-2.086 2.086L14.5 8.5 19 4l4.5 4.5-1.414 1.414zM6 16.172V6h7V4H6c-1.105 0-2 .895-2 2v10.172l-2.086-2.086L.5 15.5 5 20l4.5-4.5-1.414-1.414L6 16.172z"/></g></svg><span>Reblog</span>
</a>
</li>
<li class="actnbr-btn actnbr-hidden">
<a class="actnbr-action actnbr-actn-follow " href="">
<svg class="gridicon" height="20" width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path clip-rule="evenodd" d="m4 4.5h12v6.5h1.5v-6.5-1.5h-1.5-12-1.5v1.5 10.5c0 1.1046.89543 2 2 2h7v-1.5h-7c-.27614 0-.5-.2239-.5-.5zm10.5 2h-9v1.5h9zm-5 3h-4v1.5h4zm3.5 1.5h-1v1h1zm-1-1.5h-1.5v1.5 1 1.5h1.5 1 1.5v-1.5-1-1.5h-1.5zm-2.5 2.5h-4v1.5h4zm6.5 1.25h1.5v2.25h2.25v1.5h-2.25v2.25h-1.5v-2.25h-2.25v-1.5h2.25z" fill-rule="evenodd"></path></svg>
<span>Subscribe</span>
</a>
<a class="actnbr-action actnbr-actn-following no-display" href="">
<svg class="gridicon" height="20" width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M16 4.5H4V15C4 15.2761 4.22386 15.5 4.5 15.5H11.5V17H4.5C3.39543 17 2.5 16.1046 2.5 15V3H17.5V12.5H16V4.5ZM5.5 6.5H14.5V8H5.5V6.5ZM5.5 9.5H9.5V11H5.5V9.5ZM12 11H13V12H12V11ZM10.5 9.5H14.5V13.5H10.5V9.5ZM5.5 12H9.5V13.5H5.5V12Z" fill="#008A20"></path><path d="M19.5303 15.0303L15.5 19.0605L12.9697 16.5303L14.0303 15.4697L15.5 16.9395L18.4697 13.9697L19.5303 15.0303Z" fill="#008A20"></path></svg>
<span>Subscribed</span>
</a>
<div class="actnbr-popover tip tip-top-left actnbr-notice" id="follow-bubble">
<div class="tip-arrow"></div>
<div class="tip-inner actnbr-follow-bubble">
<ul>
<li class="actnbr-sitename">
<a href="https://cloudpundit.com">
<img loading='lazy' alt='' src='https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=50&#038;d=https%3A%2F%2Fs2.wp.com%2Fi%2Flogo%2Fwpcom-gray-white.png' srcset='https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=50&#038;d=https%3A%2F%2Fs2.wp.com%2Fi%2Flogo%2Fwpcom-gray-white.png 1x, https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=75&#038;d=https%3A%2F%2Fs2.wp.com%2Fi%2Flogo%2Fwpcom-gray-white.png 1.5x, https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=100&#038;d=https%3A%2F%2Fs2.wp.com%2Fi%2Flogo%2Fwpcom-gray-white.png 2x, https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=150&#038;d=https%3A%2F%2Fs2.wp.com%2Fi%2Flogo%2Fwpcom-gray-white.png 3x, https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=200&#038;d=https%3A%2F%2Fs2.wp.com%2Fi%2Flogo%2Fwpcom-gray-white.png 4x' class='avatar avatar-50' height='50' width='50' /> CloudPundit: Massive-Scale Computing </a>
</li>
<div class="actnbr-message no-display"></div>
<form method="post" action="https://subscribe.wordpress.com" accept-charset="utf-8" style="display: none;">
<div class="actnbr-follow-count">Join 182 other subscribers</div>
<div>
<input type="email" name="email" placeholder="Enter your email address" class="actnbr-email-field" aria-label="Enter your email address" />
</div>
<input type="hidden" name="action" value="subscribe" />
<input type="hidden" name="blog_id" value="4543198" />
<input type="hidden" name="source" value="https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/" />
<input type="hidden" name="sub-type" value="actionbar-follow" />
<input type="hidden" id="_wpnonce" name="_wpnonce" value="a5ad60f889" /> <div class="actnbr-button-wrap">
<button type="submit" value="Sign me up">
Sign me up </button>
</div>
</form>
<li class="actnbr-login-nudge">
<div>
Already have a WordPress.com account? <a href="https://wordpress.com/log-in?redirect_to=https%3A%2F%2Fr-login.wordpress.com%2Fremote-login.php%3Faction%3Dlink%26back%3Dhttps%253A%252F%252Fcloudpundit.com%252F2021%252F10%252F14%252Fmulticloud-failover-is-almost-always-a-terrible-idea%252F">Log in now.</a> </div>
</li>
</ul>
</div>
</div>
</li>
<li class="actnbr-ellipsis actnbr-hidden">
<svg class="gridicon gridicons-ellipsis" height="24" width="24" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g><path d="M7 12c0 1.104-.896 2-2 2s-2-.896-2-2 .896-2 2-2 2 .896 2 2zm12-2c-1.104 0-2 .896-2 2s.896 2 2 2 2-.896 2-2-.896-2-2-2zm-7 0c-1.104 0-2 .896-2 2s.896 2 2 2 2-.896 2-2-.896-2-2-2z"/></g></svg> <div class="actnbr-popover tip tip-top-left actnbr-more">
<div class="tip-arrow"></div>
<div class="tip-inner">
<ul>
<li class="actnbr-sitename">
<a href="https://cloudpundit.com">
<img loading='lazy' alt='' src='https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=50&#038;d=https%3A%2F%2Fs2.wp.com%2Fi%2Flogo%2Fwpcom-gray-white.png' srcset='https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=50&#038;d=https%3A%2F%2Fs2.wp.com%2Fi%2Flogo%2Fwpcom-gray-white.png 1x, https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=75&#038;d=https%3A%2F%2Fs2.wp.com%2Fi%2Flogo%2Fwpcom-gray-white.png 1.5x, https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=100&#038;d=https%3A%2F%2Fs2.wp.com%2Fi%2Flogo%2Fwpcom-gray-white.png 2x, https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=150&#038;d=https%3A%2F%2Fs2.wp.com%2Fi%2Flogo%2Fwpcom-gray-white.png 3x, https://secure.gravatar.com/blavatar/e5c7caa00f5fa325ab6f2a78dd6af5d1ae91c7cfba1647029e9c8335439b58bf?s=200&#038;d=https%3A%2F%2Fs2.wp.com%2Fi%2Flogo%2Fwpcom-gray-white.png 4x' class='avatar avatar-50' height='50' width='50' /> CloudPundit: Massive-Scale Computing </a>
</li>
<li class="actnbr-folded-follow">
<a class="actnbr-action actnbr-actn-follow " href="">
<svg class="gridicon" height="20" width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path clip-rule="evenodd" d="m4 4.5h12v6.5h1.5v-6.5-1.5h-1.5-12-1.5v1.5 10.5c0 1.1046.89543 2 2 2h7v-1.5h-7c-.27614 0-.5-.2239-.5-.5zm10.5 2h-9v1.5h9zm-5 3h-4v1.5h4zm3.5 1.5h-1v1h1zm-1-1.5h-1.5v1.5 1 1.5h1.5 1 1.5v-1.5-1-1.5h-1.5zm-2.5 2.5h-4v1.5h4zm6.5 1.25h1.5v2.25h2.25v1.5h-2.25v2.25h-1.5v-2.25h-2.25v-1.5h2.25z" fill-rule="evenodd"></path></svg>
<span>Subscribe</span>
</a>
<a class="actnbr-action actnbr-actn-following no-display" href="">
<svg class="gridicon" height="20" width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M16 4.5H4V15C4 15.2761 4.22386 15.5 4.5 15.5H11.5V17H4.5C3.39543 17 2.5 16.1046 2.5 15V3H17.5V12.5H16V4.5ZM5.5 6.5H14.5V8H5.5V6.5ZM5.5 9.5H9.5V11H5.5V9.5ZM12 11H13V12H12V11ZM10.5 9.5H14.5V13.5H10.5V9.5ZM5.5 12H9.5V13.5H5.5V12Z" fill="#008A20"></path><path d="M19.5303 15.0303L15.5 19.0605L12.9697 16.5303L14.0303 15.4697L15.5 16.9395L18.4697 13.9697L19.5303 15.0303Z" fill="#008A20"></path></svg>
<span>Subscribed</span>
</a>
</li>
<li class="actnbr-signup"><a href="https://wordpress.com/start/">Sign up</a></li>
<li class="actnbr-login"><a href="https://wordpress.com/log-in?redirect_to=https%3A%2F%2Fr-login.wordpress.com%2Fremote-login.php%3Faction%3Dlink%26back%3Dhttps%253A%252F%252Fcloudpundit.com%252F2021%252F10%252F14%252Fmulticloud-failover-is-almost-always-a-terrible-idea%252F">Log in</a></li>
<li class="actnbr-shortlink">
<a href="https://wp.me/pj3To-iG">
<span class="actnbr-shortlink__text">Copy shortlink</span>
<span class="actnbr-shortlink__icon"><svg class="gridicon gridicons-checkmark" height="16" width="16" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g><path d="M9 19.414l-6.707-6.707 1.414-1.414L9 16.586 20.293 5.293l1.414 1.414"/></g></svg></span>
</a>
</li>
<li class="flb-report">
<a href="https://wordpress.com/abuse/?report_url=https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/" target="_blank" rel="noopener noreferrer">
Report this content </a>
</li>
<li class="actnbr-reader">
<a href="https://wordpress.com/reader/blogs/4543198/posts/1158">
View post in Reader </a>
</li>
<li class="actnbr-subs">
<a href="https://subscribe.wordpress.com/">Manage subscriptions</a>
</li>
<li class="actnbr-fold"><a href="">Collapse this bar</a></li>
</ul>
</div>
</div>
</li>
</ul>
</div>
<script>
window.addEventListener( "DOMContentLoaded", function( event ) {
var link = document.createElement( "link" );
link.href = "/wp-content/mu-plugins/actionbar/actionbar.css?v=20250116";
link.type = "text/css";
link.rel = "stylesheet";
document.head.appendChild( link );
var script = document.createElement( "script" );
script.src = "/wp-content/mu-plugins/actionbar/actionbar.js?v=20250204";
document.body.appendChild( script );
} );
</script>
<script type="text/javascript">
window.WPCOM_sharing_counts = {"https://cloudpundit.com/2021/10/14/multicloud-failover-is-almost-always-a-terrible-idea/":1158};
</script>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script>
<script type="text/javascript">
( function () {
var currentScript = document.currentScript;
// Helper function to load an external script.
function loadScript( url, cb ) {
var script = document.createElement( 'script' );
var prev = currentScript || document.getElementsByTagName( 'script' )[ 0 ];
script.setAttribute( 'async', true );
script.setAttribute( 'src', url );
prev.parentNode.insertBefore( script, prev );
script.addEventListener( 'load', cb );
}
function init() {
loadScript( 'https://platform.linkedin.com/in.js?async=true', function () {
if ( typeof IN !== 'undefined' ) {
IN.init();
}
} );
}
if ( document.readyState === 'loading' ) {
document.addEventListener( 'DOMContentLoaded', init );
} else {
init();
}
document.body.addEventListener( 'is.post-load', function() {
if ( typeof IN !== 'undefined' ) {
IN.parse();
}
} );
} )();
</script>
<div id="fb-root"></div>
<script>(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = 'https://connect.facebook.net/en_US/sdk.js#xfbml=1&amp;appId=249643311490&version=v2.3'; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));</script>
<script>
document.body.addEventListener( 'is.post-load', function() {
if ( 'undefined' !== typeof FB ) {
FB.XFBML.parse();
}
} );
</script>
<script type="text/javascript">
(function () {
var wpcom_reblog = {
source: 'toolbar',
toggle_reblog_box_flair: function (obj_id, post_id) {
// Go to site selector. This will redirect to their blog if they only have one.
const postEndpoint = `https://wordpress.com/post`;
// Ideally we would use the permalink here, but fortunately this will be replaced with the
// post permalink in the editor.
const originalURL = `${ document.location.href }?page_id=${ post_id }`;
const url =
postEndpoint +
'?url=' +
encodeURIComponent( originalURL ) +
'&is_post_share=true' +
'&v=5';
const redirect = function () {
if (
! window.open( url, '_blank' )
) {
location.href = url;
}
};
if ( /Firefox/.test( navigator.userAgent ) ) {
setTimeout( redirect, 0 );
} else {
redirect();
}
},
};
window.wpcom_reblog = wpcom_reblog;
})();
</script>
<script crossorigin='anonymous' type='text/javascript' src='/_static/??-eJx9jEsOwjAMBS9EcIuqdoU4i2msNKnzoXbI9ckO1AXbeTMPWjFrTkpJ4cnZmcLV+STQ8mHRilkZRUggdITK5n27BrnATxbrN/LWkQpQ7WvePRnGBkqxMCqd+J8f9nu3X5UqbZgs09HlR7yPyzxM0zyMS/gAPatD8g=='></script>
<script id="wp-hooks-js" src="/wp-content/plugins/gutenberg-core/v23.9.1/build/scripts/hooks/index.min.js?m=1788785546i&#038;ver=f0f188028580e8dc1255"></script>
<script id="wp-i18n-js" src="/wp-content/plugins/gutenberg-core/v23.9.1/build/scripts/i18n/index.min.js?m=1788785546i&#038;ver=1dfe7db3940c23ea9216"></script>
<script id="wp-i18n-js-after">
wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } );
//# sourceURL=wp-i18n-js-after
</script>
<script id="verbum-settings-js-before">
window.VerbumComments = {"Log in or provide your name and email to leave a reply.":"Log in or provide your name and email to leave a reply.","Log in or provide your name and email to leave a comment.":"Log in or provide your name and email to leave a comment.","Receive web and mobile notifications for posts on this site.":"Receive web and mobile notifications for posts on this site.","Name":"Name","Email (address never made public)":"Email (address never made public)","Website (optional)":"Website (optional)","Leave a reply. (log in optional)":"Leave a reply. (log in optional)","Leave a comment. (log in optional)":"Leave a comment. (log in optional)","Log in to leave a reply.":"Log in to leave a reply.","Log in to leave a comment.":"Log in to leave a comment.","Logged in via %s":"Logged in via %s","Log out":"Log out","Your browser is blocking the cookies needed to log in and comment here. Allow cookies in your privacy settings, then reload the page.":"Your browser is blocking the cookies needed to log in and comment here. Allow cookies in your privacy settings, then reload the page.","Email":"Email","(Address never made public)":"(Address never made public)","Instantly":"Instantly","Daily":"Daily","Reply":"Reply","Comment":"Comment","WordPress":"WordPress","Weekly":"Weekly","Notify me of new posts":"Notify me of new posts","Email me new posts":"Email me new posts","Email me new comments":"Email me new comments","Cancel":"Cancel","Write a comment...":"Write a comment...","Write a reply...":"Write a reply...","Website":"Website","Optional":"Optional","We'll keep you in the loop!":"We'll keep you in the loop!","Loading your comment...":"Loading your comment...","Discover more from":"Discover more from CloudPundit: Massive-Scale Computing","Subscribe now to keep reading and get access to the full archive.":"Subscribe now to keep reading and get access to the full archive.","Continue reading":"Continue reading","Never miss a beat!":"Never miss a beat!","Interested in getting blog post updates? Simply click the button below to stay in the loop!":"Interested in getting blog post updates? Simply click the button below to stay in the loop!","Enter your email address":"Enter your email address","Subscribe":"Subscribe","Comment sent successfully":"Comment sent successfully","Save my name, email, and website in this browser for the next time I comment.":"Save my name, email, and website in this browser for the next time I comment.","hovercardi18n":{"Edit your profile \u2192":"Edit your profile \u2192","View profile \u2192":"View profile \u2192","Contact":"Contact","Send money":"Send money","Gravatar not found.":"Gravatar not found.","This profile is private.":"This profile is private.","Too Many Requests.":"Too Many Requests.","Internal Server Error.":"Internal Server Error.","Sorry, we are unable to load this Gravatar profile.":"Sorry, we are unable to load this Gravatar profile."},"siteId":4543198,"postId":1158,"mustLogIn":false,"requireNameEmail":true,"commentRegistration":false,"connectURL":"https://cloudpundit.wordpress.com/public.api/connect/?action=request\u0026domain=cloudpundit.com","logoutURL":"https://cloudpundit.wordpress.com/wp-login.php?action=logout\u0026_wpnonce=b263a00deb","homeURL":"https://cloudpundit.com/","subscribeToBlog":true,"subscribeToComment":true,"isJetpackCommentsLoggedIn":false,"jetpackUsername":"","jetpackUserId":0,"jetpackSignature":"","jetpackAvatar":null,"enableBlocks":true,"enableSubscriptionModal":true,"currentLocale":"en","isJetpackComments":false,"allowedBlocks":["core/paragraph","core/list","core/code","core/list-item","core/quote","core/image","core/embed","core/quote","core/code"],"embedNonce":"2db44e3fcc","verbumBundleUrl":"/wp-content/mu-plugins/jetpack-mu-wpcom-plugin/moon/jetpack_vendor/automattic/jetpack-mu-wpcom/src/features/verbum-comments/dist/index.js","isRTL":false,"vbeCacheBuster":1771405207,"iframeUniqueId":0,"colorScheme":false}
//# sourceURL=verbum-settings-js-before
</script>
<script data-wp-strategy="defer" defer id="verbum-dynamic-loader-js" src="/wp-content/mu-plugins/jetpack-mu-wpcom-plugin/moon/jetpack_vendor/automattic/jetpack-mu-wpcom/src/build/verbum-comments/assets/dynamic-loader.js?m=1772518873i&#038;minify=false&#038;ver=8b5296f9195db92c42e4"></script>
<script id="comment-like-js-extra">
var comment_like_text = {"loading":"Loading...","swipeUrl":"https://s2.wp.com/wp-content/mu-plugins/comment-likes/js/lib/swipe.js?m=1382645497i&amp;ver=20131008"};
//# sourceURL=comment-like-js-extra
</script>
<script id="sharing-js-js-extra">
var sharing_js_options = {"lang":"en","counts":"1","is_stats_active":"1"};
//# sourceURL=sharing-js-js-extra
</script>
<script id="jetpack-script-data-js-before">
window.JetpackScriptData = {"site":{"host":"wpcom","is_wpcom_platform":true}};
//# sourceURL=jetpack-script-data-js-before
</script>
<script crossorigin='anonymous' type='text/javascript' src='/_static/??-eJyNjtsKwjAMhl/ILhNxmxfio0hs60y3HlhSh2/vmDpERLwL33/ID2NSOgaxQcBnlfrcUmDQ0fsJqZ46y+A+QOF4Bd+DzkpC3akJjWkKPQXwMYaXeLzaYOIAmCV6FCG9xJDZCsMpU28WyHqgJMqg4I/P2BF7K2pTlHCkoBdwHmaz+WP1+9i54zGELzhYg8bc5pNCW3gKU9/B79d1U++2ZVNV7g4Fs3v2'></script>
<script id="sharing-js-js-after">
window.WPCOM_sharing_popups = window.WPCOM_sharing_popups || {};
window.WPCOM_sharing_popups[ "facebook" ] = "menubar=1,resizable=1,width=600,height=400";
//# sourceURL=sharing-js-js-after
</script>
<script id="wp-emoji-settings" type="application/json">
{"baseUrl":"https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/72x72/","ext":".png","svgUrl":"https://s0.wp.com/wp-content/mu-plugins/wpcom-smileys/twemoji/2/svg/","svgExt":".svg","source":{"concatemoji":"/wp-includes/js/wp-emoji-release.min.js?m=1783090810i&ver=7.1.1-alpha-63555"}}
</script>
<script type="module">
/*! This file is auto-generated */
var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))});
//# sourceURL=/wp-includes/js/wp-emoji-loader.min.js
</script>
<iframe src='https://widgets.wp.com/likes/master.html?ver=20260912#ver=20260912' scrolling='no' id='likes-master' name='likes-master' style='display:none;'></iframe>
<div id='likes-other-gravatars' role="dialog" aria-hidden="true" tabindex="-1"><div class="likes-text"><span>%d</span></div><ul class="wpl-avatars sd-like-gravatars"></ul></div>
<script src="//stats.wp.com/w.js?69" defer></script> <script type="text/javascript">
_tkq = window._tkq || [];
_stq = window._stq || [];
_tkq.push(['storeContext', {'blog_id':'4543198','blog_tz':'-5','user_lang':'en','blog_lang':'en','user_id':'0'}]);
// Prevent sending pageview tracking from WP-Admin pages.
_stq.push(['view', {'blog':'4543198','v':'wpcom','tz':'-5','user_id':'0','post':'1158','subd':'cloudpundit'}]);
_stq.push(['extra', {'crypt':'UE5XaGUuOTlwaD85flAmcm1mcmZsaDhkV11YdWtpP0NsWnVkPS9sL0ViLndld3BuVT01Uj14Ti1yYTBnX3xuYUQ3Qz1oblZbVHV3MTZoVXFwTTVDK2wuPT1KWzJNV19iQk9bTmF0PUUlUlYzbW1nYyxHTnlKQiUsT0hKb2tYK09aZkN6LzJmYVtxMGpoLT9rJnJRJXg4RHBwdC13YTlWZEM/YlNwLG5fNVBiUkovSz96TEIxXzZycl1MWDMrc2JbTGgtRE9sdXVFTnImeU9iUlVXVl1yMkJySkh5JUx0a3grRDhKdFpJUzN8ayY2fmgxNTBCQXJtdkxtJlNxeWVSLEQuY1J4Rmh1RXRRZWp2TD0vLXxkUTIyUV81dj8sRTQ4Sj1VX0t5WWFFNUJYcl0sRXV8cWlmbV9lczRFQ09nRFg0NU9TYmNJc1k2aUQ4ck9ZZTZlTFlRbzNSMnVzYiU0blZtWixlRSsyNHhDTG58SkQsV100Q3BPcy9mMHI4NHNzJWtMaXhVSDdQdWNBcytIdw=='}]);
_stq.push([ 'clickTrackerInit', '4543198', '1158' ]);
</script>
<noscript><img src="https://pixel.wp.com/b.gif?v=noscript" style="height:1px;width:1px;overflow:hidden;position:absolute;bottom:1px;" alt="" /></noscript>
<meta id="bilmur" property="bilmur:data" content="" data-provider="wordpress.com" data-service="simple" data-site-tz="Etc/GMT+5" data-custom-props="{&quot;enq_jquery&quot;:&quot;1&quot;,&quot;logged_in&quot;:&quot;0&quot;,&quot;wptheme&quot;:&quot;pub\/mystique&quot;,&quot;wptheme_is_block&quot;:&quot;0&quot;}" >
<script defer src="/wp-content/js/bilmur.min.js?i=17&amp;m=202637"></script>
<script>
(function() {
'use strict';
const fetches = {};
const promises = {};
const urls = {
'wp-polyfill': '/wp-includes/js/dist/vendor/wp-polyfill.min.js?m=1786440387i&ver=3.15.0',
'verbum': '/wp-content/mu-plugins/jetpack-mu-wpcom-plugin/moon/jetpack_vendor/automattic/jetpack-mu-wpcom/src/build/verbum-comments/verbum-comments.js?m=1788898305i&minify=false&ver=3d6130a57c3104d5bc3b'
};
const loaders = {
'verbum': () => {
fetchExternalScript('wp-polyfill');
fetchExternalScript('verbum');
promises['wp-polyfill'] = promises['wp-polyfill'] || loadWPScript('wp-polyfill');
promises['verbum'] = promises['verbum'] || promises['wp-polyfill'].then( () => loadWPScript('verbum') );
return promises['verbum'];
},
};
const scriptExtras = {
};
window.WP_Enqueue_Dynamic_Script = {
loadScript: (handle) => {
if (!loaders[handle]) {
console.error('WP_Enqueue_Dynamic_Script: unregistered script `' + handle + '`.');
}
return loaders[handle]();
}
};
function fetchExternalScript(handle) {
if (!urls[handle]) {
return Promise.resolve();
}
fetches[handle] = fetches[handle] || fetch(urls[handle], { mode: 'no-cors' });
return fetches[handle];
}
function runExtraScript(handle, type, index) {
const id = 'wp-enqueue-dynamic-script:' + handle + ':' + type + ':' + (index + 1);
const template = document.getElementById(id);
if (!template) {
return Promise.reject();
}
const script = document.createElement( 'script' );
script.innerHTML = template.innerHTML;
document.body.appendChild( script );
return Promise.resolve();
}
function loadExternalScript(handle) {
if (!urls[handle]) {
return Promise.resolve();
}
return fetches[handle].then(() => {
return new Promise((resolve, reject) => {
const script = document.createElement('script');
script.onload = () => resolve();
script.onerror = (e) => reject(e);
script.src = urls[handle];
document.body.appendChild(script);
});
});
}
function loadExtra(handle, pos) {
const count = (scriptExtras[handle] && scriptExtras[handle][pos]) || 0;
let promise = Promise.resolve();
for (let i = 0; i < count; i++) {
promise = promise.then(() => runExtraScript(handle, pos, i));
}
return promise;
}
function loadWPScript(handle) {
// Core loads scripts in this order. See: https://github.com/WordPress/WordPress/blob/a59eb9d39c4fcba834b70c9e8dfd64feeec10ba6/wp-includes/class-wp-scripts.php#L428.
return loadExtra(handle, 'translations')
.then(() => loadExtra(handle, 'before'))
.then(() => loadExternalScript(handle))
.then(() => loadExtra(handle, 'after'));
}
} )();
</script>
</body>
</html>