<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Arnaud Lefebvre, Author at Clever Cloud</title>
	<atom:link href="https://www.clever.cloud/fr/blog/author/arnaud-lefebvreclever-cloud-com/feed/" rel="self" type="application/rss+xml" />
	<link></link>
	<description>From Code to Product</description>
	<lastBuildDate>Mon, 04 May 2026 15:00:34 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://cdn.clever-cloud.com/uploads/2023/03/cropped-cropped-favicon-32x32.png</url>
	<title>Arnaud Lefebvre, Author at Clever Cloud</title>
	<link></link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Clever Cloud contrôle l’annonce de ses préfixes IP</title>
		<link>https://www.clever.cloud/fr/blog/engineering-fr/2026/05/04/clever-cloud-controle-lannonce-de-ses-prefixes-ip/</link>
		
		<dc:creator><![CDATA[Arnaud Lefebvre]]></dc:creator>
		<pubDate>Mon, 04 May 2026 15:00:33 +0000</pubDate>
				<category><![CDATA[Engineering]]></category>
		<guid isPermaLink="false">https://www.clever.cloud/?p=23872</guid>

					<description><![CDATA[<p><img width="2499" height="1109" src="https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="2026 03 17 clever cloud banniere blog clever cloud controle lannonce de ses prefixes ip fr 1" decoding="async" fetchpriority="high" srcset="https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1.png 2499w, https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1-1024x454.png 1024w, https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1-768x341.png 768w, https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1-1536x682.png 1536w, https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1-2048x909.png 2048w, https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1-1368x607.png 1368w" sizes="(max-width: 2499px) 100vw, 2499px" /></p><!-- wp:paragraph -->
<p>Cela représente une étape importante, issue de trois années de préparation, et s’inscrit dans une stratégie plus large visant à conserver un contrôle complet sur l’infrastructure réseau de notre région Paris.<br></p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Pourquoi ce changement</h2>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="max-width:780px;margin:1.5rem auto;background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;font-size:15px;line-height:1.7;box-shadow:0 1px 2px rgba(0,0,0,0.08);border:1px solid rgba(255,255,255,0.08);">
  <strong style="color:#e5eefc;">Note :</strong> Clever Cloud opère plusieurs régions dans le monde. Paris est notre région principale — la plus importante — où nous contrôlons l’ensemble de la stack : notre propre matériel, notre propre réseau, et désormais l’annonce de nos préfixes IP. Les autres régions (hébergées chez OVH, Scaleway, Cloud Temple, Ionos, Oracle) reposent sur l’infrastructure du fournisseur sous-jacent, y compris son réseau. Les changements décrits dans cet article concernent spécifiquement notre région Paris.
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Aux débuts de Clever Cloud, nous avons délégué la gestion du réseau à des partenaires. Ce choix était logique : il nous permettait d’accélérer le développement, de nous concentrer sur les services cloud, et d’éviter d’investir immédiatement dans une expertise que nous ne maîtrisions pas encore.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Mais à mesure que notre infrastructure a grandi, les limites de cette dépendance sont devenues évidentes. Nous n’avions aucun contrôle sur des décisions stratégiques : la manière dont le trafic était routé sur Internet, les chemins empruntés par nos paquets, ou la rapidité avec laquelle nous pouvions réagir aux incidents. Chaque modification, chaque incident nécessitait l’intervention d’un tiers.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Nous avons donc décidé de reprendre cette responsabilité. Cela nous a permis d’obtenir plusieurs avantages concrets. Nous optimisons les coûts grâce à la gestion directe de nos relations de transit et de peering. Nous définissons notre propre politique de routage au lieu de subir les contraintes d’un intermédiaire. Nous résolvons les incidents nous-mêmes, sans dépendre de fournisseurs externes. Et nous obtenons un contrôle complet de notre stack réseau — dans la continuité du contrôle que nous avons progressivement acquis sur nos serveurs et nos datacenters au cours des dernières années.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Mais cette transition ne concerne pas uniquement notre indépendance opérationnelle. Elle apporte des bénéfices immédiats et concrets pour nos utilisateurs. Le plus important est la résilience. Auparavant, l’ensemble du trafic passait par un seul fournisseur. Tout incident de leur côté impactait l’ensemble des services. Nous disposons désormais de quatre fournisseurs upstream répartis sur trois datacenters en région parisienne. Lorsqu’un lien tombe — ce qui s’est produit au cours de l’année passée — le trafic bascule automatiquement vers les alternatives disponibles, sans interruption pour les utilisateurs. Nous pouvons même absorber la perte simultanée de plusieurs liens de transit.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Au-delà de la redondance, nous gagnons le contrôle du routage lui-même. Nous décidons désormais comment le trafic atteint sa destination. Cela nous permet d’optimiser les chemins pour réduire la latence et améliorer les performances, et d’ajuster ces décisions en fonction des besoins spécifiques et de la topologie réseau. Nous réagissons en temps réel à la congestion, aux variations du réseau et aux contraintes opérationnelles.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Enfin, la responsabilité opérationnelle change. Les incidents réseau ne nécessitent plus d’attendre qu’un fournisseur externe les prenne en charge. Les défaillances du réseau public relèvent directement de notre responsabilité : nous les détectons, les analysons et les corrigeons. Cela réduit directement le temps entre l’apparition d’un problème et sa résolution, ce qui améliore la disponibilité et la fiabilité pour nos utilisateurs.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Exploiter son propre réseau sur Internet</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Pour opérer un réseau indépendant sur Internet, une organisation doit travailler avec un registre Internet régional (RIR). Les RIR sont responsables de l’attribution et de la gestion des adresses IP et des numéros d’AS dans des zones géographiques spécifiques.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Il existe cinq RIR dans le monde :</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>RIPE NCC</strong> — Europe, Asie centrale et Moyen-Orient</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>ARIN</strong> — Amérique du Nord (États-Unis, Canada, Caraïbes)</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>LACNIC</strong> — Amérique latine et Caraïbes</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>APNIC</strong> — région Asie-Pacifique</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>AFRINIC</strong> — Afrique</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Pour Clever Cloud, dont l’infrastructure est principalement en Europe, nous travaillons avec le RIPE NCC (Réseaux IP Européens).</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Espace d’adressage alloué</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>En tant que membre d’un RIR, une organisation reçoit des allocations d’adresses IPv4 et IPv6. Pour les membres du RIPE NCC, cela correspond généralement à un bloc IPv4 en /24 (<a href="https://www.ripe.net/manage-ips-and-asns/ipv4/ipv4-waiting-list/">selon disponibilité</a>) et un bloc IPv6 en /29. Ces ressources sont associées à l’organisation et peuvent être utilisées pour opérer un réseau à l’échelle globale.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Création de notre système autonome</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Les bases de cette transition ont été posées plusieurs années auparavant. En 2019, nous avons créé notre compte RIPE NCC afin de devenir LIR (Local Internet Registry). Cela nous a permis d’obtenir un bloc IPv4 /24 (91.208.207.0/24) et un bloc IPv6 /29 (2a0f:d0c0::/29).</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Puis, en 2022, nous avons enregistré notre numéro de système autonome (ASN) auprès du registre régional. Notre numéro d’AS est <a href="https://apps.db.ripe.net/db-web-ui/lookup?source=ripe&amp;key=AS213394&amp;type=aut-num">AS213394</a>.</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);max-width:900px;width:100%;"><code style="background:transparent;color:inherit;padding:0;font-size:inherit;font-family:inherit;">&gt; whois AS213394

aut-num:        AS213394
as-name:        CleverCloud
org:            ORG-CCS42-RIPE
import:         from AS29075 accept ANY
import:         from AS3257 accept ANY
import:         from AS3356 accept ANY
import:         from AS43424 accept ANY
export:         to AS29075 announce AS213394:AS-CLVRCLD
export:         to AS3257 announce AS213394:AS-CLVRCLD
export:         to AS3356 announce AS213394:AS-CLVRCLD
export:         to AS43424 announce AS213394:AS-CLVRCLD
admin-c:        QA171-RIPE
tech-c:         QA171-RIPE
status:         ASSIGNED
mnt-by:         RIPE-NCC-END-MNT
mnt-by:         mnt-fr-clvrcldnet-1
created:        2022-11-28T08:24:23Z
last-modified:  2025-02-25T16:36:15Z
source:         RIPE</code></pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Un ASN (Autonomous System Number) est un identifiant unique attribué à un réseau sur Internet. Il est nécessaire pour annoncer des routes via BGP, le protocole qui permet le routage entre réseaux.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Maintenant que nous disposons d’un ASN, nous pouvons annoncer nos préfixes aux autres réseaux via le protocole BGP.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Le rôle de la base de données RIPE</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Le RIPE NCC maintient une base de données publique d’objets de routage (comme l’objet <em>aut-num</em> présenté précédemment). Parmi ces objets figurent les objets de type <em>route</em>, qui indiquent quel système autonome (AS) est autorisé à annoncer un préfixe IP donné.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>En pratique, ces entrées sont principalement utilisées par les opérateurs réseau et les fournisseurs de transit pour construire leurs politiques de routage et leurs mécanismes de filtrage (filtrage basé sur l’IRR). Ces filtres permettent d’accepter ou de rejeter les annonces reçues de leurs pairs. Il s’agit d’un des mécanismes utilisés pour tenter de prévenir les détournements BGP (<em>BGP hijacks</em>).</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>En appliquant ces filtres aux routes reçues de leurs pairs, les opérateurs peuvent limiter la propagation d’un préfixe annoncé par un ASN non autorisé.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Prenons un exemple : imaginons que l’organisation A possède le préfixe 192.0.2.0/24 et l’annonce à un fournisseur de transit X. Le fournisseur X applique un filtre sur les routes reçues de l’organisation A afin de n’accepter que les préfixes IP enregistrés dans la base RIR de cette organisation.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Dans ce cas, si l’organisation A commence à annoncer un préfixe qui ne lui appartient pas (par exemple notre préfixe public 91.208.207.0/24), le fournisseur X est censé rejeter cette annonce. Cela permet d’éviter qu’une route incorrecte soit propagée sur Internet et que le trafic soit redirigé vers une entité non légitime.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Le protocole BGP : comment Internet route le trafic</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Pour comprendre comment nous annonçons nos préfixes sur Internet, il est essentiel de comprendre BGP — le <em>Border Gateway Protocol</em>. BGP est le protocole de routage de référence sur Internet. Il permet aux réseaux (systèmes autonomes) d’échanger des informations sur les préfixes IP qu’ils possèdent et sur la manière de les atteindre.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>BGP fonctionne dans les deux sens. Lorsque nous annonçons à nos pairs et à nos fournisseurs de transit « nous possédons 91.208.207.0/24 », cette annonce se propage sur Internet de réseau en réseau. Chaque réseau qui relaie cette annonce ajoute son propre numéro d’AS dans le <em>AS_PATH</em> — une liste qui représente la séquence de réseaux qu’un paquet doit traverser pour nous atteindre.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Par exemple, OVHcloud (AS16276) voit le chemin [AS29075, AS213394] : le trafic passe par l’un de nos fournisseurs de transit (AS29075), puis arrive jusqu’à nous (AS213394). Chaque réseau qui relaie l’annonce la met à jour de cette manière, construisant progressivement un chemin complet.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Voici un exemple obtenu via le <a href="https://lg.ovh.net/prefix_detail/lil1/ipv4?q=91.208.207.0/24">service Looking Glass d’OVHcloud</a> :</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);max-width:900px;width:100%;"><code style="background:transparent;color:inherit;padding:0;font-size:inherit;font-family:inherit;">&gt; show route for 91.208.207.0/24 all

