{"id":4159,"date":"2020-06-23T13:00:00","date_gmt":"2020-06-23T11:00:00","guid":{"rendered":"https:\/\/www.unicoda.com\/?p=4159"},"modified":"2020-06-22T17:46:01","modified_gmt":"2020-06-22T15:46:01","slug":"auto-hebergement-le-retour","status":"publish","type":"post","link":"https:\/\/www.unicoda.com\/?p=4159","title":{"rendered":"Auto-h\u00e9bergement, le retour"},"content":{"rendered":"\n<p>Au d\u00e9tour d&rsquo;un coin de web, je suis tomb\u00e9 par hasard sur un article sur serveur410 demandant des retours d&rsquo;exp\u00e9rience autour de l&rsquo;auto-h\u00e9bergement. L&rsquo;article de synth\u00e8se ayant \u00e9t\u00e9 publi\u00e9 quelques jours apr\u00e8s que j&rsquo;ai pris connaissance du premier et avant que j&rsquo;aie eu le temps de commencer \u00e0 \u00e9crire, j&rsquo;en profite donc pour produire ici un article d\u00e9di\u00e9 au sujet et qui me permettra, par la m\u00eame occasion, de faire un bilan de ses quelques ann\u00e9es d&rsquo;auto-h\u00e9bergement. Entrons dans le vif du sujet.<\/p>\n\n\n\n<p>Mon aventure de l&rsquo;auto-h\u00e9bergement commence en m\u00eame temps que les pr\u00e9mices d&rsquo;Unicoda, durant les rencontres mondiales du logiciel libre 2011 \u00e0 Strasbourg. C&rsquo;est \u00e0 ce moment-l\u00e0 que, conf\u00e9rence apr\u00e8s conf\u00e9rence, discussion apr\u00e8s discussion, atelier apr\u00e8s atelier, je prends la d\u00e9cision de me lancer dans l&rsquo;aventure pour cr\u00e9er mon bout d&rsquo;internet. Les motivations sont vari\u00e9es, mais le premier objectif est de disposer d&rsquo;un espace de publication que je contr\u00f4le et o\u00f9 les donn\u00e9es m&rsquo;appartiennent. L&rsquo;autre \u00e9l\u00e9ment cl\u00e9 de l&rsquo;histoire: ma soif d&rsquo;apprendre. Apr\u00e8s deux ann\u00e9es de classes pr\u00e9paratoires, pendant lesquelles j&rsquo;ai laiss\u00e9 de c\u00f4t\u00e9 mon apprentissage de la programmation et mes exp\u00e9riences avec PHP et MySQL, commenc\u00e9s au lyc\u00e9e en autodidacte (l&rsquo;option informatique en CPGE \u00e9tant plut\u00f4t d\u00e9di\u00e9 \u00e0 la r\u00e9solution ou l&rsquo;analyse de probl\u00e8mes math\u00e9matiques avec l&rsquo;outil informatique, que de la technique informatique), j&rsquo;ai d\u00e9cid\u00e9 de m&rsquo;engager dans un cursus d&rsquo;ing\u00e9nieur en informatique, et enfin, plus simplement, le sujet m&rsquo;int\u00e9resse et me passionne.<\/p>\n\n\n\n<p>Il faudra n\u00e9anmoins attendre d\u00e9but 2012, pour que je pose les premi\u00e8res pierres d&rsquo;Unicoda. Achat du nom de domaine, location d&rsquo;un serveur chez RedHerberg (association qui proposait \u00e0 des formules d&rsquo;h\u00e9bergement tr\u00e8s accessible financi\u00e8rement pour d\u00e9buter), installation et d\u00e9ploiement de WordPress, configuration d&rsquo;un serveur web, modification de zone DNS, autant d&rsquo;\u00e9l\u00e9ments \u00e0 apprendre au fur et \u00e0 mesure.<\/p>\n\n\n\n<p>Dans les ann\u00e9es qui suivront, Unicoda migrera vers OVH sur un serveur Kimsufi avec davantage de puissance et de m\u00e9moire. Ce serveur me permettra de continuer mes exp\u00e9rimentations: sous-domaines, installation d&rsquo;Owncloud, mise en place de certificats HTTPS sur l&rsquo;ensemble des domaines avec StartSSL et test de nombreux services pour construire ce que je d\u00e9signe comme mon nuage de services auto-h\u00e9berg\u00e9s. De nombreux articles t\u00e9moignent de ces essais et de cet apprentissage progressif et des \u00e9volutions de l&rsquo;ensemble au fil des ans.<\/p>\n\n\n\n<p>Avance rapide quelques ann\u00e9es plus tard, je d\u00e9cide de pousser l&rsquo;exp\u00e9rience plus loin et d&rsquo;h\u00e9berger l&rsquo;ensemble des services chez moi, \u00e0 l&rsquo;exception d&rsquo;Unicoda, qui reste comme service unique sur une machine virtuelle chez OVH, afin de garantir une certaine disponibilit\u00e9 de service et de disposer d&rsquo;une g\u00e9n\u00e9reuse bande passante (bien davantage que l&rsquo;upload de ma connexion ADSL \u00e0 ce moment l\u00e0). Je recycle une machine assembl\u00e9e pendant mes ann\u00e9es de lyc\u00e9e et qui sans \u00eatre tr\u00e8s performante, permet de faire fonctionner convenablement les services que j&rsquo;utilise.<\/p>\n\n\n\n<p>Peu apr\u00e8s, je m&rsquo;int\u00e9resse \u00e0 l&rsquo;\u00e9nergie consomm\u00e9e par cette machine et d\u00e9cide que 35 Watts minimum pour une machine majoritairement en mode idle est un peu trop \u00e9lev\u00e9 \u00e0 mon go\u00fbt (bien que ridicule par rapport \u00e0 la consommation de mon PC fixe en utilisation). Je migre donc l&rsquo;ensemble vers un Pi 3, ordinateur de poche consommant 4 \u00e0 5 Watts en mode idle, avec des pics de consommation mesur\u00e9s \u00e0 7 Watts sur une p\u00e9riode d&rsquo;un mois. La facture d\u2019\u00e9lectricit\u00e9 s&rsquo;all\u00e8ge un peu. Je profite de la migration pour mettre en place un Pi 1 remplissant le r\u00f4le de passerelle et permettant de faire cohabiter les deux machines, le temps de migrer chaque service l&rsquo;un apr\u00e8s l&rsquo;autre.<\/p>\n\n\n\n<p>En parall\u00e8le, s&rsquo;ajoute la mise en place d&rsquo;une sauvegarde automatique, pour \u00e9viter d&rsquo;effectuer le tout \u00e0 la main p\u00e9riodiquement, d&rsquo;abord avec duplicity vers hubic, puis duplicity vers Backblaze B2 et enfin, restic vers Backblaze, avec duplicity version all\u00e9g\u00e9 en compl\u00e9ment de secours. Une fois la sauvegarde en place, j&rsquo;ai pu me concentrer sur l&rsquo;\u00e9criture de script de d\u00e9ploiement automatique pour \u00eatre en mesure de red\u00e9ployer l&rsquo;ensemble de mes services rapidement et avec peu d&rsquo;intervention humaine \u00e0 partir de la sauvegarde journali\u00e8re. Plus r\u00e9cemment, cette qu\u00eate de stabilit\u00e9 a vu l&rsquo;ajout d&rsquo;un onduleur au syst\u00e8me, pour parer aux \u00e9ventuels probl\u00e8mes d&rsquo;alimentation \u00e9lectrique.<\/p>\n\n\n\n<p>Il est clair que d\u00e9cider de s&rsquo;auto-h\u00e9berger, c&rsquo;est faire le choix de passer plusieurs heures par semaines et parfois par jour, pour installer les services, puis les maintenir, les mettre \u00e0 jour, les prot\u00e9ger et parfois investiguer les probl\u00e8mes de fonctionnement. Est-ce que cela en vaut la peine&#8230; oui ! Et d&rsquo;autant plus si vous exercez, ou voulez exercer un m\u00e9tier dans le domaine de l&rsquo;informatique, ou simplement par int\u00e9r\u00eat ou passion pour le domaine. L&rsquo;\u00e9l\u00e9ment le plus chronophage restant la mont\u00e9e de version des services, surtout lorsque celle-ci est effectu\u00e9e peu apr\u00e8s la sortie de la mise \u00e0 jour. Pour l&rsquo;anecdote, j&rsquo;ai en m\u00e9moire une soir\u00e9e compl\u00e8te pass\u00e9e \u00e0 mettre \u00e0 jour Gitlab et d\u00e9boguer la configuration, alors que le but principal \u00e9tait d&rsquo;\u00e9crire quelques lignes de code sur l&rsquo;un de mes programmes du moment.<\/p>\n\n\n\n<p>En conclusion, il ne faut pas h\u00e9siter \u00e0 se lancer dans l&rsquo;aventure de l&rsquo;auto-h\u00e9bergement, \u00e0 condition d&rsquo;\u00eatre conscient des enjeux et des responsabilit\u00e9s qui viennent avec. Faire simple, commencer petit et surtout disposer du temps et de l&rsquo;envie d&rsquo;apprendre !<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Au d\u00e9tour d&rsquo;un coin de web, je suis tomb\u00e9 par hasard sur un article sur serveur410 demandant des retours d&rsquo;exp\u00e9rience autour de l&rsquo;auto-h\u00e9bergement. L&rsquo;article de synth\u00e8se ayant \u00e9t\u00e9 publi\u00e9 quelques jours apr\u00e8s que j&rsquo;ai pris connaissance du premier et avant que j&rsquo;aie eu le temps de commencer \u00e0 \u00e9crire, j&rsquo;en profite donc pour produire ici &hellip; <a href=\"https:\/\/www.unicoda.com\/?p=4159\" class=\"more-link\">Continuer la lecture<span class=\"screen-reader-text\"> de &laquo;&nbsp;Auto-h\u00e9bergement, le retour&nbsp;&raquo;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[337],"tags":[],"class_list":["post-4159","post","type-post","status-publish","format-standard","hentry","category-auto-hebergement"],"_links":{"self":[{"href":"https:\/\/www.unicoda.com\/index.php?rest_route=\/wp\/v2\/posts\/4159","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.unicoda.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.unicoda.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.unicoda.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.unicoda.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4159"}],"version-history":[{"count":2,"href":"https:\/\/www.unicoda.com\/index.php?rest_route=\/wp\/v2\/posts\/4159\/revisions"}],"predecessor-version":[{"id":4162,"href":"https:\/\/www.unicoda.com\/index.php?rest_route=\/wp\/v2\/posts\/4159\/revisions\/4162"}],"wp:attachment":[{"href":"https:\/\/www.unicoda.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4159"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.unicoda.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4159"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.unicoda.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4159"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}