{"id":354,"date":"2020-10-26T17:46:03","date_gmt":"2020-10-26T17:46:03","guid":{"rendered":"https:\/\/www.almtoolbox.com\/fr\/blog\/?p=354"},"modified":"2022-01-13T08:43:17","modified_gmt":"2022-01-13T08:43:17","slug":"haute-disponibilite-bitbucket-data-center-vs-gitlab-ha","status":"publish","type":"post","link":"https:\/\/www.almtoolbox.com\/fr\/blog\/haute-disponibilite-bitbucket-data-center-vs-gitlab-ha\/","title":{"rendered":"Haute disponibilit\u00e9: Bitbucket Data Center VS GitLab HA"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-355 size-full\" src=\"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-content\/uploads\/2020\/10\/hong-kong-1990268_1280-1024x576-1.jpg\" alt=\"\" width=\"1024\" height=\"576\" srcset=\"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-content\/uploads\/2020\/10\/hong-kong-1990268_1280-1024x576-1.jpg 1024w, https:\/\/www.almtoolbox.com\/fr\/blog\/wp-content\/uploads\/2020\/10\/hong-kong-1990268_1280-1024x576-1-300x169.jpg 300w, https:\/\/www.almtoolbox.com\/fr\/blog\/wp-content\/uploads\/2020\/10\/hong-kong-1990268_1280-1024x576-1-768x432.jpg 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/p>\n<p>Nous aidons r\u00e9guli\u00e8rement nos clients \u00e0 planifier et \u00e0 mettre en \u0153uvre des solutions de haute disponibilit\u00e9 (HA) sur site et dans le cloud et dans des r\u00e9seaux \u00e9troits (espac\u00e9s) \/ hybrides, et pour une vari\u00e9t\u00e9 d&#8217;outils &#8211; par ex. Atlassian Bitbucket, GitLab, Jira, Artifactory, SonarQube, GitHub et plus encore.<\/p>\n<p>On nous demande souvent \u00abquelle solution HA est la meilleure dans le domaine de la gestion du code et de la gestion de la configuration logicielle &#8211; GitLab ou Bitbucket?\u00bb<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-356 size-full\" src=\"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-content\/uploads\/2020\/10\/bitbucket-gitlab.jpg\" alt=\"\" width=\"800\" height=\"387\" srcset=\"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-content\/uploads\/2020\/10\/bitbucket-gitlab.jpg 800w, https:\/\/www.almtoolbox.com\/fr\/blog\/wp-content\/uploads\/2020\/10\/bitbucket-gitlab-300x145.jpg 300w, https:\/\/www.almtoolbox.com\/fr\/blog\/wp-content\/uploads\/2020\/10\/bitbucket-gitlab-768x372.jpg 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/p>\n<h3>En fait, le sujet de HA lui-m\u00eame est un sujet complexe, pour plusieurs raisons:<\/h3>\n<ul>\n<li>Il pourrait y avoir de nombreuses fa\u00e7ons de mettre en \u0153uvre HA<\/li>\n<li>La solution d\u00e9pend des besoins de chaque client (est-ce uniquement \u00e0 des fins d&#8217;\u00e9quilibrage de charge ou pour \u00e9viter un d\u00e9ni de service?<\/li>\n<li>Cela d\u00e9pend du nombre de points de d\u00e9faillance uniques que le client est pr\u00eat \u00e0 absorber (voire pas du tout)<\/li>\n<li>Cela d\u00e9pend \u00e9galement du budget (plus la disponibilit\u00e9 est \u00ab\u00e9lev\u00e9e\u00bb, plus il faut de budget)<\/li>\n<\/ul>\n<p>Et parfois, les clients disent qu&#8217;ils veulent de la haute disponibilit\u00e9, mais en pratique, ils veulent simplement dire \u00a0une reprise apr\u00e8s sinistre (DR)\u2026<\/p>\n<h3>Pour y r\u00e9pondre de mani\u00e8re simple, je prouverai l&#8217;affirmation suivante:<\/h3>\n<p>\u00c9tant donn\u00e9 la solution HA de Bitbucket (\u00abData Center\u00bb) comme expliqu\u00e9 ici, et \u00e9tant donn\u00e9 la solution HA de GitLab comme expliqu\u00e9 ici, GitLab, en utilisant le package Omnibus, peut fournir HA (pour la redondance et la haute disponibilit\u00e9) pour tous les composants afin d&#8217;obtenir une HA horizontale pour l&#8217;ensemble solution, alors que Bitbucket ne peut pas fournir de redondance pour tous les composants.<\/p>\n<h3>Preuves:<\/h3>\n<ol>\n<li>Dans Bitbucket, le code lui-m\u00eame, en tant que d\u00e9p\u00f4t git, repose sur un NFS partag\u00e9 (comme indiqu\u00e9 dans le diagramme du lien ci-dessus). En cas de panne de NFS ou de perte d&#8217;informations, tout sera perdu.Dans GitLab, \u00e0 partir de la version 13.0 (sortie en mai 2020), vous pouvez cr\u00e9er un Gitaly Cluster, il existe donc plusieurs copies du d\u00e9p\u00f4t git et il n&#8217;y a pas un seul point de d\u00e9faillance (explication d\u00e9taill\u00e9e dans l&#8217;article que nous avons \u00e9crit alors &#8211; ici) De plus, ex\u00e9cuter git sur NFS aura g\u00e9n\u00e9ralement des probl\u00e8mes de performances (un probl\u00e8me connu).<\/li>\n<li>\u00c9tant donn\u00e9 que les informations de chaque session sont stock\u00e9es sur le serveur d\u2019applications de Bitbucket, des sessions peuvent \u00eatre perdues lors du basculement vers un autre serveur (basculement). Cela signifie que les sessions seront perdues et que tous les utilisateurs devront se reconnecter, tandis que certaines informations seront compl\u00e8tement perdues (ceci est explicitement mentionn\u00e9 dans l&#8217;article Atlassian ci-dessus).GitLab utilise Redis dans la configuration HA afin qu&#8217;une telle situation ne se produise pas.<\/li>\n<li>La solution standard d\u2019Atlassian fournit une base de donn\u00e9es partag\u00e9e &#8211; qui est un point de d\u00e9faillance unique.Le package Omnibus de GitLab prend en charge la haute disponibilit\u00e9 des bases de donn\u00e9es afin de pouvoir l\u2019impl\u00e9menter plus facilement.<\/li>\n<li>GitLab HA peut multiplier chaque composant pour une mise \u00e0 l&#8217;\u00e9chelle (comme expliqu\u00e9 dans le diagramme ci-dessus)<\/li>\n<\/ol>\n<ul>\n<li>Les deux produits fournissent une solution HA active \/ active (bien qu&#8217;avec des diff\u00e9rences significatives comme indiqu\u00e9 ci-dessus)<\/li>\n<li>GitLab est souvent utilis\u00e9 comme un outil CI \/ CD (en plus d&#8217;\u00eatre un outil SCM), et la solution HA fournit \u00e9galement une couverture compl\u00e8te pour les aspects CI \/ CD (tels que la haute disponibilit\u00e9 des pipelines en cours d&#8217;ex\u00e9cution et le d\u00e9ploiement).<\/li>\n<li>Bitbucket on-prem, en revanche, n&#8217;inclut pas de solution CI \/ CD &#8211; il y a donc un autre avantage significatif \u00e0 GitLab ici: en mettant en place une solution HA, il est possible de \u00abfaire d&#8217;une pierre deux coups\u00bb.<\/li>\n<li>Il existe une tendance \u00e0 confondre les solutions HA avec les solutions DR. Par cons\u00e9quent, la mise en miroir intelligente de Bitbucket expliqu\u00e9e ici n&#8217;est pas une solution HA. Il donne une solution DR partielle de r\u00e9plication des r\u00e9f\u00e9rentiels, mais sans les m\u00e9tadonn\u00e9es qui les accompagnent.<\/li>\n<li>Dans GitLab, une solution DR plus compl\u00e8te peut \u00eatre mise en \u0153uvre \u00e0 l&#8217;aide de \u00abGitLab Geo\u00bb, qui donne \u00e9galement des informations DR autour du d\u00e9p\u00f4t telles que les comptes utilisateurs, les probl\u00e8mes, les demandes de fusion, les groupes, les donn\u00e9es de projet et plus encore.<\/li>\n<\/ul>\n<p>L&#8217;article ci-dessus ne doit pas \u00eatre interpr\u00e9t\u00e9 comme un conseil g\u00e9n\u00e9ral pour tous les types de clients et d&#8217;utilisateurs.<\/p>\n<p>Il peut y avoir des diff\u00e9rences d&#8217;un client \u00e0 l&#8217;autre (contactez-nous pour recevoir nos recommandations individuelles couvertes par la garantie).<\/p>\n<h3>Mise \u00e0 jour 10.26.2020:<\/h3>\n<p>Comme le dernier plan d&#8217;Atlassian est de d\u00e9pr\u00e9cier les versions de Bitbucket Server (y compris Jira Server) et de se concentrer sur les solutions cloud, et puisque la version Bitbucket Data Center repose en fin de compte sur la version Server (comme \u00e9crit ici: &#8220;Bitbucket Data Center et Bitbucket Server sont en fait les m\u00eame version de Bitbucket \u00bb), l&#8217;avenir de la version Data Center est trouble, et nous ne savons pas ce que l&#8217;entreprise en fera \u00e0 l&#8217;avenir.<\/p>\n<p>&nbsp;<\/p>\n<p>P.S Les clients \u00a0\u00a0ont \u00e9galement demand\u00e9 quelle solution serait la moins ch\u00e8re en termes de co\u00fbts de licence et de prix (et TCO). Je ne r\u00e9pondrai pas ici car les vendeurs changent tr\u00e8s souvent les prix. Nous nous ferons un plaisir de vous r\u00e9pondre en d\u00e9tail lorsque vous nous contacterez.<\/p>\n<p style=\"background: white;\"><span style=\"font-size: 12.0pt; font-family: 'Helvetica',sans-serif; color: #2e3e48;\">EGDS ALMtoolbox est le repr\u00e9sentant officiel de GitLab et de Hashicorp en France.<\/span><\/p>\n<p style=\"background: white;\"><span style=\"font-size: 12.0pt; font-family: 'Helvetica',sans-serif; color: #2e3e48;\">Contactez nous\u00a0 pour un devis ou pour une question:+33 (0)1 84 17 53 28<\/span><\/p>\n<p style=\"background: white;\"><span style=\"font-size: 12.0pt; font-family: 'Helvetica',sans-serif; color: #2e3e48;\">ou par\u00a0 email :\u00a0 \u00a0<a href=\"mailto:devops.fr@almtoolbox.com\">devops.fr@almtoolbox.com<\/a><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nous aidons r\u00e9guli\u00e8rement nos clients \u00e0 planifier et \u00e0 mettre en \u0153uvre des solutions de haute disponibilit\u00e9 (HA) sur site et dans le cloud et dans des r\u00e9seaux \u00e9troits (espac\u00e9s) \/ hybrides, et pour une vari\u00e9t\u00e9 d&#8217;outils &#8211; par ex. Atlassian Bitbucket, GitLab, Jira, Artifactory, SonarQube, GitHub et plus encore. On nous demande souvent \u00abquelle&hellip; <a class=\"more-link\" href=\"https:\/\/www.almtoolbox.com\/fr\/blog\/haute-disponibilite-bitbucket-data-center-vs-gitlab-ha\/\">Continue reading <span class=\"screen-reader-text\">Haute disponibilit\u00e9: Bitbucket Data Center VS GitLab HA<\/span> <span class=\"meta-nav\" aria-hidden=\"true\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":356,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,42,22,94],"tags":[95,96,97,25,98],"class_list":["post-354","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bitbucket","category-devops","category-git","category-high-availability","tag-atlassian","tag-bitbucket-vs-gitlab","tag-bitbucket-data-center","tag-gitlab-ha","tag-gitlab-vs-bitbucket"],"_links":{"self":[{"href":"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-json\/wp\/v2\/posts\/354","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-json\/wp\/v2\/comments?post=354"}],"version-history":[{"count":10,"href":"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-json\/wp\/v2\/posts\/354\/revisions"}],"predecessor-version":[{"id":366,"href":"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-json\/wp\/v2\/posts\/354\/revisions\/366"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-json\/wp\/v2\/media\/356"}],"wp:attachment":[{"href":"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-json\/wp\/v2\/media?parent=354"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-json\/wp\/v2\/categories?post=354"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.almtoolbox.com\/fr\/blog\/wp-json\/wp\/v2\/tags?post=354"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}