91.208.207.0/24    via 172.18.16.0 on eno1 [lil1_rbx1_bagg1_8k 2025-12-25] * (100/0) [AS213394i]
    Type: BGP unicast univ
    BGP.origin: IGP
    BGP.as_path: 29075 213394
    BGP.next_hop: 172.18.16.0
    BGP.med: 161
    BGP.local_pref: 40
    BGP.community: (0,0) (29075,18000) (65535,65281)
    BGP.23 [t]: 00 00 b8 6e
                   via 172.18.16.64 on eno1 [lil1_rbx8_bagg1_8k 2025-12-25] (100/0) [AS213394i]</code></pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Dans le même temps, nous recevons des annonces provenant d’autres réseaux concernant leurs propres préfixes et les chemins permettant de les atteindre. Cela construit la vue inverse : lorsque nous devons envoyer du trafic sortant, nous savons quel chemin emprunter pour atteindre une destination donnée.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Voici un exemple avec un préfixe d’OVHcloud :</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);max-width:900px;width:100%;"><code style="background:transparent;color:inherit;padding:0;font-size:inherit;font-family:inherit;">&gt; /routing/route/print detail where dst-address=5.39.0.0/17 and active

Ab   afi=ip4 contribution=active dst-address=5.39.0.0/17 routing-table=main pref-src=185.133.116.2 gateway=213.242.111.201 immediate-gw=213.242.111.201%sfp28-6 distance=20 scope=40 target-scope=10 belongs-to="bgp-IP-213.242.111.201"

      bgp.as-path="3356,16276" bgp.communities=3356:2,3356:2066,3356:22,16276:40001,3356:100,65002:7018,3356:123,3356:901,65002:701,65000:64990,65000:64995,65000:64996,3356:502 .med=0 .atomic-aggregate=no .origin=igp</code></pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Dans cet exemple, le chemin réseau utilisé par OVHcloud pour nous atteindre est différent de celui que nous utilisons pour les atteindre.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Le processus de migration</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>os préfixes IP étaient entièrement gérés par notre fournisseur historique. Bien que nous en soyons propriétaires, nous lui avions délégué leur annonce sur Internet.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Cela impliquait que son ASN (AS43424) apparaissait comme origine dans les tables de routage, et que l’ensemble du trafic transitait par son infrastructure.</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);border-left:4px solid #3b82f6;max-width:900px;width:100%;">Clever Cloud Services
   |
   | all inbound/outbound traffic
   v
Historical Provider (AS43424)
   |
   | originates: 91.208.207.0/24 (origin AS43424)
   v
Internet</pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Nous voulions que notre ASN devienne l’origine des annonces. Pour cela, nous avons planifié une migration en trois étapes, sans interruption pour les utilisateurs.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Migration d’un préfixe entre AS</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Pour migrer un préfixe d’un AS vers un autre, nous devions modifier son objet <em>route</em> dans la base de données RIPE. La procédure était relativement simple, mais nécessitait un timing précis.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Nous avons d’abord créé un second objet <em>route</em> dans la base RIPE pour notre préfixe 91.208.207.0/24. Désormais, les deux ASN étaient enregistrés comme autorisés à annoncer ce même préfixe — à la fois l’AS de notre fournisseur historique et notre propre AS (213394).</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Ces objets de routage sont interrogeables publiquement via la commande <em>whois</em> ou via l’interface web du RIPE. Par exemple, la commande suivante permet d’obtenir les deux objets enregistrés :</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);max-width:900px;width:100%;"><code style="background:transparent;color:inherit;padding:0;font-size:inherit;font-family:inherit;">❯ whois -h whois.ripe.net -T route 91.208.207.0/24
% Information related to '91.208.207.0/24AS213394'

route:          91.208.207.0/24
mnt-by:         mnt-fr-clvrcldnet-1
descr:          CleverCloud subnet
origin:         AS213394
created:        2025-01-15T10:29:14Z
last-modified:  2025-01-15T10:29:14Z
source:         RIPE

% Information related to '91.208.207.0/24AS43424'

route:          91.208.207.0/24
mnt-by:         mnt-fr-clvrcldnet-1
mnt-by:         MAGICRETAIL-MNT
descr:          CleverCloud subnet
origin:         AS43424
created:        2020-02-13T09:06:33Z
last-modified:  2020-02-13T09:06:48Z
source:         RIPE</code></pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Une fois ce second objet <em>route</em> enregistré et propagé sur Internet (c’est-à-dire une fois que les opérateurs réseau ont récupéré une version à jour de la base RIPE pour construire leurs filtres de routage), nos nouveaux fournisseurs de transit pouvaient constater que notre ASN était autorisé à annoncer ce préfixe. À partir de ce moment-là, nous pouvions commencer à annoncer ce préfixe via notre propre infrastructure.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Si nous n’avions pas créé cet objet <em>route</em>, nos annonces auraient pu être rejetées et nous aurions pu être considérés comme des acteurs malveillants réalisant un détournement BGP (<em>BGP hijack</em>).</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Annonce via notre fournisseur historique</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Une fois le second objet <em>route</em> propagé, nous avons réalisé la première étape dans la nuit du 16 janvier 2025 : nous avons commencé à annoncer nous-mêmes le préfixe via BGP à notre fournisseur historique.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Le trafic continuait d’emprunter le même chemin de transit, mais cette fois avec Clever Cloud (AS213394) comme origine des annonces, au lieu de notre fournisseur historique. Ce dernier continuait à relayer le préfixe, mais le recevait désormais de notre part au lieu de l’annoncer directement.</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);border-left:4px solid #3b82f6;max-width:900px;width:100%;">Clever Cloud Services (AS213394)
   |
   | originates: 91.208.207.0/24 (origin AS213394)
   v
Historical Provider (AS43424)
   |
   | re-announces: 91.208.207.0/24 (origin AS213394)
   v
Internet</pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Cette première phase a servi de validation : en cas de problème, nous pouvions revenir rapidement en arrière sans impacter les autres chemins de transit.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Annonce via nos propres transits</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Quelques jours plus tard, dans la nuit du 21 janvier 2025, nous avons franchi l’étape finale : nous avons commencé à annoncer le préfixe via nos propres connexions de transit dédiées.</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);border-left:4px solid #3b82f6;max-width:900px;width:100%;">Clever Cloud Services (AS213394)
   |
   | originates: 91.208.207.0/24 (origin AS213394)
   |
   +---+---+---+
   |   |   |   |
   v   v   v   v
  T1  T2  T3  HP
(Transit providers + historical provider)
   |   |   |   |
   +---+---+---+
   |
   v
Internet</pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Nous annonçons désormais nos préfixes directement à quatre fournisseurs upstream (trois fournisseurs de transit, T1/T2/T3, ainsi que notre fournisseur historique HP). Le trafic circule à travers l’ensemble de ces chemins, et nous disposons d’un contrôle complet sur les décisions de routage ainsi que sur la redondance.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Tout au long de ces deux phases, nous n’avons observé aucune interruption ayant un impact pour les utilisateurs. La redondance intrinsèque du protocole BGP, combinée à la nature progressive de la transition, a permis d’assurer un écoulement du trafic sans interruption, quel que soit le chemin privilégié à un instant donné.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Visibilité complète du routage Internet</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Dans le cadre de la phase 2, nos trois principaux fournisseurs de transit ont commencé à nous fournir une « full view » de la table de routage Internet. Il s’agit de l’ensemble complet des préfixes IPv4 et IPv6 publiquement annoncés — soit environ 1 million de routes IPv4 et 220 000 routes IPv6.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Disposer d’une full view nous offre une visibilité inédite sur la structure d’Internet et nous permet de prendre des décisions de routage avancées. Au lieu de dépendre de la vision d’un seul fournisseur, nous avons désormais accès à l’ensemble des chemins disponibles pour atteindre n’importe quelle destination.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Avec ces informations, nous sommes en mesure de choisir les chemins optimaux pour notre trafic sortant en fonction de notre topologie réseau et de nos préférences, de mettre en œuvre du <em>traffic engineering</em> pour diriger les flux via des fournisseurs de transit spécifiques, de réagir dynamiquement aux conditions réseau et à la congestion, et d’équilibrer la charge entre nos quatre connexions de transit en nous appuyant sur des données de routage en temps réel.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Ce niveau de contrôle fin sur notre politique de routage est une conséquence directe de l’exploitation de notre propre système autonome et de la gestion de nos propres annonces — exactement le niveau d’indépendance opérationnelle que nous recherchions au début de cette transition.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Un an plus tard</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Près d’un an après le début de l’exploitation de nos propres annonces réseau, la transition s’est révélée concluante. Nous n’avons rencontré aucun incident majeur et notre infrastructure a démontré sa résilience. Lorsque des incidents mineurs se sont produits — comme des pertes de paquets sur un fournisseur de transit spécifique ou la perte temporaire d’un lien — le trafic s’est automatiquement rééquilibré sur les connexions restantes.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Nous avons pu détecter et corriger ces problèmes directement, sans dépendre d’un fournisseur tiers. Nos utilisateurs n’ont subi aucune interruption ayant un impact. Cette capacité à assumer la responsabilité de notre réseau et à résoudre rapidement les problèmes est sans doute le principal bénéfice de cette transition.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Et ensuite</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Cette transition est loin d’être terminée. Plusieurs évolutions sont prévues :</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>augmentation de la capacité réseau</strong> pour absorber la croissance du trafic</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>mise en place de <strong>peering BGP</strong> avec d’autres réseaux pour optimiser le trafic local sans recourir au transit</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>déploiement de <strong>ROA (Route Origin Authorization)</strong> pour signer cryptographiquement nos annonces et prévenir les détournements de préfixes</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>validation <strong>RPKI (Resource Public Key Infrastructure)</strong> pour vérifier la légitimité des annonces reçues et renforcer la sécurité du routage</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>extension d’IPv6</strong>, en entrée (réception de trafic IPv6) comme en sortie (émission de trafic IPv6), déployée progressivement</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Conclusion</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Début 2025, Clever Cloud a finalisé sa transition vers une exploitation entièrement autonome de son réseau. Nous annonçons désormais nos propres préfixes IP via quatre fournisseurs upstream, ce qui nous donne un contrôle complet sur la manière dont le trafic entre et sort de notre infrastructure.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Pour nos utilisateurs, cela se traduit par une meilleure fiabilité et des temps de résolution plus courts dans notre région Paris. Lorsqu’un incident réseau survient, nous le traitons directement, et notre redondance multi-fournisseurs garantit la continuité du trafic.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Cette étape marque le début d’une nouvelle phase. Nous travaillons déjà sur le peering BGP pour optimiser le trafic local, sur le déploiement de ROA et la validation RPKI pour renforcer la sécurité du routage, ainsi que sur l’extension d’IPv6 pour généraliser le dual-stack. Nous construisons un réseau aussi robuste et autonome que le reste de notre infrastructure.</p>
<!-- /wp:paragraph -->]]></description>
										<content:encoded><![CDATA[<p><img width="2499" height="1109" src="https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="2026 03 17 clever cloud banniere blog clever cloud controle lannonce de ses prefixes ip fr 1" decoding="async" srcset="https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1.png 2499w, https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1-1024x454.png 1024w, https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1-768x341.png 768w, https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1-1536x682.png 1536w, https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1-2048x909.png 2048w, https://cdn.clever-cloud.com/uploads/2026/03/2026-03-17-clever-cloud-banniere-blog-clever-cloud-controle-lannonce-de-ses-prefixes-ip-fr-1-1368x607.png 1368w" sizes="(max-width: 2499px) 100vw, 2499px" /></p><!-- wp:paragraph -->
<p>Cela représente une étape importante, issue de trois années de préparation, et s’inscrit dans une stratégie plus large visant à conserver un contrôle complet sur l’infrastructure réseau de notre région Paris.<br></p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Pourquoi ce changement</h2>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="max-width:780px;margin:1.5rem auto;background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;font-size:15px;line-height:1.7;box-shadow:0 1px 2px rgba(0,0,0,0.08);border:1px solid rgba(255,255,255,0.08);">
  <strong style="color:#e5eefc;">Note :</strong> Clever Cloud opère plusieurs régions dans le monde. Paris est notre région principale — la plus importante — où nous contrôlons l’ensemble de la stack : notre propre matériel, notre propre réseau, et désormais l’annonce de nos préfixes IP. Les autres régions (hébergées chez OVH, Scaleway, Cloud Temple, Ionos, Oracle) reposent sur l’infrastructure du fournisseur sous-jacent, y compris son réseau. Les changements décrits dans cet article concernent spécifiquement notre région Paris.
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Aux débuts de Clever Cloud, nous avons délégué la gestion du réseau à des partenaires. Ce choix était logique : il nous permettait d’accélérer le développement, de nous concentrer sur les services cloud, et d’éviter d’investir immédiatement dans une expertise que nous ne maîtrisions pas encore.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Mais à mesure que notre infrastructure a grandi, les limites de cette dépendance sont devenues évidentes. Nous n’avions aucun contrôle sur des décisions stratégiques : la manière dont le trafic était routé sur Internet, les chemins empruntés par nos paquets, ou la rapidité avec laquelle nous pouvions réagir aux incidents. Chaque modification, chaque incident nécessitait l’intervention d’un tiers.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Nous avons donc décidé de reprendre cette responsabilité. Cela nous a permis d’obtenir plusieurs avantages concrets. Nous optimisons les coûts grâce à la gestion directe de nos relations de transit et de peering. Nous définissons notre propre politique de routage au lieu de subir les contraintes d’un intermédiaire. Nous résolvons les incidents nous-mêmes, sans dépendre de fournisseurs externes. Et nous obtenons un contrôle complet de notre stack réseau — dans la continuité du contrôle que nous avons progressivement acquis sur nos serveurs et nos datacenters au cours des dernières années.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Mais cette transition ne concerne pas uniquement notre indépendance opérationnelle. Elle apporte des bénéfices immédiats et concrets pour nos utilisateurs. Le plus important est la résilience. Auparavant, l’ensemble du trafic passait par un seul fournisseur. Tout incident de leur côté impactait l’ensemble des services. Nous disposons désormais de quatre fournisseurs upstream répartis sur trois datacenters en région parisienne. Lorsqu’un lien tombe — ce qui s’est produit au cours de l’année passée — le trafic bascule automatiquement vers les alternatives disponibles, sans interruption pour les utilisateurs. Nous pouvons même absorber la perte simultanée de plusieurs liens de transit.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Au-delà de la redondance, nous gagnons le contrôle du routage lui-même. Nous décidons désormais comment le trafic atteint sa destination. Cela nous permet d’optimiser les chemins pour réduire la latence et améliorer les performances, et d’ajuster ces décisions en fonction des besoins spécifiques et de la topologie réseau. Nous réagissons en temps réel à la congestion, aux variations du réseau et aux contraintes opérationnelles.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Enfin, la responsabilité opérationnelle change. Les incidents réseau ne nécessitent plus d’attendre qu’un fournisseur externe les prenne en charge. Les défaillances du réseau public relèvent directement de notre responsabilité : nous les détectons, les analysons et les corrigeons. Cela réduit directement le temps entre l’apparition d’un problème et sa résolution, ce qui améliore la disponibilité et la fiabilité pour nos utilisateurs.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Exploiter son propre réseau sur Internet</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Pour opérer un réseau indépendant sur Internet, une organisation doit travailler avec un registre Internet régional (RIR). Les RIR sont responsables de l’attribution et de la gestion des adresses IP et des numéros d’AS dans des zones géographiques spécifiques.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Il existe cinq RIR dans le monde :</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>RIPE NCC</strong> — Europe, Asie centrale et Moyen-Orient</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>ARIN</strong> — Amérique du Nord (États-Unis, Canada, Caraïbes)</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>LACNIC</strong> — Amérique latine et Caraïbes</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>APNIC</strong> — région Asie-Pacifique</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>AFRINIC</strong> — Afrique</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Pour Clever Cloud, dont l’infrastructure est principalement en Europe, nous travaillons avec le RIPE NCC (Réseaux IP Européens).</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Espace d’adressage alloué</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>En tant que membre d’un RIR, une organisation reçoit des allocations d’adresses IPv4 et IPv6. Pour les membres du RIPE NCC, cela correspond généralement à un bloc IPv4 en /24 (<a href="https://www.ripe.net/manage-ips-and-asns/ipv4/ipv4-waiting-list/">selon disponibilité</a>) et un bloc IPv6 en /29. Ces ressources sont associées à l’organisation et peuvent être utilisées pour opérer un réseau à l’échelle globale.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Création de notre système autonome</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Les bases de cette transition ont été posées plusieurs années auparavant. En 2019, nous avons créé notre compte RIPE NCC afin de devenir LIR (Local Internet Registry). Cela nous a permis d’obtenir un bloc IPv4 /24 (91.208.207.0/24) et un bloc IPv6 /29 (2a0f:d0c0::/29).</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Puis, en 2022, nous avons enregistré notre numéro de système autonome (ASN) auprès du registre régional. Notre numéro d’AS est <a href="https://apps.db.ripe.net/db-web-ui/lookup?source=ripe&amp;key=AS213394&amp;type=aut-num">AS213394</a>.</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);max-width:900px;width:100%;"><code style="background:transparent;color:inherit;padding:0;font-size:inherit;font-family:inherit;">&gt; whois AS213394

aut-num:        AS213394
as-name:        CleverCloud
org:            ORG-CCS42-RIPE
import:         from AS29075 accept ANY
import:         from AS3257 accept ANY
import:         from AS3356 accept ANY
import:         from AS43424 accept ANY
export:         to AS29075 announce AS213394:AS-CLVRCLD
export:         to AS3257 announce AS213394:AS-CLVRCLD
export:         to AS3356 announce AS213394:AS-CLVRCLD
export:         to AS43424 announce AS213394:AS-CLVRCLD
admin-c:        QA171-RIPE
tech-c:         QA171-RIPE
status:         ASSIGNED
mnt-by:         RIPE-NCC-END-MNT
mnt-by:         mnt-fr-clvrcldnet-1
created:        2022-11-28T08:24:23Z
last-modified:  2025-02-25T16:36:15Z
source:         RIPE</code></pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Un ASN (Autonomous System Number) est un identifiant unique attribué à un réseau sur Internet. Il est nécessaire pour annoncer des routes via BGP, le protocole qui permet le routage entre réseaux.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Maintenant que nous disposons d’un ASN, nous pouvons annoncer nos préfixes aux autres réseaux via le protocole BGP.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Le rôle de la base de données RIPE</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Le RIPE NCC maintient une base de données publique d’objets de routage (comme l’objet <em>aut-num</em> présenté précédemment). Parmi ces objets figurent les objets de type <em>route</em>, qui indiquent quel système autonome (AS) est autorisé à annoncer un préfixe IP donné.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>En pratique, ces entrées sont principalement utilisées par les opérateurs réseau et les fournisseurs de transit pour construire leurs politiques de routage et leurs mécanismes de filtrage (filtrage basé sur l’IRR). Ces filtres permettent d’accepter ou de rejeter les annonces reçues de leurs pairs. Il s’agit d’un des mécanismes utilisés pour tenter de prévenir les détournements BGP (<em>BGP hijacks</em>).</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>En appliquant ces filtres aux routes reçues de leurs pairs, les opérateurs peuvent limiter la propagation d’un préfixe annoncé par un ASN non autorisé.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Prenons un exemple : imaginons que l’organisation A possède le préfixe 192.0.2.0/24 et l’annonce à un fournisseur de transit X. Le fournisseur X applique un filtre sur les routes reçues de l’organisation A afin de n’accepter que les préfixes IP enregistrés dans la base RIR de cette organisation.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Dans ce cas, si l’organisation A commence à annoncer un préfixe qui ne lui appartient pas (par exemple notre préfixe public 91.208.207.0/24), le fournisseur X est censé rejeter cette annonce. Cela permet d’éviter qu’une route incorrecte soit propagée sur Internet et que le trafic soit redirigé vers une entité non légitime.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Le protocole BGP : comment Internet route le trafic</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Pour comprendre comment nous annonçons nos préfixes sur Internet, il est essentiel de comprendre BGP — le <em>Border Gateway Protocol</em>. BGP est le protocole de routage de référence sur Internet. Il permet aux réseaux (systèmes autonomes) d’échanger des informations sur les préfixes IP qu’ils possèdent et sur la manière de les atteindre.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>BGP fonctionne dans les deux sens. Lorsque nous annonçons à nos pairs et à nos fournisseurs de transit « nous possédons 91.208.207.0/24 », cette annonce se propage sur Internet de réseau en réseau. Chaque réseau qui relaie cette annonce ajoute son propre numéro d’AS dans le <em>AS_PATH</em> — une liste qui représente la séquence de réseaux qu’un paquet doit traverser pour nous atteindre.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Par exemple, OVHcloud (AS16276) voit le chemin [AS29075, AS213394] : le trafic passe par l’un de nos fournisseurs de transit (AS29075), puis arrive jusqu’à nous (AS213394). Chaque réseau qui relaie l’annonce la met à jour de cette manière, construisant progressivement un chemin complet.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Voici un exemple obtenu via le <a href="https://lg.ovh.net/prefix_detail/lil1/ipv4?q=91.208.207.0/24">service Looking Glass d’OVHcloud</a> :</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);max-width:900px;width:100%;"><code style="background:transparent;color:inherit;padding:0;font-size:inherit;font-family:inherit;">&gt; show route for 91.208.207.0/24 all

91.208.207.0/24    via 172.18.16.0 on eno1 [lil1_rbx1_bagg1_8k 2025-12-25] * (100/0) [AS213394i]
    Type: BGP unicast univ
    BGP.origin: IGP
    BGP.as_path: 29075 213394
    BGP.next_hop: 172.18.16.0
    BGP.med: 161
    BGP.local_pref: 40
    BGP.community: (0,0) (29075,18000) (65535,65281)
    BGP.23 [t]: 00 00 b8 6e
                   via 172.18.16.64 on eno1 [lil1_rbx8_bagg1_8k 2025-12-25] (100/0) [AS213394i]</code></pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Dans le même temps, nous recevons des annonces provenant d’autres réseaux concernant leurs propres préfixes et les chemins permettant de les atteindre. Cela construit la vue inverse : lorsque nous devons envoyer du trafic sortant, nous savons quel chemin emprunter pour atteindre une destination donnée.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Voici un exemple avec un préfixe d’OVHcloud :</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);max-width:900px;width:100%;"><code style="background:transparent;color:inherit;padding:0;font-size:inherit;font-family:inherit;">&gt; /routing/route/print detail where dst-address=5.39.0.0/17 and active

Ab   afi=ip4 contribution=active dst-address=5.39.0.0/17 routing-table=main pref-src=185.133.116.2 gateway=213.242.111.201 immediate-gw=213.242.111.201%sfp28-6 distance=20 scope=40 target-scope=10 belongs-to="bgp-IP-213.242.111.201"

      bgp.as-path="3356,16276" bgp.communities=3356:2,3356:2066,3356:22,16276:40001,3356:100,65002:7018,3356:123,3356:901,65002:701,65000:64990,65000:64995,65000:64996,3356:502 .med=0 .atomic-aggregate=no .origin=igp</code></pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Dans cet exemple, le chemin réseau utilisé par OVHcloud pour nous atteindre est différent de celui que nous utilisons pour les atteindre.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Le processus de migration</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>os préfixes IP étaient entièrement gérés par notre fournisseur historique. Bien que nous en soyons propriétaires, nous lui avions délégué leur annonce sur Internet.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Cela impliquait que son ASN (AS43424) apparaissait comme origine dans les tables de routage, et que l’ensemble du trafic transitait par son infrastructure.</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);border-left:4px solid #3b82f6;max-width:900px;width:100%;">Clever Cloud Services
   |
   | all inbound/outbound traffic
   v
Historical Provider (AS43424)
   |
   | originates: 91.208.207.0/24 (origin AS43424)
   v
Internet</pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Nous voulions que notre ASN devienne l’origine des annonces. Pour cela, nous avons planifié une migration en trois étapes, sans interruption pour les utilisateurs.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Migration d’un préfixe entre AS</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Pour migrer un préfixe d’un AS vers un autre, nous devions modifier son objet <em>route</em> dans la base de données RIPE. La procédure était relativement simple, mais nécessitait un timing précis.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Nous avons d’abord créé un second objet <em>route</em> dans la base RIPE pour notre préfixe 91.208.207.0/24. Désormais, les deux ASN étaient enregistrés comme autorisés à annoncer ce même préfixe — à la fois l’AS de notre fournisseur historique et notre propre AS (213394).</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Ces objets de routage sont interrogeables publiquement via la commande <em>whois</em> ou via l’interface web du RIPE. Par exemple, la commande suivante permet d’obtenir les deux objets enregistrés :</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);max-width:900px;width:100%;"><code style="background:transparent;color:inherit;padding:0;font-size:inherit;font-family:inherit;">❯ whois -h whois.ripe.net -T route 91.208.207.0/24
% Information related to '91.208.207.0/24AS213394'

route:          91.208.207.0/24
mnt-by:         mnt-fr-clvrcldnet-1
descr:          CleverCloud subnet
origin:         AS213394
created:        2025-01-15T10:29:14Z
last-modified:  2025-01-15T10:29:14Z
source:         RIPE

% Information related to '91.208.207.0/24AS43424'

route:          91.208.207.0/24
mnt-by:         mnt-fr-clvrcldnet-1
mnt-by:         MAGICRETAIL-MNT
descr:          CleverCloud subnet
origin:         AS43424
created:        2020-02-13T09:06:33Z
last-modified:  2020-02-13T09:06:48Z
source:         RIPE</code></pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Une fois ce second objet <em>route</em> enregistré et propagé sur Internet (c’est-à-dire une fois que les opérateurs réseau ont récupéré une version à jour de la base RIPE pour construire leurs filtres de routage), nos nouveaux fournisseurs de transit pouvaient constater que notre ASN était autorisé à annoncer ce préfixe. À partir de ce moment-là, nous pouvions commencer à annoncer ce préfixe via notre propre infrastructure.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Si nous n’avions pas créé cet objet <em>route</em>, nos annonces auraient pu être rejetées et nous aurions pu être considérés comme des acteurs malveillants réalisant un détournement BGP (<em>BGP hijack</em>).</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Annonce via notre fournisseur historique</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Une fois le second objet <em>route</em> propagé, nous avons réalisé la première étape dans la nuit du 16 janvier 2025 : nous avons commencé à annoncer nous-mêmes le préfixe via BGP à notre fournisseur historique.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Le trafic continuait d’emprunter le même chemin de transit, mais cette fois avec Clever Cloud (AS213394) comme origine des annonces, au lieu de notre fournisseur historique. Ce dernier continuait à relayer le préfixe, mais le recevait désormais de notre part au lieu de l’annoncer directement.</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);border-left:4px solid #3b82f6;max-width:900px;width:100%;">Clever Cloud Services (AS213394)
   |
   | originates: 91.208.207.0/24 (origin AS213394)
   v
Historical Provider (AS43424)
   |
   | re-announces: 91.208.207.0/24 (origin AS213394)
   v
Internet</pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Cette première phase a servi de validation : en cas de problème, nous pouvions revenir rapidement en arrière sans impacter les autres chemins de transit.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Annonce via nos propres transits</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Quelques jours plus tard, dans la nuit du 21 janvier 2025, nous avons franchi l’étape finale : nous avons commencé à annoncer le préfixe via nos propres connexions de transit dédiées.</p>
<!-- /wp:paragraph -->

<!-- wp:html -->
<div style="display:flex;justify-content:center;">
<pre style="background:#0f172a;color:#e5eefc;border-radius:12px;padding:16px 20px;overflow-x:auto;white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:14px;line-height:1.6;margin:1.5rem 0;box-shadow:0 1px 2px rgba(0,0,0,0.08);border-left:4px solid #3b82f6;max-width:900px;width:100%;">Clever Cloud Services (AS213394)
   |
   | originates: 91.208.207.0/24 (origin AS213394)
   |
   +---+---+---+
   |   |   |   |
   v   v   v   v
  T1  T2  T3  HP
(Transit providers + historical provider)
   |   |   |   |
   +---+---+---+
   |
   v
Internet</pre>
</div>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p>Nous annonçons désormais nos préfixes directement à quatre fournisseurs upstream (trois fournisseurs de transit, T1/T2/T3, ainsi que notre fournisseur historique HP). Le trafic circule à travers l’ensemble de ces chemins, et nous disposons d’un contrôle complet sur les décisions de routage ainsi que sur la redondance.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Tout au long de ces deux phases, nous n’avons observé aucune interruption ayant un impact pour les utilisateurs. La redondance intrinsèque du protocole BGP, combinée à la nature progressive de la transition, a permis d’assurer un écoulement du trafic sans interruption, quel que soit le chemin privilégié à un instant donné.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Visibilité complète du routage Internet</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Dans le cadre de la phase 2, nos trois principaux fournisseurs de transit ont commencé à nous fournir une « full view » de la table de routage Internet. Il s’agit de l’ensemble complet des préfixes IPv4 et IPv6 publiquement annoncés — soit environ 1 million de routes IPv4 et 220 000 routes IPv6.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Disposer d’une full view nous offre une visibilité inédite sur la structure d’Internet et nous permet de prendre des décisions de routage avancées. Au lieu de dépendre de la vision d’un seul fournisseur, nous avons désormais accès à l’ensemble des chemins disponibles pour atteindre n’importe quelle destination.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Avec ces informations, nous sommes en mesure de choisir les chemins optimaux pour notre trafic sortant en fonction de notre topologie réseau et de nos préférences, de mettre en œuvre du <em>traffic engineering</em> pour diriger les flux via des fournisseurs de transit spécifiques, de réagir dynamiquement aux conditions réseau et à la congestion, et d’équilibrer la charge entre nos quatre connexions de transit en nous appuyant sur des données de routage en temps réel.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Ce niveau de contrôle fin sur notre politique de routage est une conséquence directe de l’exploitation de notre propre système autonome et de la gestion de nos propres annonces — exactement le niveau d’indépendance opérationnelle que nous recherchions au début de cette transition.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Un an plus tard</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Près d’un an après le début de l’exploitation de nos propres annonces réseau, la transition s’est révélée concluante. Nous n’avons rencontré aucun incident majeur et notre infrastructure a démontré sa résilience. Lorsque des incidents mineurs se sont produits — comme des pertes de paquets sur un fournisseur de transit spécifique ou la perte temporaire d’un lien — le trafic s’est automatiquement rééquilibré sur les connexions restantes.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Nous avons pu détecter et corriger ces problèmes directement, sans dépendre d’un fournisseur tiers. Nos utilisateurs n’ont subi aucune interruption ayant un impact. Cette capacité à assumer la responsabilité de notre réseau et à résoudre rapidement les problèmes est sans doute le principal bénéfice de cette transition.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Et ensuite</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Cette transition est loin d’être terminée. Plusieurs évolutions sont prévues :</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>augmentation de la capacité réseau</strong> pour absorber la croissance du trafic</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>mise en place de <strong>peering BGP</strong> avec d’autres réseaux pour optimiser le trafic local sans recourir au transit</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>déploiement de <strong>ROA (Route Origin Authorization)</strong> pour signer cryptographiquement nos annonces et prévenir les détournements de préfixes</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>validation <strong>RPKI (Resource Public Key Infrastructure)</strong> pour vérifier la légitimité des annonces reçues et renforcer la sécurité du routage</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>extension d’IPv6</strong>, en entrée (réception de trafic IPv6) comme en sortie (émission de trafic IPv6), déployée progressivement</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Conclusion</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Début 2025, Clever Cloud a finalisé sa transition vers une exploitation entièrement autonome de son réseau. Nous annonçons désormais nos propres préfixes IP via quatre fournisseurs upstream, ce qui nous donne un contrôle complet sur la manière dont le trafic entre et sort de notre infrastructure.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Pour nos utilisateurs, cela se traduit par une meilleure fiabilité et des temps de résolution plus courts dans notre région Paris. Lorsqu’un incident réseau survient, nous le traitons directement, et notre redondance multi-fournisseurs garantit la continuité du trafic.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Cette étape marque le début d’une nouvelle phase. Nous travaillons déjà sur le peering BGP pour optimiser le trafic local, sur le déploiement de ROA et la validation RPKI pour renforcer la sécurité du routage, ainsi que sur l’extension d’IPv6 pour généraliser le dual-stack. Nous construisons un réseau aussi robuste et autonome que le reste de notre infrastructure.</p>
<!-- /wp:paragraph -->]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Jenkins disponible sur Clever Cloud</title>
		<link>https://www.clever.cloud/fr/blog/fonctionnalites/2021/10/26/jenkins-disponible-sur-clever-cloud/</link>
		
		<dc:creator><![CDATA[Arnaud Lefebvre]]></dc:creator>
		<pubDate>Tue, 26 Oct 2021 08:52:59 +0000</pubDate>
				<category><![CDATA[Fonctionnalités]]></category>
		<category><![CDATA[deployment]]></category>
		<category><![CDATA[Engineering]]></category>
		<category><![CDATA[fonctionnalité]]></category>
		<category><![CDATA[jenkins]]></category>
		<guid isPermaLink="false">https://www.clever-cloud.com/blog/non-classifiee/2021/10/26/jenkins-disponible-sur-clever-cloud/</guid>

					<description><![CDATA[<p><img width="1400" height="540" src="https://cdn.clever-cloud.com/uploads/2021/10/jenkins.jpg" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="jenkins" decoding="async" srcset="https://cdn.clever-cloud.com/uploads/2021/10/jenkins.jpg 1400w, https://cdn.clever-cloud.com/uploads/2021/10/jenkins-300x116.jpg 300w, https://cdn.clever-cloud.com/uploads/2021/10/jenkins-1024x395.jpg 1024w, https://cdn.clever-cloud.com/uploads/2021/10/jenkins-768x296.jpg 768w, https://cdn.clever-cloud.com/uploads/2021/10/jenkins-1368x528.jpg 1368w" sizes="(max-width: 1400px) 100vw, 1400px" /></p>Aujourd'hui, nous sommes heureux d'annoncer la sortie de notre add-on Jenkins avec une intégration parfaite avec Clever Cloud !

Jenkins est un serveur d'automatisation open source qui permet aux développeurs de construire, tester et déployer leurs logiciels.<span id="more-3866"></span> Il facilite l'intégration continue (CI) et la livraison continue (CD), est hautement configurable et bénéficie d'une énorme communauté ainsi que de nombreuses ressources en ligne.
<figure id="attachment_3691"><img title="Jenkins Dashboard on Clever Cloud" src="https://cdn.clever-cloud.com/uploads/2021/10/Screenshot-2021-09-30-at-19-37-38-Console-Clever-Cloud-1.png" alt="Jenkins Dashboard on Clever Cloud" />
<figcaption id="caption-attachment-3691" class="wp-caption-text">Jenkins Dashboard on Clever Cloud</figcaption></figure>
<h3>Clever Cloud pour exécuter vos tâches</h3>
Vous pouvez personnaliser votre Jenkins grâce au grand nombre de plugins Jenkins disponibles : il donc possible d'installer et mettre à jour tous les plugins dont vous avez besoin pour personnaliser vos tâches. Nous fournissons également notre propre plugin personnalisé pour gérer les runners qui exécuteront ces tâches. Cela signifie que les jobs ne seront pas exécutées sur l'instance du contrôleur Jenkins mais dans des machines virtuelles dédiées déployées sur l'infrastructure Clever Cloud. Cela vous permet de configurer l'image Docker à utiliser avec tous les outils dont vous avez besoin, et la taille de la machine virtuelle qui conviendrait à vos tâches. La taille minimale est <strong>XS (1 vCPU, 2 GiB RAM)</strong> et le maximum est un <strong>3XL (16 vCPU, 32 GiB RAM).</strong> Si vous avez besoin de tailles de runner plus importantes pour vos travaux, n'hésitez pas nous en faire part!

Il n'y a aucune limite au nombre de tâches que vous pouvez exécuter, que ce soit en parallèle ou au total, vous pouvez lancer autant de tâches que vous le souhaitez. Chaque tâche ne sera facturée que pour le temps qu'elle a réellement pris, à la seconde près.
<h3>Améliorer votre workflow de déploiements sur Clever Cloud</h3>
Les modules complémentaires Jenkins de Clever Cloud peuvent améliorer votre flux de travail de déploiement sur Clever Cloud. Par exemple, si vous souhaitez déployer automatiquement votre projet une fois que tous les tests sont réussis, vous pouvez configurer votre tâche pour installer notre <a href="https://www.clever.cloud/developers/reference/clever-tools/getting_started/">CLI clever-tools</a>, puis pousser votre code vers votre application Clever Cloud.

Voici un exemple de Jenkinsfile sur la façon dont vous pourriez réaliser ceci. Il utilise plusieurs étapes pour installer clever-tools et lancer le déploiement de votre application par défaut. Clever-tools va automatiquement récupérer les secrets dans les variables d'environnement définies dans <code>CLEVER_TOKEN</code> et <code>CLEVER_SECRET</code> pour être authentifié. Vous devrez créer deux identifiants Jenkins avec des tokens réels. Les tokens peuvent être facilement récupérés sur votre machine locale en regardant dans <code>~/.config/clever-cloud</code> sur Linux et Mac OSX et <code>%APPDATA%/clever-cloud</code> sur Windows.
<pre><code class="language-java">pipeline {
  environment {
    CLEVER_TOKEN = credentials('CLEVER_TOKEN')
    CLEVER_SECRET = credentials('CLEVER_SECRET')
  }

  stage('clever-tools') {
      steps {
        script {
          sh 'npm install -g clever-tools'
       }
     }
  }

  stage('tests') {
    // Your tests steps
  }

  stage('deployment') {
    steps {
      script {
        // Deploy the application
        // A .clever.json file must exists in the repository
        sh 'clever deploy'
      }
    }
  }
}</code></pre>
Vous pouvez également utiliser les variables d'environnement propres à Jenkins pour personnaliser votre build. Vous pouvez obtenir une liste de ces variables en ajoutant <code>/env-vars.html</code> à la fin de l'URL de votre add-on. En les utilisant, vous pourriez décider de déployer sur votre application de mise en scène ou de production en fonction du nom de la branche.
<h3>Conçu avec les fonctionnalités classiques que vous aimez</h3>
Comme tous les autres produits que nous publions, les modules complémentaires de Jenkins disposent de <strong>sauvegardes automatiques</strong>, de <strong>métriques</strong>, de <strong>logs</strong> et de <strong>cryptage au repos</strong>. Vous pourrez également utiliser Clever Cloud <strong>Single Sign-On</strong> pour vous connecter à votre add-on Jenkins, ce qui signifie que chaque membre de l'organisation peut accéder à l'instance Jenkins sous son propre compte.

Vous trouverez plus d'informations sur la façon de configurer Jenkins <a href="https://www.clever.cloud/developers/doc/addons/jenkins/">dans notre documentation</a>.
<h3>Tarification</h3>
<script type="module" src="https://components.clever-cloud.com/load.js?version=7&amp;lang=en&amp;components=cc-pricing-product.smart-addon,cc-pricing-product.smart-runtime"></script>
Vous trouverez ci-dessous les prix des <strong>Jenkins</strong> et des <strong>Jenkins Runners</strong>. La <a href="https://www.clever.cloud/fr/tarification/#https://www.clever.cloud/pricing">page de tarification</a> est là pour vous aider à estimer différentes configurations.
<div>Jenkins est le service géré sur lequel vous allez configurer vos travaux.
<div></div>
</div>
<div>Les instances qui exécutent vos tâches, appelées "Jenkins runners", sont facturées à la seconde ::
<div></div>
</div>
<h3 id="whats-next">Quoi de neuf ?</h3>
Nous prévoyons de fournir une intégration encore meilleure avec Jenkins. Nos prochains objectifs sont d'ajouter des politiques de rétention de plusieurs runners (avoir des tâches successives sur un même runner par exemple) en plus d'améliorer le temps de démarrage des runners. Nous allons également ouvrir notre plugin Jenkins et le mettre en amont du dépôt de plugins Jenkins. De cette façon, nous apporterons la possibilité de démarrer vos propres runners Clever Cloud Jenkins à partir de votre instance Jenkins auto-hébergée.]]></description>
										<content:encoded><![CDATA[<p><img width="1400" height="540" src="https://cdn.clever-cloud.com/uploads/2021/10/jenkins.jpg" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="jenkins" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2021/10/jenkins.jpg 1400w, https://cdn.clever-cloud.com/uploads/2021/10/jenkins-300x116.jpg 300w, https://cdn.clever-cloud.com/uploads/2021/10/jenkins-1024x395.jpg 1024w, https://cdn.clever-cloud.com/uploads/2021/10/jenkins-768x296.jpg 768w, https://cdn.clever-cloud.com/uploads/2021/10/jenkins-1368x528.jpg 1368w" sizes="auto, (max-width: 1400px) 100vw, 1400px" /></p>Aujourd'hui, nous sommes heureux d'annoncer la sortie de notre add-on Jenkins avec une intégration parfaite avec Clever Cloud !

Jenkins est un serveur d'automatisation open source qui permet aux développeurs de construire, tester et déployer leurs logiciels.<span id="more-3866"></span> Il facilite l'intégration continue (CI) et la livraison continue (CD), est hautement configurable et bénéficie d'une énorme communauté ainsi que de nombreuses ressources en ligne.
<figure id="attachment_3691"><img title="Jenkins Dashboard on Clever Cloud" src="https://cdn.clever-cloud.com/uploads/2021/10/Screenshot-2021-09-30-at-19-37-38-Console-Clever-Cloud-1.png" alt="Jenkins Dashboard on Clever Cloud" />
<figcaption id="caption-attachment-3691" class="wp-caption-text">Jenkins Dashboard on Clever Cloud</figcaption></figure>
<h3>Clever Cloud pour exécuter vos tâches</h3>
Vous pouvez personnaliser votre Jenkins grâce au grand nombre de plugins Jenkins disponibles : il donc possible d'installer et mettre à jour tous les plugins dont vous avez besoin pour personnaliser vos tâches. Nous fournissons également notre propre plugin personnalisé pour gérer les runners qui exécuteront ces tâches. Cela signifie que les jobs ne seront pas exécutées sur l'instance du contrôleur Jenkins mais dans des machines virtuelles dédiées déployées sur l'infrastructure Clever Cloud. Cela vous permet de configurer l'image Docker à utiliser avec tous les outils dont vous avez besoin, et la taille de la machine virtuelle qui conviendrait à vos tâches. La taille minimale est <strong>XS (1 vCPU, 2 GiB RAM)</strong> et le maximum est un <strong>3XL (16 vCPU, 32 GiB RAM).</strong> Si vous avez besoin de tailles de runner plus importantes pour vos travaux, n'hésitez pas nous en faire part!

Il n'y a aucune limite au nombre de tâches que vous pouvez exécuter, que ce soit en parallèle ou au total, vous pouvez lancer autant de tâches que vous le souhaitez. Chaque tâche ne sera facturée que pour le temps qu'elle a réellement pris, à la seconde près.
<h3>Améliorer votre workflow de déploiements sur Clever Cloud</h3>
Les modules complémentaires Jenkins de Clever Cloud peuvent améliorer votre flux de travail de déploiement sur Clever Cloud. Par exemple, si vous souhaitez déployer automatiquement votre projet une fois que tous les tests sont réussis, vous pouvez configurer votre tâche pour installer notre <a href="https://www.clever.cloud/developers/reference/clever-tools/getting_started/">CLI clever-tools</a>, puis pousser votre code vers votre application Clever Cloud.

Voici un exemple de Jenkinsfile sur la façon dont vous pourriez réaliser ceci. Il utilise plusieurs étapes pour installer clever-tools et lancer le déploiement de votre application par défaut. Clever-tools va automatiquement récupérer les secrets dans les variables d'environnement définies dans <code>CLEVER_TOKEN</code> et <code>CLEVER_SECRET</code> pour être authentifié. Vous devrez créer deux identifiants Jenkins avec des tokens réels. Les tokens peuvent être facilement récupérés sur votre machine locale en regardant dans <code>~/.config/clever-cloud</code> sur Linux et Mac OSX et <code>%APPDATA%/clever-cloud</code> sur Windows.
<pre><code class="language-java">pipeline {
  environment {
    CLEVER_TOKEN = credentials('CLEVER_TOKEN')
    CLEVER_SECRET = credentials('CLEVER_SECRET')
  }

  stage('clever-tools') {
      steps {
        script {
          sh 'npm install -g clever-tools'
       }
     }
  }

  stage('tests') {
    // Your tests steps
  }

  stage('deployment') {
    steps {
      script {
        // Deploy the application
        // A .clever.json file must exists in the repository
        sh 'clever deploy'
      }
    }
  }
}</code></pre>
Vous pouvez également utiliser les variables d'environnement propres à Jenkins pour personnaliser votre build. Vous pouvez obtenir une liste de ces variables en ajoutant <code>/env-vars.html</code> à la fin de l'URL de votre add-on. En les utilisant, vous pourriez décider de déployer sur votre application de mise en scène ou de production en fonction du nom de la branche.
<h3>Conçu avec les fonctionnalités classiques que vous aimez</h3>
Comme tous les autres produits que nous publions, les modules complémentaires de Jenkins disposent de <strong>sauvegardes automatiques</strong>, de <strong>métriques</strong>, de <strong>logs</strong> et de <strong>cryptage au repos</strong>. Vous pourrez également utiliser Clever Cloud <strong>Single Sign-On</strong> pour vous connecter à votre add-on Jenkins, ce qui signifie que chaque membre de l'organisation peut accéder à l'instance Jenkins sous son propre compte.

Vous trouverez plus d'informations sur la façon de configurer Jenkins <a href="https://www.clever.cloud/developers/doc/addons/jenkins/">dans notre documentation</a>.
<h3>Tarification</h3>
<script type="module" src="https://components.clever-cloud.com/load.js?version=7&amp;lang=en&amp;components=cc-pricing-product.smart-addon,cc-pricing-product.smart-runtime"></script>
Vous trouverez ci-dessous les prix des <strong>Jenkins</strong> et des <strong>Jenkins Runners</strong>. La <a href="https://www.clever.cloud/fr/tarification/#https://www.clever.cloud/pricing">page de tarification</a> est là pour vous aider à estimer différentes configurations.
<div>Jenkins est le service géré sur lequel vous allez configurer vos travaux.
<div></div>
</div>
<div>Les instances qui exécutent vos tâches, appelées "Jenkins runners", sont facturées à la seconde ::
<div></div>
</div>
<h3 id="whats-next">Quoi de neuf ?</h3>
Nous prévoyons de fournir une intégration encore meilleure avec Jenkins. Nos prochains objectifs sont d'ajouter des politiques de rétention de plusieurs runners (avoir des tâches successives sur un même runner par exemple) en plus d'améliorer le temps de démarrage des runners. Nous allons également ouvrir notre plugin Jenkins et le mettre en amont du dépôt de plugins Jenkins. De cette façon, nous apporterons la possibilité de démarrer vos propres runners Clever Cloud Jenkins à partir de votre instance Jenkins auto-hébergée.]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
