<?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>Marjorie Darrigade, Author at Clever Cloud</title>
	<atom:link href="https://www.clever.cloud/blog/author/mdarrigade/feed/" rel="self" type="application/rss+xml" />
	<link></link>
	<description>From Code to Product</description>
	<lastBuildDate>Mon, 02 Nov 2026 15:26:30 +0000</lastBuildDate>
	<language>en-GB</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>Marjorie Darrigade, Author at Clever Cloud</title>
	<link></link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Configure SSO with Keycloak</title>
		<link>https://www.clever.cloud/blog/features/2026/10/28/configure-keycloak-sso/</link>
		
		<dc:creator><![CDATA[Marjorie Darrigade]]></dc:creator>
		<pubDate>Wed, 28 Oct 2026 15:17:41 +0000</pubDate>
				<category><![CDATA[Features]]></category>
		<category><![CDATA[IAM]]></category>
		<category><![CDATA[keycloak]]></category>
		<category><![CDATA[SSO]]></category>
		<guid isPermaLink="false">https://www.clever.cloud/?p=25919</guid>

					<description><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SSO keycloak EN" decoding="async" fetchpriority="high" srcset="https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en.png 800w, https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en-768x341.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>For a new integration, OpenID Connect is the preferred choice when the application supports it; SAML 2.0 remains suitable for existing software or products that only support that protocol. Next, configure the OIDC redirect URIs or SAML assertion consumer service endpoints, then connect the application to the realm’s endpoints.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>For IT departments, SSO addresses an everyday need: providing access to an entire application portfolio through a single login, with centralised security controls. Keycloak, an open-source identity and access management (IAM) solution, meets this need by centralising authentication.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Keycloak as a central identity provider</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Keycloak sits between applications and their users. Users authenticate with Keycloak and, while their SSO session remains valid, can access connected applications without re-entering their credentials. Each application trusts the authentication information provided by Keycloak to establish its own session. This is how an identity provider (IdP) works.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Centralising login offers a tangible security benefit: according to the <a href="https://www.enisa.europa.eu/">ENISA</a> Threat Landscape 2025 report, the annual report published by the European Union Agency for Cybersecurity, phishing accounts for approximately 60% of the initial intrusion methods observed in the incidents studied. With Keycloak, multifactor authentication (MFA) policies can be enforced at the shared login point for connected applications. However, not all forms of MFA provide the same protection against phishing: passkeys and WebAuthn are phishing-resistant by design because the authentication key is bound to the domain for which it was created.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Each application maintains its own session. In a full OIDC integration, the application checks the session status with Keycloak and can therefore respond when that session ends. Some applications, however, only verify the JWT’s signature and validity period locally. In this case, a token that is still valid may continue to be accepted after the Keycloak session has ended. This is JWT-based authentication rather than full OIDC session management.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Keycloak supports OpenID Connect (OIDC) and SAML 2.0. Modern applications and existing software can therefore share the same single sign-on within a single realm.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"40px"} -->
<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:acf/avantages {"name":"acf/avantages","data":{"title":"Key concepts to understand before configuration","_title":"field_63878c81ae569","content":"\u003cp data-pm-slice=\u00221 1 []\u0022\u003eThree core objects underpin every SSO configuration in Keycloak:\u003c/p\u003e","_content":"field_63878c9cae56a","main_picture":"","_main_picture":"field_63878cd5ae56b","advantages_collection_0_picto":"","_advantages_collection_0_picto":"field_6397417cac52f","advantages_collection_0_title":"The realm","_advantages_collection_0_title":"field_63878d1aae56d","advantages_collection_0_content":"An isolated administrative and security tenant. It contains users, their credentials, roles, groups, applications registered as clients, and authentication policies. Each realm manages its users and applications independently. A single dedicated realm is generally sufficient for one IT environment.","_advantages_collection_0_content":"field_63878d4dae56e","advantages_collection_0_link":"","_advantages_collection_0_link":"field_63878d66ae56f","advantages_collection_1_picto":"","_advantages_collection_1_picto":"field_6397417cac52f","advantages_collection_1_title":"The client","_advantages_collection_1_title":"field_63878d1aae56d","advantages_collection_1_content":"The representation, within the realm, of an application that delegates authentication to Keycloak. Each application you connect has its own client.","_advantages_collection_1_content":"field_63878d4dae56e","advantages_collection_1_link":"","_advantages_collection_1_link":"field_63878d66ae56f","advantages_collection_2_picto":"","_advantages_collection_2_picto":"field_6397417cac52f","advantages_collection_2_title":"The protocol","_advantages_collection_2_title":"field_63878d1aae56d","advantages_collection_2_content":"OpenID Connect or SAML 2.0, selected when creating the client. OIDC and SAML clients have different configurations, determined by their respective protocols. This choice cannot be changed later: switching protocols requires a new client.","_advantages_collection_2_content":"field_63878d4dae56e","advantages_collection_2_link":"","_advantages_collection_2_link":"field_63878d66ae56f","advantages_collection":3,"_advantages_collection":"field_63878cecae56c"},"mode":"auto"} /-->

<!-- wp:heading -->
<h2 class="wp-block-heading">Configure SSO with Keycloak, step by step</h2>
<!-- /wp:heading -->

<!-- wp:acf/arguments {"name":"acf/arguments","data":{"items_0_title":"Access the administration console","_items_0_title":"field_638a066e4d2ec","items_0_short_description":"In the Clever Cloud Console, open your service dashboard, then click \u003cb\u003eOpen Keycloak\u003c/b\u003e. The initial credentials are listed in the \u003cb\u003eAccess\u003c/b\u003e section. They are also available in the Java application through the CC_KEYCLOAK_ADMIN and CC_KEYCLOAK_ADMIN_DEFAULT_PASSWORD variables. When you first log in, Keycloak prompts you to replace the temporary password.","_items_0_short_description":"field_638a068d4d2ed","items_0_full_description":"","_items_0_full_description":"field_638a06af4d2ee","items_1_title":"Select or create a realm","_items_1_title":"field_638a066e4d2ec","items_1_short_description":"Always create a realm separate from master, either through the CC_KEYCLOAK_REALMS variable or in the administration interface. The master realm must remain an emergency administrative access point, also known as break-glass access, for use when a configuration error makes the application realm unavailable. Do not connect any business applications to it. Keep a single application realm for one IT environment: multiple realms are only justified when user populations are entirely independent and share no applications. Otherwise, each application has to integrate multiple SSO flows, adding unnecessary complexity.","_items_1_short_description":"field_638a068d4d2ed","items_1_full_description":"","_items_1_full_description":"field_638a06af4d2ee","items_2_title":"Register the application as a client","_items_2_title":"field_638a066e4d2ec","items_2_short_description":"Under \u003cb\u003eClients\u003c/b\u003e, Keycloak already lists several built-in clients used for administration and account management. Leave these unchanged. Click \u003cb\u003eCreate client\u003c/b\u003e to create a dedicated client for the application, then select OpenID Connect or SAML. The protocol is part of the client definition and cannot be changed later. If a SAML application provides metadata, you can also use \u003cb\u003eImport client\u003c/b\u003e.","_items_2_short_description":"field_638a068d4d2ed","items_2_full_description":"","_items_2_full_description":"field_638a06af4d2ee","items_3_title":"For an OpenID Connect application","_items_3_title":"field_638a066e4d2ec","items_3_short_description":"Configure its allowed redirect URIs precisely, along with its web origins if it communicates with Keycloak from the browser. Enable the Authorization Code flow using the Standard flow option. Enable Client authentication for a server-side application that can securely store a secret. For a mobile application or an application running entirely in the browser, leave this option disabled and require PKCE with the S256 method.","_items_3_short_description":"field_638a068d4d2ed","items_3_full_description":"","_items_3_full_description":"field_638a06af4d2ee","items_4_title":"For a SAML 2.0 application","_items_4_title":"field_638a066e4d2ec","items_4_short_description":"Preferably import the metadata provided by the service provider (SP). Then check that the Client ID matches its entity ID, and verify the Assertion Consumer Service (ACS) URL, signature settings, NameID format, and expected attributes. ","_items_4_short_description":"field_638a068d4d2ed","items_4_full_description":"Our article \u003ca href=\u0022https://www.clever.cloud/blog/features/2026/10/01/saml-2-0-what-is-the-protocol-used-for/\u0022\u003eWhat Is the SAML 2.0 Authentication Protocol Used For?\u003c/a\u003e explains how the protocol and metadata exchange work.","_items_4_full_description":"field_638a06af4d2ee","items_5_title":"Configure the application","_items_5_title":"field_638a066e4d2ec","items_5_short_description":"For OIDC, provide the client ID and, only if Client authentication is enabled, the client secret. Depending on the library used, provide either the realm URL, https://\u003ckeycloak-host\u003e/realms/\u003crealm\u003e, or its discovery URL: https://\u003ckeycloak-host\u003e/realms/\u003crealm\u003e/.well-known/openid-configuration. For SAML, import the Keycloak identity provider metadata from https://\u003ckeycloak-host\u003e/realms/\u003crealm\u003e/protocol/saml/descriptor. After authentication, the application validates the information it receives before establishing its own session.","_items_5_short_description":"field_638a068d4d2ed","items_5_full_description":"","_items_5_full_description":"field_638a06af4d2ee","items_6_title":"Test the complete login flow","_items_6_title":"field_638a066e4d2ec","items_6_short_description":"Log in with an authorised user and check the data passed to the application. If access restrictions have been configured, also verify that a user without the required permissions is denied access. To test SSO itself, then open a second application connected to the same realm: it should recognise the Keycloak session without prompting for credentials again. Finally, test logout to verify how it propagates across applications according to their configuration.","_items_6_short_description":"field_638a068d4d2ed","items_6_full_description":"","_items_6_full_description":"field_638a06af4d2ee","items":7,"_items":"field_638a065a4d2eb"},"mode":"preview"} /-->

<!-- wp:paragraph -->
<p>The <a href="https://www.clever.cloud/developers/doc/deploy/services/keycloak/">Clever Cloud Keycloak documentation</a> covers service access, realm management, IP address filtering, deployments in <em>Secured Multi Instances</em> mode, and metrics monitoring. For settings specific to OIDC and SAML clients, also refer to the <a href="https://www.keycloak.org/docs/latest/server_admin/">Keycloak administration documentation</a>.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>To see the deployment process and interface in practice, watch the video demonstration on our <a href="https://www.clever.cloud/product/managed-keycloak-as-a-service/">Keycloak as a Service</a> page.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">OIDC or SAML 2.0 for SSO: which should you choose?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>PoFor new development, choose OpenID Connect when the application supports it. Retain SAML 2.0 for applications whose integration already relies on that protocol or that do not support OIDC:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>OpenID Connect</strong> authenticates users of modern web and mobile applications; OAuth 2.0 and its access tokens control access to APIs.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>SAML 2.0</strong> supports existing applications and enterprise software that do not offer OIDC integration.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Keycloak supports both protocols within a single realm. OIDC and SAML applications can therefore share the same single sign-on.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Configure SSO on a managed Keycloak instance</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Configuring SSO is only part of the work: a Keycloak server then needs ongoing maintenance, updates, monitoring, and backups. A managed service takes on this operational workload.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p><a href="https://www.clever.cloud/product/managed-keycloak-as-a-service/">Keycloak as a Service</a>, Clever Cloud’s offering operated with the expertise of <a href="https://please-open.it/">Please Open It</a>, deploys a managed Keycloak instance hosted in France in just a few clicks. Teams retain control over all settings (realms, clients, and protocols) while Clever Cloud handles infrastructure operations, including ongoing updates, integrated monitoring, and regular backups. When the service is deployed in clustered Secured Multi-Instances mode, multiple nodes distribute the load and improve service continuity. Separately from this architecture, the 99.99% SLA, 24/7 on-call telephone support, and guaranteed response and resolution times are provided through the <a href="https://www.clever.cloud/clever-cloud-premium/">Premium offering</a> for eligible services. Realm import and export make it easier to migrate an existing instance. Finally, to protect an application without built-in authentication, an authentication proxy such as OAuth2-Proxy adds a login step before users reach the application, without changing its code.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"55px"} -->
<div style="height:55px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>«Keycloak is a Red Hat product, but Red Hat does not provide an open-source LTS version of Keycloak, and security fixes are not backported. Staying on the latest version is therefore essential, and deploying Keycloak as a Service on Clever Cloud makes this much easier. A single realm, separate from <code>master</code>, is often sufficient; multiple realms are only justified when user populations are entirely independent, with no shared applications or with separate deployments. Keycloak also decouples the addition of authentication factors from applications, making it possible to offer the latest authentication factors across all integrated applications. »</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>— Loïc Mercier des Rochettes, Co-founder and CTO at Please Open It</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"55px"} -->
<div style="height:55px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>Evaluating an IAM solution? Our checklist, <a href="https://cdn.clever-cloud.com/uploads/2026/08/eng11-questions-before-choosing-an-identity-management-solution.pdf">11 questions to ask before choosing an identity management solution</a>, brings together the criteria to assess before making a commitment.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"80px"} -->
<div style="height:80px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"style":{"typography":{"textAlign":"center"}}} -->
<h2 class="wp-block-heading has-text-align-center">FAQ</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does Keycloak support SSO?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. Keycloak is an open-source identity management solution that acts as a central identity provider: applications delegate login to it, and users authenticate only once. It supports OpenID Connect and SAML 2.0.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Should you use OIDC or SAML for SSO with Keycloak?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Both are suitable. OpenID Connect is designed for modern web applications, mobile applications, and APIs; SAML 2.0 remains the established standard for existing enterprise applications. Keycloak handles both protocols in parallel.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">How do you connect an application to Keycloak?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Create a client in the relevant realm, then configure it according to the protocol used by the application. For OpenID Connect, this includes configuring its redirect URLs and providing the client ID, the realm’s discovery URL, and a secret only if the application can securely store it. For SAML 2.0, configure the application’s entity ID, its Assertion Consumer Service URL, and the metadata exchange with Keycloak.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Do you need to host Keycloak yourself to implement SSO?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. A self-hosted Keycloak deployment requires you to manage installation, updates, security, and availability. A managed offering, such as Clever Cloud’s Keycloak as a Service, handles these operations; teams remain responsible for clients, users, permissions, and authentication policies.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can you secure an existing application without changing its code?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. An authentication proxy such as OAuth2-Proxy, connected to Keycloak, can require users to log in before forwarding requests to the application, without changing its code. This approach is particularly suitable for back-office applications and internal tools without built-in authentication, provided the application cannot be accessed directly by bypassing the proxy. Any application-specific authorisation rules still need to be defined.</p>
<!-- /wp:paragraph -->]]></description>
										<content:encoded><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SSO keycloak EN" decoding="async" srcset="https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en.png 800w, https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en-768x341.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>For a new integration, OpenID Connect is the preferred choice when the application supports it; SAML 2.0 remains suitable for existing software or products that only support that protocol. Next, configure the OIDC redirect URIs or SAML assertion consumer service endpoints, then connect the application to the realm’s endpoints.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>For IT departments, SSO addresses an everyday need: providing access to an entire application portfolio through a single login, with centralised security controls. Keycloak, an open-source identity and access management (IAM) solution, meets this need by centralising authentication.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Keycloak as a central identity provider</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Keycloak sits between applications and their users. Users authenticate with Keycloak and, while their SSO session remains valid, can access connected applications without re-entering their credentials. Each application trusts the authentication information provided by Keycloak to establish its own session. This is how an identity provider (IdP) works.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Centralising login offers a tangible security benefit: according to the <a href="https://www.enisa.europa.eu/">ENISA</a> Threat Landscape 2025 report, the annual report published by the European Union Agency for Cybersecurity, phishing accounts for approximately 60% of the initial intrusion methods observed in the incidents studied. With Keycloak, multifactor authentication (MFA) policies can be enforced at the shared login point for connected applications. However, not all forms of MFA provide the same protection against phishing: passkeys and WebAuthn are phishing-resistant by design because the authentication key is bound to the domain for which it was created.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Each application maintains its own session. In a full OIDC integration, the application checks the session status with Keycloak and can therefore respond when that session ends. Some applications, however, only verify the JWT’s signature and validity period locally. In this case, a token that is still valid may continue to be accepted after the Keycloak session has ended. This is JWT-based authentication rather than full OIDC session management.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Keycloak supports OpenID Connect (OIDC) and SAML 2.0. Modern applications and existing software can therefore share the same single sign-on within a single realm.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"40px"} -->
<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:acf/avantages {"name":"acf/avantages","data":{"title":"Key concepts to understand before configuration","_title":"field_63878c81ae569","content":"\u003cp data-pm-slice=\u00221 1 []\u0022\u003eThree core objects underpin every SSO configuration in Keycloak:\u003c/p\u003e","_content":"field_63878c9cae56a","main_picture":"","_main_picture":"field_63878cd5ae56b","advantages_collection_0_picto":"","_advantages_collection_0_picto":"field_6397417cac52f","advantages_collection_0_title":"The realm","_advantages_collection_0_title":"field_63878d1aae56d","advantages_collection_0_content":"An isolated administrative and security tenant. It contains users, their credentials, roles, groups, applications registered as clients, and authentication policies. Each realm manages its users and applications independently. A single dedicated realm is generally sufficient for one IT environment.","_advantages_collection_0_content":"field_63878d4dae56e","advantages_collection_0_link":"","_advantages_collection_0_link":"field_63878d66ae56f","advantages_collection_1_picto":"","_advantages_collection_1_picto":"field_6397417cac52f","advantages_collection_1_title":"The client","_advantages_collection_1_title":"field_63878d1aae56d","advantages_collection_1_content":"The representation, within the realm, of an application that delegates authentication to Keycloak. Each application you connect has its own client.","_advantages_collection_1_content":"field_63878d4dae56e","advantages_collection_1_link":"","_advantages_collection_1_link":"field_63878d66ae56f","advantages_collection_2_picto":"","_advantages_collection_2_picto":"field_6397417cac52f","advantages_collection_2_title":"The protocol","_advantages_collection_2_title":"field_63878d1aae56d","advantages_collection_2_content":"OpenID Connect or SAML 2.0, selected when creating the client. OIDC and SAML clients have different configurations, determined by their respective protocols. This choice cannot be changed later: switching protocols requires a new client.","_advantages_collection_2_content":"field_63878d4dae56e","advantages_collection_2_link":"","_advantages_collection_2_link":"field_63878d66ae56f","advantages_collection":3,"_advantages_collection":"field_63878cecae56c"},"mode":"auto"} /-->

<!-- wp:heading -->
<h2 class="wp-block-heading">Configure SSO with Keycloak, step by step</h2>
<!-- /wp:heading -->

<!-- wp:acf/arguments {"name":"acf/arguments","data":{"items_0_title":"Access the administration console","_items_0_title":"field_638a066e4d2ec","items_0_short_description":"In the Clever Cloud Console, open your service dashboard, then click \u003cb\u003eOpen Keycloak\u003c/b\u003e. The initial credentials are listed in the \u003cb\u003eAccess\u003c/b\u003e section. They are also available in the Java application through the CC_KEYCLOAK_ADMIN and CC_KEYCLOAK_ADMIN_DEFAULT_PASSWORD variables. When you first log in, Keycloak prompts you to replace the temporary password.","_items_0_short_description":"field_638a068d4d2ed","items_0_full_description":"","_items_0_full_description":"field_638a06af4d2ee","items_1_title":"Select or create a realm","_items_1_title":"field_638a066e4d2ec","items_1_short_description":"Always create a realm separate from master, either through the CC_KEYCLOAK_REALMS variable or in the administration interface. The master realm must remain an emergency administrative access point, also known as break-glass access, for use when a configuration error makes the application realm unavailable. Do not connect any business applications to it. Keep a single application realm for one IT environment: multiple realms are only justified when user populations are entirely independent and share no applications. Otherwise, each application has to integrate multiple SSO flows, adding unnecessary complexity.","_items_1_short_description":"field_638a068d4d2ed","items_1_full_description":"","_items_1_full_description":"field_638a06af4d2ee","items_2_title":"Register the application as a client","_items_2_title":"field_638a066e4d2ec","items_2_short_description":"Under \u003cb\u003eClients\u003c/b\u003e, Keycloak already lists several built-in clients used for administration and account management. Leave these unchanged. Click \u003cb\u003eCreate client\u003c/b\u003e to create a dedicated client for the application, then select OpenID Connect or SAML. The protocol is part of the client definition and cannot be changed later. If a SAML application provides metadata, you can also use \u003cb\u003eImport client\u003c/b\u003e.","_items_2_short_description":"field_638a068d4d2ed","items_2_full_description":"","_items_2_full_description":"field_638a06af4d2ee","items_3_title":"For an OpenID Connect application","_items_3_title":"field_638a066e4d2ec","items_3_short_description":"Configure its allowed redirect URIs precisely, along with its web origins if it communicates with Keycloak from the browser. Enable the Authorization Code flow using the Standard flow option. Enable Client authentication for a server-side application that can securely store a secret. For a mobile application or an application running entirely in the browser, leave this option disabled and require PKCE with the S256 method.","_items_3_short_description":"field_638a068d4d2ed","items_3_full_description":"","_items_3_full_description":"field_638a06af4d2ee","items_4_title":"For a SAML 2.0 application","_items_4_title":"field_638a066e4d2ec","items_4_short_description":"Preferably import the metadata provided by the service provider (SP). Then check that the Client ID matches its entity ID, and verify the Assertion Consumer Service (ACS) URL, signature settings, NameID format, and expected attributes. ","_items_4_short_description":"field_638a068d4d2ed","items_4_full_description":"Our article \u003ca href=\u0022https://www.clever.cloud/blog/features/2026/10/01/saml-2-0-what-is-the-protocol-used-for/\u0022\u003eWhat Is the SAML 2.0 Authentication Protocol Used For?\u003c/a\u003e explains how the protocol and metadata exchange work.","_items_4_full_description":"field_638a06af4d2ee","items_5_title":"Configure the application","_items_5_title":"field_638a066e4d2ec","items_5_short_description":"For OIDC, provide the client ID and, only if Client authentication is enabled, the client secret. Depending on the library used, provide either the realm URL, https://\u003ckeycloak-host\u003e/realms/\u003crealm\u003e, or its discovery URL: https://\u003ckeycloak-host\u003e/realms/\u003crealm\u003e/.well-known/openid-configuration. For SAML, import the Keycloak identity provider metadata from https://\u003ckeycloak-host\u003e/realms/\u003crealm\u003e/protocol/saml/descriptor. After authentication, the application validates the information it receives before establishing its own session.","_items_5_short_description":"field_638a068d4d2ed","items_5_full_description":"","_items_5_full_description":"field_638a06af4d2ee","items_6_title":"Test the complete login flow","_items_6_title":"field_638a066e4d2ec","items_6_short_description":"Log in with an authorised user and check the data passed to the application. If access restrictions have been configured, also verify that a user without the required permissions is denied access. To test SSO itself, then open a second application connected to the same realm: it should recognise the Keycloak session without prompting for credentials again. Finally, test logout to verify how it propagates across applications according to their configuration.","_items_6_short_description":"field_638a068d4d2ed","items_6_full_description":"","_items_6_full_description":"field_638a06af4d2ee","items":7,"_items":"field_638a065a4d2eb"},"mode":"preview"} /-->

<!-- wp:paragraph -->
<p>The <a href="https://www.clever.cloud/developers/doc/deploy/services/keycloak/">Clever Cloud Keycloak documentation</a> covers service access, realm management, IP address filtering, deployments in <em>Secured Multi Instances</em> mode, and metrics monitoring. For settings specific to OIDC and SAML clients, also refer to the <a href="https://www.keycloak.org/docs/latest/server_admin/">Keycloak administration documentation</a>.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>To see the deployment process and interface in practice, watch the video demonstration on our <a href="https://www.clever.cloud/product/managed-keycloak-as-a-service/">Keycloak as a Service</a> page.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">OIDC or SAML 2.0 for SSO: which should you choose?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>PoFor new development, choose OpenID Connect when the application supports it. Retain SAML 2.0 for applications whose integration already relies on that protocol or that do not support OIDC:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>OpenID Connect</strong> authenticates users of modern web and mobile applications; OAuth 2.0 and its access tokens control access to APIs.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>SAML 2.0</strong> supports existing applications and enterprise software that do not offer OIDC integration.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Keycloak supports both protocols within a single realm. OIDC and SAML applications can therefore share the same single sign-on.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Configure SSO on a managed Keycloak instance</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Configuring SSO is only part of the work: a Keycloak server then needs ongoing maintenance, updates, monitoring, and backups. A managed service takes on this operational workload.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p><a href="https://www.clever.cloud/product/managed-keycloak-as-a-service/">Keycloak as a Service</a>, Clever Cloud’s offering operated with the expertise of <a href="https://please-open.it/">Please Open It</a>, deploys a managed Keycloak instance hosted in France in just a few clicks. Teams retain control over all settings (realms, clients, and protocols) while Clever Cloud handles infrastructure operations, including ongoing updates, integrated monitoring, and regular backups. When the service is deployed in clustered Secured Multi-Instances mode, multiple nodes distribute the load and improve service continuity. Separately from this architecture, the 99.99% SLA, 24/7 on-call telephone support, and guaranteed response and resolution times are provided through the <a href="https://www.clever.cloud/clever-cloud-premium/">Premium offering</a> for eligible services. Realm import and export make it easier to migrate an existing instance. Finally, to protect an application without built-in authentication, an authentication proxy such as OAuth2-Proxy adds a login step before users reach the application, without changing its code.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"55px"} -->
<div style="height:55px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>«Keycloak is a Red Hat product, but Red Hat does not provide an open-source LTS version of Keycloak, and security fixes are not backported. Staying on the latest version is therefore essential, and deploying Keycloak as a Service on Clever Cloud makes this much easier. A single realm, separate from <code>master</code>, is often sufficient; multiple realms are only justified when user populations are entirely independent, with no shared applications or with separate deployments. Keycloak also decouples the addition of authentication factors from applications, making it possible to offer the latest authentication factors across all integrated applications. »</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>— Loïc Mercier des Rochettes, Co-founder and CTO at Please Open It</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"55px"} -->
<div style="height:55px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>Evaluating an IAM solution? Our checklist, <a href="https://cdn.clever-cloud.com/uploads/2026/08/eng11-questions-before-choosing-an-identity-management-solution.pdf">11 questions to ask before choosing an identity management solution</a>, brings together the criteria to assess before making a commitment.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"80px"} -->
<div style="height:80px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"style":{"typography":{"textAlign":"center"}}} -->
<h2 class="wp-block-heading has-text-align-center">FAQ</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does Keycloak support SSO?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. Keycloak is an open-source identity management solution that acts as a central identity provider: applications delegate login to it, and users authenticate only once. It supports OpenID Connect and SAML 2.0.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Should you use OIDC or SAML for SSO with Keycloak?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Both are suitable. OpenID Connect is designed for modern web applications, mobile applications, and APIs; SAML 2.0 remains the established standard for existing enterprise applications. Keycloak handles both protocols in parallel.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">How do you connect an application to Keycloak?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Create a client in the relevant realm, then configure it according to the protocol used by the application. For OpenID Connect, this includes configuring its redirect URLs and providing the client ID, the realm’s discovery URL, and a secret only if the application can securely store it. For SAML 2.0, configure the application’s entity ID, its Assertion Consumer Service URL, and the metadata exchange with Keycloak.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Do you need to host Keycloak yourself to implement SSO?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. A self-hosted Keycloak deployment requires you to manage installation, updates, security, and availability. A managed offering, such as Clever Cloud’s Keycloak as a Service, handles these operations; teams remain responsible for clients, users, permissions, and authentication policies.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can you secure an existing application without changing its code?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. An authentication proxy such as OAuth2-Proxy, connected to Keycloak, can require users to log in before forwarding requests to the application, without changing its code. This approach is particularly suitable for back-office applications and internal tools without built-in authentication, provided the application cannot be accessed directly by bypassing the proxy. Any application-specific authorisation rules still need to be defined.</p>
<!-- /wp:paragraph -->]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>How to Create a Private Network Between Applications Without Managing a VPN</title>
		<link>https://www.clever.cloud/blog/features/2026/10/12/create-private-network-between-applications-without-vpn/</link>
		
		<dc:creator><![CDATA[Marjorie Darrigade]]></dc:creator>
		<pubDate>Mon, 12 Oct 2026 12:13:03 +0000</pubDate>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Features]]></category>
		<category><![CDATA[network groups]]></category>
		<category><![CDATA[private network]]></category>
		<guid isPermaLink="false">https://www.clever.cloud/?p=25765</guid>

					<description><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/10/2026-10-12-clever-cloud-banniere-blog-reseau-prive-ng-eng.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Private network" decoding="async" srcset="https://cdn.clever-cloud.com/uploads/2026/10/2026-10-12-clever-cloud-banniere-blog-reseau-prive-ng-eng.png 800w, https://cdn.clever-cloud.com/uploads/2026/10/2026-10-12-clever-cloud-banniere-blog-reseau-prive-ng-eng-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/10/2026-10-12-clever-cloud-banniere-blog-reseau-prive-ng-eng-768x341.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>When these exchanges require the ports of different services to be publicly exposed, the attack surface increases and the network configuration becomes more cumbersome to maintain. Creating a private network between applications directly addresses this problem without requiring you to deploy or manage VPN infrastructure.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>This approach allows cloud services to communicate directly with one another, over any port, without exposing the ports required for these exchanges to the Internet. Data travels over an encrypted overlay network that is independent of the physical network. On Clever Cloud, Network Groups provide this functionality: they establish WireGuard tunnels between resources, with no low-level network configuration.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Why exposing your services to the Internet is a problem</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>When application components communicate over public ports, each exposed service becomes a potential entry point. This has three practical consequences:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>Larger attack surface</strong>: every public access point must be secured, monitored, and maintained.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Unnecessary exposure of technical ports</strong>: some protocols require dedicated ports for internal communications, even though they are not intended to be publicly accessible. A private network lets you use them without creating new entry points from the Internet.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Reliance on external tunnels</strong>: connecting services distributed across several zones usually requires you to configure and manage an additional network layer, often a VPN.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Connecting services within a private network allows their internal traffic to flow without exposing the ports used for these communications. However, this does not disable any public access that is already configured. If only an API gateway should provide access to the backends from the Internet, you must also block their public endpoints.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">How a private network between applications works</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The approach is based on an overlay network: a logical network layer built on top of the existing physical network. Resources have private connectivity to one another, and their communications are encrypted by default. Because the overlay is independent of the underlying physical network, it can connect resources distributed across multiple zones or datacenters.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Consider an application comprising a public API, several backend services, and a database: only the API is exposed to the Internet. The internal services and database communicate with one another over the private network, using the ports they require.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Creating a private network between applications on Clever Cloud</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Network Groups provide this setup. Each resource attached to a Network Group receives a private IP address from a dedicated CIDR, as well as an internal domain name in the format "&lt;memberID&gt;.m.&lt;ngID&gt;.cc-ng.cloud". The resources can then connect directly to one another, over any port, with no network configuration required.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>A Network Group can connect Clever Cloud applications, add-ons, and external machines within the same private network. Communications are encrypted using WireGuard, a protocol known for its simplicity and speed.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>You can create and manage Network Groups from the Clever Cloud Console, Clever Tools (CLI), or the public API. For example, from the command line:</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>clever features enable ng<br>clever ng create monNG --link app_xxx,postgresql_xxx</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Note: add-on compatibility depends on their generation. Add-ons deployed since 2024 are compatible; older ones may require a migration or restart. See the <a href="https://www.clever.cloud/developers/doc/manage/cli/network-groups/">documentation</a> for the current limitations.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">When should you use a private network between applications?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Network Groups are not a standalone solution: they enable certain secure architectures rather than replace an existing product. Several use cases are common.</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>Protect applications behind an API gateway: the backends remain unreachable from outside while still being accessible from the gateway.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Deploy Keycloak for high availability: multiple Keycloak instances synchronise over the private network without being publicly exposed.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Enable microservices to communicate: in a distributed architecture, services communicate continuously without opening public ports or configuring tunnels.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Integrate external resources: connect a local machine or third-party server to your Clever Cloud applications over an encrypted channel.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Connect your services without the complexity of a VPN</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>With Network Groups, private connectivity becomes a platform capability rather than infrastructure that you have to build and maintain. You choose which resources need to communicate; Clever Cloud establishes the encrypted private network between them. This allows you to use the ports required for internal communications without exposing them publicly, whether your resources are in the same zone, distributed across several data centres or, where applicable, external to Clever Cloud.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"170px"} -->
<div style="height:170px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"style":{"typography":{"textAlign":"center"}}} -->
<h2 class="wp-block-heading has-text-align-center">FAQ</h2>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What is the difference between a VPN and a private network between applications?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The main difference is what you have to manage. With a traditional VPN, you generally need to deploy, configure, and maintain connectivity between the relevant machines or networks. With Network Groups, Clever Cloud manages this layer for you: you attach the resources to the group, and the platform establishes encrypted private connectivity using WireGuard.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Do you need to modify your application code to use Network Groups?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>In most cases, no. You do not need to rewrite your application. The change is in the configuration, not the code: the calling application must target the destination service using its internal Network Group domain name (&lt;memberID&gt;.m.&lt;ngID&gt;.cc-ng.cloud) and the required port, usually through an environment variable. No specific library or application changes are required for the traffic to use the private network.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does a private network between applications work with machines outside Clever Cloud?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. A Network Group can connect Clever Cloud applications, add-ons, and external machines within the same private network. However, support for attaching an external peer is still being stabilised during the testing phase.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does a private network make an application invisible from the Internet?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No, not by itself. Network Groups provide private access to resources, but they do not disconnect an application from the Internet. Restricting public exposure is handled by other platform mechanisms.</p>
<!-- /wp:paragraph -->]]></description>
										<content:encoded><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/10/2026-10-12-clever-cloud-banniere-blog-reseau-prive-ng-eng.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Private network" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/10/2026-10-12-clever-cloud-banniere-blog-reseau-prive-ng-eng.png 800w, https://cdn.clever-cloud.com/uploads/2026/10/2026-10-12-clever-cloud-banniere-blog-reseau-prive-ng-eng-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/10/2026-10-12-clever-cloud-banniere-blog-reseau-prive-ng-eng-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>When these exchanges require the ports of different services to be publicly exposed, the attack surface increases and the network configuration becomes more cumbersome to maintain. Creating a private network between applications directly addresses this problem without requiring you to deploy or manage VPN infrastructure.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>This approach allows cloud services to communicate directly with one another, over any port, without exposing the ports required for these exchanges to the Internet. Data travels over an encrypted overlay network that is independent of the physical network. On Clever Cloud, Network Groups provide this functionality: they establish WireGuard tunnels between resources, with no low-level network configuration.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Why exposing your services to the Internet is a problem</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>When application components communicate over public ports, each exposed service becomes a potential entry point. This has three practical consequences:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>Larger attack surface</strong>: every public access point must be secured, monitored, and maintained.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Unnecessary exposure of technical ports</strong>: some protocols require dedicated ports for internal communications, even though they are not intended to be publicly accessible. A private network lets you use them without creating new entry points from the Internet.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Reliance on external tunnels</strong>: connecting services distributed across several zones usually requires you to configure and manage an additional network layer, often a VPN.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Connecting services within a private network allows their internal traffic to flow without exposing the ports used for these communications. However, this does not disable any public access that is already configured. If only an API gateway should provide access to the backends from the Internet, you must also block their public endpoints.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">How a private network between applications works</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The approach is based on an overlay network: a logical network layer built on top of the existing physical network. Resources have private connectivity to one another, and their communications are encrypted by default. Because the overlay is independent of the underlying physical network, it can connect resources distributed across multiple zones or datacenters.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Consider an application comprising a public API, several backend services, and a database: only the API is exposed to the Internet. The internal services and database communicate with one another over the private network, using the ports they require.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Creating a private network between applications on Clever Cloud</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Network Groups provide this setup. Each resource attached to a Network Group receives a private IP address from a dedicated CIDR, as well as an internal domain name in the format "&lt;memberID&gt;.m.&lt;ngID&gt;.cc-ng.cloud". The resources can then connect directly to one another, over any port, with no network configuration required.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>A Network Group can connect Clever Cloud applications, add-ons, and external machines within the same private network. Communications are encrypted using WireGuard, a protocol known for its simplicity and speed.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>You can create and manage Network Groups from the Clever Cloud Console, Clever Tools (CLI), or the public API. For example, from the command line:</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>clever features enable ng<br>clever ng create monNG --link app_xxx,postgresql_xxx</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Note: add-on compatibility depends on their generation. Add-ons deployed since 2024 are compatible; older ones may require a migration or restart. See the <a href="https://www.clever.cloud/developers/doc/manage/cli/network-groups/">documentation</a> for the current limitations.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">When should you use a private network between applications?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Network Groups are not a standalone solution: they enable certain secure architectures rather than replace an existing product. Several use cases are common.</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>Protect applications behind an API gateway: the backends remain unreachable from outside while still being accessible from the gateway.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Deploy Keycloak for high availability: multiple Keycloak instances synchronise over the private network without being publicly exposed.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Enable microservices to communicate: in a distributed architecture, services communicate continuously without opening public ports or configuring tunnels.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Integrate external resources: connect a local machine or third-party server to your Clever Cloud applications over an encrypted channel.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Connect your services without the complexity of a VPN</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>With Network Groups, private connectivity becomes a platform capability rather than infrastructure that you have to build and maintain. You choose which resources need to communicate; Clever Cloud establishes the encrypted private network between them. This allows you to use the ports required for internal communications without exposing them publicly, whether your resources are in the same zone, distributed across several data centres or, where applicable, external to Clever Cloud.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"170px"} -->
<div style="height:170px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"style":{"typography":{"textAlign":"center"}}} -->
<h2 class="wp-block-heading has-text-align-center">FAQ</h2>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What is the difference between a VPN and a private network between applications?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The main difference is what you have to manage. With a traditional VPN, you generally need to deploy, configure, and maintain connectivity between the relevant machines or networks. With Network Groups, Clever Cloud manages this layer for you: you attach the resources to the group, and the platform establishes encrypted private connectivity using WireGuard.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Do you need to modify your application code to use Network Groups?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>In most cases, no. You do not need to rewrite your application. The change is in the configuration, not the code: the calling application must target the destination service using its internal Network Group domain name (&lt;memberID&gt;.m.&lt;ngID&gt;.cc-ng.cloud) and the required port, usually through an environment variable. No specific library or application changes are required for the traffic to use the private network.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does a private network between applications work with machines outside Clever Cloud?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. A Network Group can connect Clever Cloud applications, add-ons, and external machines within the same private network. However, support for attaching an external peer is still being stabilised during the testing phase.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does a private network make an application invisible from the Internet?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No, not by itself. Network Groups provide private access to resources, but they do not disconnect an application from the Internet. Restricting public exposure is handled by other platform mechanisms.</p>
<!-- /wp:paragraph -->]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>What Is the SAML 2.0 Authentication Protocol Used For?</title>
		<link>https://www.clever.cloud/blog/features/2026/10/01/saml-2-0-what-is-the-protocol-used-for/</link>
		
		<dc:creator><![CDATA[Marjorie Darrigade]]></dc:creator>
		<pubDate>Thu, 01 Oct 2026 07:09:12 +0000</pubDate>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Features]]></category>
		<category><![CDATA[IAM]]></category>
		<category><![CDATA[keycloak]]></category>
		<guid isPermaLink="false">https://www.clever.cloud/?p=25668</guid>

					<description><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/09/2026-09-30-clever-cloud-banniere-blog-saml-eng.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SAML" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/09/2026-09-30-clever-cloud-banniere-blog-saml-eng.png 800w, https://cdn.clever-cloud.com/uploads/2026/09/2026-09-30-clever-cloud-banniere-blog-saml-eng-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/09/2026-09-30-clever-cloud-banniere-blog-saml-eng-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>For an IT department, SAML 2.0 addresses a practical question: how can an employee be given access to dozens of applications with a single authentication process, while centralising authentication policies through an identity provider?</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">What is SAML 2.0?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>This centralisation of authentication is precisely what SAML standardises. Version 2.0 of the standard was approved by OASIS (Organization for the Advancement of Structured Information Standards) in March 2005 at its highest level of ratification. It brought together three earlier initiatives: SAML 1.1, the Liberty Alliance ID-FF 1.2 profile and contributions from the Shibboleth project. It was also adopted as an international recommendation by the International Telecommunication Union (ITU-T X.1141).</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Technically, the SAML protocol is based on assertions: XML security tokens that describe a user, the “principal", and their authentication. These assertions are exchanged between two roles:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>The Identity Provider (IdP), which authenticates the user.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>The Service Provider (SP), which is the application the user wants to access.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>More than twenty years after its ratification, SAML 2.0 is not a legacy protocol. It remains widely deployed in businesses, the public sector and academia, where it continues to provide a foundation for identity federation.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"40px"} -->
<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:acf/avantages {"name":"acf/avantages","data":{"title":"What is the SAML 2.0 protocol used for?","_title":"field_63878c81ae569","content":"\u003cp data-pm-slice=\u00221 1 []\u0022\u003eThe main purpose of the SAML protocol is to implement cross-domain Single Sign-On. This is a significant concern for IT departments: according to a \u003ca href=\u0022https://www.gartner.com/peer-community/oneminuteinsights/single-sign-advantages-disadvantages-2ru\u0022 target=\u0022_blank\u0022 rel=\u0022noopener\u0022\u003eGartner Peer Community survey conducted in 2022\u003c/a\u003e\u003cspan style=\u0022font-weight: 400;\u0022\u003e, \u003c/span\u003eimproving access management was the main reason given by organisations for adopting SSO, cited by 66% of respondents. This was followed by addressing poor password practices at 56% and reducing IT support tickets at 55%.\u003c/p\u003e\r\n\u003cp data-pm-slice=\u00221 1 []\u0022\u003eIn practice, SAML covers several use cases:\u003c/p\u003e","_content":"field_63878c9cae56a","main_picture":"","_main_picture":"field_63878cd5ae56b","advantages_collection_0_picto":"","_advantages_collection_0_picto":"field_6397417cac52f","advantages_collection_0_title":"Enterprise Single Sign-On","_advantages_collection_0_title":"field_63878d1aae56d","advantages_collection_0_content":"An employee authenticates once with the identity provider and can then access all their applications (email, business tools and Software-as-a-Service (SaaS) applications) without entering their password again.","_advantages_collection_0_content":"field_63878d4dae56e","advantages_collection_0_link":"","_advantages_collection_0_link":"field_63878d66ae56f","advantages_collection_1_picto":"","_advantages_collection_1_picto":"field_6397417cac52f","advantages_collection_1_title":"Identity federation between organisations","_advantages_collection_1_title":"field_63878d1aae56d","advantages_collection_1_content":"SAML 2.0 allows separate entities, such as partners, subsidiaries and institutions, to trust the same identity provider without duplicating user accounts.","_advantages_collection_1_content":"field_63878d4dae56e","advantages_collection_1_link":"","_advantages_collection_1_link":"field_63878d66ae56f","advantages_collection_2_picto":"","_advantages_collection_2_picto":"field_6397417cac52f","advantages_collection_2_title":"Centralised authentication policies","_advantages_collection_2_title":"field_63878d1aae56d","advantages_collection_2_content":"The identity provider can apply common rules to federated applications, including multi-factor authentication (MFA), and log sign-ins. However, signing out of the identity provider does not necessarily close sessions that are already open in each application. This depends on whether the applications support Single Logout.","_advantages_collection_2_content":"field_63878d4dae56e","advantages_collection_2_link":"","_advantages_collection_2_link":"field_63878d66ae56f","advantages_collection_3_picto":"","_advantages_collection_3_picto":"field_6397417cac52f","advantages_collection_3_title":"Public-sector and research federations","_advantages_collection_3_title":"field_63878d1aae56d","advantages_collection_3_content":"Major academic identity federations have historically relied on SAML, which explains the standard’s long-standing presence in these sectors.","_advantages_collection_3_content":"field_63878d4dae56e","advantages_collection_3_link":"","_advantages_collection_3_link":"field_63878d66ae56f","advantages_collection":4,"_advantages_collection":"field_63878cecae56c"},"mode":"auto"} /-->

<!-- wp:heading -->
<h2 class="wp-block-heading">How does SAML authentication work?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>SAML authentication involves three parties: the user, the Identity Provider (IdP) and the Service Provider (SP). In the most common scenario, known as “SP-initiated” authentication, the exchange works as follows:</p>
<!-- /wp:paragraph -->

<!-- wp:acf/arguments {"name":"acf/arguments","data":{"items_0_title":"","_items_0_title":"field_638a066e4d2ec","items_0_short_description":"The user attempts to access an application (the SP).","_items_0_short_description":"field_638a068d4d2ed","items_0_full_description":"","_items_0_full_description":"field_638a06af4d2ee","items_1_title":"","_items_1_title":"field_638a066e4d2ec","items_1_short_description":"Because there is no active session, the SP generates a SAML authentication request and redirects the browser to the IdP.","_items_1_short_description":"field_638a068d4d2ed","items_1_full_description":"","_items_1_full_description":"field_638a06af4d2ee","items_2_title":"","_items_2_title":"field_638a066e4d2ec","items_2_short_description":"The IdP authenticates the user using a password, multi-factor authentication or an existing session.","_items_2_short_description":"field_638a068d4d2ed","items_2_full_description":"","_items_2_full_description":"field_638a06af4d2ee","items_3_title":"","_items_3_title":"field_638a066e4d2ec","items_3_short_description":"The IdP generates a signed SAML assertion describing the user and sends it back to the SP through the browser.","_items_3_short_description":"field_638a068d4d2ed","items_3_full_description":"","_items_3_full_description":"field_638a06af4d2ee","items_4_title":"","_items_4_title":"field_638a066e4d2ec","items_4_short_description":"The SP verifies the signature, validates the assertion and opens a session. Access is granted.","_items_4_short_description":"field_638a068d4d2ed","items_4_full_description":"","_items_4_full_description":"field_638a06af4d2ee","items":5,"_items":"field_638a065a4d2eb"},"mode":"preview"} /-->

<!-- wp:paragraph -->
<p>Trust between the IdP and the SP cannot be established automatically. It must be configured beforehand through an exchange of <strong>metadata</strong>, including certificates, endpoints and identifiers. This allows each party to verify the authenticity of the other party’s messages. The assertion’s cryptographic signature guarantees that it came from the expected identity provider and has not been altered.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Components of the SAML 2.0 standard</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The SAML 2.0 standard consists of several complementary components:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>Assertions:</strong> the statements themselves, which can contain three types of information: authentication information, attributes such as a role, department or email address, and, less commonly, an authorisation decision.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Protocols:</strong> the request and response messages used to carry assertions.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Bindings:</strong> the methods used to transport these messages over the web, for example through an HTTP redirect or an HTTP POST request.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Profiles:</strong> predefined combinations of components for a particular use case. The best-known example is the Web Browser SSO Profile.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Metadata:</strong> the technical description exchanged between the IdP and SP to establish trust.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Although SAML can carry authorisation decisions, its main uses remain Single Sign-On and attribute exchange. Fine-grained authorisation is generally handled by other mechanisms.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">SAML 2.0, OAuth 2.0 and OpenID Connect: what are the differences?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>These three standards are often confused, even though they do not address the same question:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>SAML 2.0</strong> deals with authentication and Single Sign-On. It is based on XML and is widely established in enterprise environments, cross-organisational federations and the public sector.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>OAuth 2.0</strong> deals with authorisation. It delegates access to a resource (for example, “Can this application read my calendar?”) and does not handle authentication on its own.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>OpenID Connect (OIDC)</strong> adds an authentication layer to OAuth 2.0, allowing an application to establish a user’s identity, particularly through an ID token in JWT format. It is suitable for web and mobile applications, while API access relies on OAuth 2.0 access tokens.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>In practice, SAML 2.0 and OpenID Connect coexist. SAML remains the standard for existing enterprise applications, while OpenID Connect is generally used for new developments. The choice between SAML, OAuth 2.0 and OpenID Connect depends on the type of application, its authentication requirements and how access to APIs must be delegated.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Implementing SAML 2.0 with Keycloak</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The most common way to deploy SAML 2.0 without reimplementing the protocol is to use an Identity and Access Management (IAM) solution. Keycloak, a leading open-source solution in this field, can act as a SAML 2.0 identity provider. It also supports OpenID Connect, allowing legacy SAML applications and newer OIDC developments to share the same authentication service.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Clever Cloud offers <a href="https://www.clever.cloud/product/managed-keycloak-as-a-service/">Keycloak as a Service</a>: a fully managed Keycloak service hosted in France and operated with the expertise of <a href="https://please-open.it/index.html?lang=en">Please Open It</a>, a partner specialising in Keycloak. This approach removes the burden of operating the identity server, including updates, availability and backups, from internal teams, while allowing them to retain control over SAML and OIDC settings.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"55px"} -->
<div style="height:55px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>« SAML 2.0 remains essential in enterprise environments because of its long history (2005) but also because of its network simplicity: everything passes through the user’s browser, with no direct connection required between the application and the identity server. In contrast, the modern OpenID Connect standard requires direct server-to-server communication to remain secure. OIDC’s ‘100% browser-based’ mode, the Implicit Flow, has now been abandoned because it is considered too vulnerable. »</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>— Mathieu Passenaud, Co-founder at Please Open It</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"55px"} -->
<div style="height:55px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"style":{"typography":{"textAlign":"center"}}} -->
<h2 class="wp-block-heading has-text-align-center">FAQ</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Is SAML 2.0 still used in 2026?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. Ratified in 2005, SAML 2.0 remains widely deployed in businesses, the public sector and academia for Single Sign-On and identity federation. It coexists with OpenID Connect, which is often preferred for new web and mobile projects.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What is the difference between SAML and SSO?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>SSO, or Single Sign-On, is a principle: users authenticate once to access multiple applications. SAML is one of the protocols that can implement this principle across domains. OpenID Connect is another.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does SAML handle authentication or authorisation?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>It can handle both, but it is mainly used for Single Sign-On and attribute exchange. The protocol can carry authorisation decisions, although this capability is rarely used in practice.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Should I choose SAML 2.0 or OpenID Connect?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The choice primarily depends on the protocol supported by the application. SAML 2.0 is suitable for services designed to use SAML federation, while OpenID Connect is generally appropriate for authenticating users in web and mobile applications. OAuth 2.0 access tokens are used to control access to APIs. Both approaches can coexist behind the same identity provider, such as Keycloak.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does Keycloak support SAML 2.0?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. Keycloak can act as a SAML 2.0 identity provider and also supports OpenID Connect, allowing both protocols to be used together.</p>
<!-- /wp:paragraph -->]]></description>
										<content:encoded><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/09/2026-09-30-clever-cloud-banniere-blog-saml-eng.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SAML" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/09/2026-09-30-clever-cloud-banniere-blog-saml-eng.png 800w, https://cdn.clever-cloud.com/uploads/2026/09/2026-09-30-clever-cloud-banniere-blog-saml-eng-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/09/2026-09-30-clever-cloud-banniere-blog-saml-eng-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>For an IT department, SAML 2.0 addresses a practical question: how can an employee be given access to dozens of applications with a single authentication process, while centralising authentication policies through an identity provider?</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">What is SAML 2.0?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>This centralisation of authentication is precisely what SAML standardises. Version 2.0 of the standard was approved by OASIS (Organization for the Advancement of Structured Information Standards) in March 2005 at its highest level of ratification. It brought together three earlier initiatives: SAML 1.1, the Liberty Alliance ID-FF 1.2 profile and contributions from the Shibboleth project. It was also adopted as an international recommendation by the International Telecommunication Union (ITU-T X.1141).</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Technically, the SAML protocol is based on assertions: XML security tokens that describe a user, the “principal", and their authentication. These assertions are exchanged between two roles:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>The Identity Provider (IdP), which authenticates the user.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>The Service Provider (SP), which is the application the user wants to access.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>More than twenty years after its ratification, SAML 2.0 is not a legacy protocol. It remains widely deployed in businesses, the public sector and academia, where it continues to provide a foundation for identity federation.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"40px"} -->
<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:acf/avantages {"name":"acf/avantages","data":{"title":"What is the SAML 2.0 protocol used for?","_title":"field_63878c81ae569","content":"\u003cp data-pm-slice=\u00221 1 []\u0022\u003eThe main purpose of the SAML protocol is to implement cross-domain Single Sign-On. This is a significant concern for IT departments: according to a \u003ca href=\u0022https://www.gartner.com/peer-community/oneminuteinsights/single-sign-advantages-disadvantages-2ru\u0022 target=\u0022_blank\u0022 rel=\u0022noopener\u0022\u003eGartner Peer Community survey conducted in 2022\u003c/a\u003e\u003cspan style=\u0022font-weight: 400;\u0022\u003e, \u003c/span\u003eimproving access management was the main reason given by organisations for adopting SSO, cited by 66% of respondents. This was followed by addressing poor password practices at 56% and reducing IT support tickets at 55%.\u003c/p\u003e\r\n\u003cp data-pm-slice=\u00221 1 []\u0022\u003eIn practice, SAML covers several use cases:\u003c/p\u003e","_content":"field_63878c9cae56a","main_picture":"","_main_picture":"field_63878cd5ae56b","advantages_collection_0_picto":"","_advantages_collection_0_picto":"field_6397417cac52f","advantages_collection_0_title":"Enterprise Single Sign-On","_advantages_collection_0_title":"field_63878d1aae56d","advantages_collection_0_content":"An employee authenticates once with the identity provider and can then access all their applications (email, business tools and Software-as-a-Service (SaaS) applications) without entering their password again.","_advantages_collection_0_content":"field_63878d4dae56e","advantages_collection_0_link":"","_advantages_collection_0_link":"field_63878d66ae56f","advantages_collection_1_picto":"","_advantages_collection_1_picto":"field_6397417cac52f","advantages_collection_1_title":"Identity federation between organisations","_advantages_collection_1_title":"field_63878d1aae56d","advantages_collection_1_content":"SAML 2.0 allows separate entities, such as partners, subsidiaries and institutions, to trust the same identity provider without duplicating user accounts.","_advantages_collection_1_content":"field_63878d4dae56e","advantages_collection_1_link":"","_advantages_collection_1_link":"field_63878d66ae56f","advantages_collection_2_picto":"","_advantages_collection_2_picto":"field_6397417cac52f","advantages_collection_2_title":"Centralised authentication policies","_advantages_collection_2_title":"field_63878d1aae56d","advantages_collection_2_content":"The identity provider can apply common rules to federated applications, including multi-factor authentication (MFA), and log sign-ins. However, signing out of the identity provider does not necessarily close sessions that are already open in each application. This depends on whether the applications support Single Logout.","_advantages_collection_2_content":"field_63878d4dae56e","advantages_collection_2_link":"","_advantages_collection_2_link":"field_63878d66ae56f","advantages_collection_3_picto":"","_advantages_collection_3_picto":"field_6397417cac52f","advantages_collection_3_title":"Public-sector and research federations","_advantages_collection_3_title":"field_63878d1aae56d","advantages_collection_3_content":"Major academic identity federations have historically relied on SAML, which explains the standard’s long-standing presence in these sectors.","_advantages_collection_3_content":"field_63878d4dae56e","advantages_collection_3_link":"","_advantages_collection_3_link":"field_63878d66ae56f","advantages_collection":4,"_advantages_collection":"field_63878cecae56c"},"mode":"auto"} /-->

<!-- wp:heading -->
<h2 class="wp-block-heading">How does SAML authentication work?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>SAML authentication involves three parties: the user, the Identity Provider (IdP) and the Service Provider (SP). In the most common scenario, known as “SP-initiated” authentication, the exchange works as follows:</p>
<!-- /wp:paragraph -->

<!-- wp:acf/arguments {"name":"acf/arguments","data":{"items_0_title":"","_items_0_title":"field_638a066e4d2ec","items_0_short_description":"The user attempts to access an application (the SP).","_items_0_short_description":"field_638a068d4d2ed","items_0_full_description":"","_items_0_full_description":"field_638a06af4d2ee","items_1_title":"","_items_1_title":"field_638a066e4d2ec","items_1_short_description":"Because there is no active session, the SP generates a SAML authentication request and redirects the browser to the IdP.","_items_1_short_description":"field_638a068d4d2ed","items_1_full_description":"","_items_1_full_description":"field_638a06af4d2ee","items_2_title":"","_items_2_title":"field_638a066e4d2ec","items_2_short_description":"The IdP authenticates the user using a password, multi-factor authentication or an existing session.","_items_2_short_description":"field_638a068d4d2ed","items_2_full_description":"","_items_2_full_description":"field_638a06af4d2ee","items_3_title":"","_items_3_title":"field_638a066e4d2ec","items_3_short_description":"The IdP generates a signed SAML assertion describing the user and sends it back to the SP through the browser.","_items_3_short_description":"field_638a068d4d2ed","items_3_full_description":"","_items_3_full_description":"field_638a06af4d2ee","items_4_title":"","_items_4_title":"field_638a066e4d2ec","items_4_short_description":"The SP verifies the signature, validates the assertion and opens a session. Access is granted.","_items_4_short_description":"field_638a068d4d2ed","items_4_full_description":"","_items_4_full_description":"field_638a06af4d2ee","items":5,"_items":"field_638a065a4d2eb"},"mode":"preview"} /-->

<!-- wp:paragraph -->
<p>Trust between the IdP and the SP cannot be established automatically. It must be configured beforehand through an exchange of <strong>metadata</strong>, including certificates, endpoints and identifiers. This allows each party to verify the authenticity of the other party’s messages. The assertion’s cryptographic signature guarantees that it came from the expected identity provider and has not been altered.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Components of the SAML 2.0 standard</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The SAML 2.0 standard consists of several complementary components:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>Assertions:</strong> the statements themselves, which can contain three types of information: authentication information, attributes such as a role, department or email address, and, less commonly, an authorisation decision.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Protocols:</strong> the request and response messages used to carry assertions.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Bindings:</strong> the methods used to transport these messages over the web, for example through an HTTP redirect or an HTTP POST request.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Profiles:</strong> predefined combinations of components for a particular use case. The best-known example is the Web Browser SSO Profile.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Metadata:</strong> the technical description exchanged between the IdP and SP to establish trust.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Although SAML can carry authorisation decisions, its main uses remain Single Sign-On and attribute exchange. Fine-grained authorisation is generally handled by other mechanisms.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">SAML 2.0, OAuth 2.0 and OpenID Connect: what are the differences?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>These three standards are often confused, even though they do not address the same question:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>SAML 2.0</strong> deals with authentication and Single Sign-On. It is based on XML and is widely established in enterprise environments, cross-organisational federations and the public sector.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>OAuth 2.0</strong> deals with authorisation. It delegates access to a resource (for example, “Can this application read my calendar?”) and does not handle authentication on its own.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>OpenID Connect (OIDC)</strong> adds an authentication layer to OAuth 2.0, allowing an application to establish a user’s identity, particularly through an ID token in JWT format. It is suitable for web and mobile applications, while API access relies on OAuth 2.0 access tokens.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>In practice, SAML 2.0 and OpenID Connect coexist. SAML remains the standard for existing enterprise applications, while OpenID Connect is generally used for new developments. The choice between SAML, OAuth 2.0 and OpenID Connect depends on the type of application, its authentication requirements and how access to APIs must be delegated.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Implementing SAML 2.0 with Keycloak</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The most common way to deploy SAML 2.0 without reimplementing the protocol is to use an Identity and Access Management (IAM) solution. Keycloak, a leading open-source solution in this field, can act as a SAML 2.0 identity provider. It also supports OpenID Connect, allowing legacy SAML applications and newer OIDC developments to share the same authentication service.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Clever Cloud offers <a href="https://www.clever.cloud/product/managed-keycloak-as-a-service/">Keycloak as a Service</a>: a fully managed Keycloak service hosted in France and operated with the expertise of <a href="https://please-open.it/index.html?lang=en">Please Open It</a>, a partner specialising in Keycloak. This approach removes the burden of operating the identity server, including updates, availability and backups, from internal teams, while allowing them to retain control over SAML and OIDC settings.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"55px"} -->
<div style="height:55px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>« SAML 2.0 remains essential in enterprise environments because of its long history (2005) but also because of its network simplicity: everything passes through the user’s browser, with no direct connection required between the application and the identity server. In contrast, the modern OpenID Connect standard requires direct server-to-server communication to remain secure. OIDC’s ‘100% browser-based’ mode, the Implicit Flow, has now been abandoned because it is considered too vulnerable. »</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>— Mathieu Passenaud, Co-founder at Please Open It</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"55px"} -->
<div style="height:55px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"style":{"typography":{"textAlign":"center"}}} -->
<h2 class="wp-block-heading has-text-align-center">FAQ</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Is SAML 2.0 still used in 2026?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. Ratified in 2005, SAML 2.0 remains widely deployed in businesses, the public sector and academia for Single Sign-On and identity federation. It coexists with OpenID Connect, which is often preferred for new web and mobile projects.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What is the difference between SAML and SSO?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>SSO, or Single Sign-On, is a principle: users authenticate once to access multiple applications. SAML is one of the protocols that can implement this principle across domains. OpenID Connect is another.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does SAML handle authentication or authorisation?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>It can handle both, but it is mainly used for Single Sign-On and attribute exchange. The protocol can carry authorisation decisions, although this capability is rarely used in practice.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Should I choose SAML 2.0 or OpenID Connect?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The choice primarily depends on the protocol supported by the application. SAML 2.0 is suitable for services designed to use SAML federation, while OpenID Connect is generally appropriate for authenticating users in web and mobile applications. OAuth 2.0 access tokens are used to control access to APIs. Both approaches can coexist behind the same identity provider, such as Keycloak.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does Keycloak support SAML 2.0?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. Keycloak can act as a SAML 2.0 identity provider and also supports OpenID Connect, allowing both protocols to be used together.</p>
<!-- /wp:paragraph -->]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>French Managed Kubernetes: What Are the Alternatives to Hyperscalers in 2026?</title>
		<link>https://www.clever.cloud/blog/features/2026/09/09/french-managed-kubernetes-comparison/</link>
		
		<dc:creator><![CDATA[Marjorie Darrigade]]></dc:creator>
		<pubDate>Wed, 09 Sep 2026 09:21:19 +0000</pubDate>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Features]]></category>
		<category><![CDATA[Kubernetes]]></category>
		<category><![CDATA[managed services]]></category>
		<guid isPermaLink="false">https://www.clever.cloud/?p=25439</guid>

					<description><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/09/2026-09-07-clever-cloud-banniere-blog-kubef-en.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Kube FR" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/09/2026-09-07-clever-cloud-banniere-blog-kubef-en.png 800w, https://cdn.clever-cloud.com/uploads/2026/09/2026-09-07-clever-cloud-banniere-blog-kubef-en-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/09/2026-09-07-clever-cloud-banniere-blog-kubef-en-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">What Is a French Managed Kubernetes Service?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A French Kubernetes service is a managed Kubernetes service provided by a French company. Depending on the offering, the infrastructure may be located in France or elsewhere in Europe and may run on a public cloud, a private cloud or dedicated machines.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Why Choose a French Kubernetes Provider?</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Greater Digital Sovereignty</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Entrusting orchestration to AWS, Google Cloud or Azure exposes organisations to a proprietary ecosystem and a non-European legal framework. Choosing a domestic provider reduces this dependency and supports a broader digital sovereignty strategy that goes beyond technical portability alone.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Clear Infrastructure Location and Responsibility</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Knowing exactly where the control plane and worker nodes are running—and who is responsible for operating them—has become a key selection criterion for regulated industries and public-sector buyers alike.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Easier European Compliance</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Infrastructure operated in Europe can simplify certain compliance processes relating to data location and transfers outside the European Union.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Local Support and Contract Management</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Having a provider in the same time zone, billing in euros and documentation available in French can shorten resolution times and streamline contractual relationships.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">French Managed Kubernetes Providers</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The descriptions below reflect the offerings available at the time of writing. These services evolve rapidly, so always check the provider’s official website before making a decision.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">OVHcloud Managed Kubernetes Service (MKS)</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>OVHcloud offers <a href="https://www.ovhcloud.com/fr/public-cloud/kubernetes/" target="_blank" rel="noreferrer noopener nofollow">MKS</a>, its managed Kubernetes service for the public cloud, in two tiers. MKS Free provides a free managed control plane. MKS Standard, launched in September 2025, adds a 99.99% SLA, with a control plane distributed across a three-availability-zone region (initially Paris, followed by Milan) dedicated etcd storage of up to 8 GB, and a choice of CNI plugins, including Cilium. The service integrates with the OVHcloud Public Cloud ecosystem.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Scaleway Kubernetes Kapsule</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p><a href="https://www.scaleway.com/en/kubernetes-kapsule/" target="_blank" rel="noreferrer noopener nofollow">Kapsule</a> is a CNCF-certified managed Kubernetes service for the public cloud. Its shared control plane is free, with a dedicated control plane available as an option for mission-critical workloads, while autoscaling is supported natively. The service integrates with Scaleway’s services and emphasises digital sovereignty and GDPR compliance for the European market.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Clever Kubernetes Engine (CKE)</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p><a href="https://www.clever.cloud/product/kubernetes/" target="_blank" rel="noreferrer noopener">CKE</a> is Clever Cloud’s managed Kubernetes service. It runs on infrastructure located in France, with no dependency on a foreign hyperscaler. Each cluster runs on its own virtual machines, with no infrastructure shared between customers. The control-plane architecture can be configured according to the selected topology, ranging from an all-in-one bundle to one VM per component. The experience remains true to standard Kubernetes, with no lock-in mechanisms or need to rewrite manifests. Cluster state is stored in Materia etcd, an implementation of the etcd protocol developed in France and built on FoundationDB. CKE integrates with managed databases, S3-compatible object storage, IAM, observability services and private networking through Network Groups. The product is currently in <strong>public beta</strong>.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Comparing French Managed Kubernetes Services</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>French Kubernetes offerings are based on different architectures and operating models. The most useful comparison criteria are infrastructure location, hosting model, availability guarantees, level of integration with cloud services and compatibility with the standard Kubernetes ecosystem.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<style>
  .cc-table-wrap {
    width: 100%;
    overflow-x: auto;
  }

  .cc-table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 17px;
    font-family: "Plus Jakarta Sans", "PlusJakartaSans", -apple-system,
      BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    color: #111827;
  }

  .cc-table th,
  .cc-table td {
    padding: 22px 8px;
    text-align: left;
    vertical-align: top;
    line-height: 1.4;
  }

  .cc-table thead th {
    font-weight: 700;
    text-align: center;
  }

  .cc-table tbody td:first-child {
    font-weight: 700;
  }

  .cc-table tbody tr + tr td,
  .cc-table tbody tr:first-child td {
    border-top: 1px solid #deddee;
  }

  .cc-table th + th,
  .cc-table td + td {
    border-left: 1px solid #deddee;
  }

  .cc-table th:nth-child(1),
  .cc-table td:nth-child(1) {
    width: 21%;
  }

  .cc-table th:nth-child(2),
  .cc-table td:nth-child(2),
  .cc-table th:nth-child(3),
  .cc-table td:nth-child(3),
  .cc-table th:nth-child(4),
  .cc-table td:nth-child(4) {
    width: 26.33%;
  }

  @media (max-width: 767px) {
    .cc-table {
      font-size: 15px;
    }

    .cc-table th,
    .cc-table td {
      padding: 18px 8px;
    }
  }
</style>

<div class="cc-table-wrap">
  <table class="cc-table">
    <thead>
      <tr>
        <th>Criterion</th>
        <th>OVHcloud MKS</th>
        <th>Scaleway Kapsule</th>
        <th>Clever Cloud CKE</th>
      </tr>
    </thead>

    <tbody>
      <tr>
        <td>Location</td>
        <td>France / Europe</td>
        <td>France / Europe</td>
        <td>France</td>
      </tr>

      <tr>
        <td>Infrastructure model</td>
        <td>Public cloud</td>
        <td>Public cloud</td>
        <td>Dedicated VMs for each cluster</td>
      </tr>

      <tr>
        <td>State storage (etcd)</td>
        <td>Dedicated etcd storage of up to 8 GB (Standard)</td>
        <td>Managed etcd</td>
        <td>Serverless Materia etcd (FoundationDB)</td>
      </tr>

      <tr>
        <td>Compatibility</td>
        <td>Standard Kubernetes</td>
        <td>Standard, CNCF-certified</td>
        <td>Vanilla Kubernetes, with no lock-in</td>
      </tr>

      <tr>
        <td>Integration</td>
        <td>OVHcloud ecosystem</td>
        <td>Scaleway ecosystem</td>
        <td>Clever Cloud ecosystem</td>
      </tr>

      <tr>
        <td>Availability / SLA</td>
        <td>99.99% SLA (MKS Standard)</td>
        <td>Optional dedicated control plane</td>
        <td>No SLA yet</td>
      </tr>

      <tr>
        <td>Maturity</td>
        <td>Generally available</td>
        <td>Generally available</td>
        <td>Public beta</td>
      </tr>
    </tbody>
  </table>
</div>
<!-- /wp:html -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>None of these offerings is inherently superior to the others. The right choice depends on the required operating model and the level of assurance expected.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">French Kubernetes vs AWS EKS, Google GKE and Azure AKS</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>AWS EKS, Google GKE and Azure AKS remain the most comprehensive managed Kubernetes services in terms of their wider service portfolios and global reach. In return, they increase dependency on their respective ecosystems. A French offering addresses the same <a href="https://www.clever.cloud/blog/engineering/2026/07/03/kubernetes-orchestration-containers-what-is-it-for/" target="_blank" rel="noreferrer noopener">orchestration</a> requirements while keeping the control plane and data subject to European law.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>French providers host their infrastructure in France or elsewhere in Europe, under European law and with locally operated integrations. Hyperscalers offer a broader service portfolio and global reach, at the cost of greater dependency on their ecosystems.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"45px"} -->
<div style="height:45px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:acf/avantages {"name":"acf/avantages","data":{"title":"How to Choose a \u003cb\u003eFrench Kubernetes Provider\u003c/b\u003e","_title":"field_63878c81ae569","content":"\u003cp data-pm-slice=\u00221 1 []\u0022\u003eOnce you have decided to use a French provider, the selection criteria should focus on what genuinely distinguishes the providers:\u003c/p\u003e","_content":"field_63878c9cae56a","main_picture":"","_main_picture":"field_63878cd5ae56b","advantages_collection_0_picto":"","_advantages_collection_0_picto":"field_6397417cac52f","advantages_collection_0_title":"Actual Infrastructure Location","_advantages_collection_0_title":"field_63878d1aae56d","advantages_collection_0_content":"The location of the datacenters, not merely the provider’s registered office.","_advantages_collection_0_content":"field_63878d4dae56e","advantages_collection_0_link":"","_advantages_collection_0_link":"field_63878d66ae56f","advantages_collection_1_picto":"","_advantages_collection_1_picto":"field_6397417cac52f","advantages_collection_1_title":"Effective Digital Sovereignty","_advantages_collection_1_title":"field_63878d1aae56d","advantages_collection_1_content":"The applicable law and the absence of a foreign hyperscaler from the hosting chain.","_advantages_collection_1_content":"field_63878d4dae56e","advantages_collection_1_link":"","_advantages_collection_1_link":"field_63878d66ae56f","advantages_collection_2_picto":"","_advantages_collection_2_picto":"field_6397417cac52f","advantages_collection_2_title":"Regulatory Compliance","_advantages_collection_2_title":"field_63878d1aae56d","advantages_collection_2_content":"GDPR and requirements specific to regulated industries.","_advantages_collection_2_content":"field_63878d4dae56e","advantages_collection_2_link":"","_advantages_collection_2_link":"field_63878d66ae56f","advantages_collection_3_picto":"","_advantages_collection_3_picto":"field_6397417cac52f","advantages_collection_3_title":"Support and billing","_advantages_collection_3_title":"field_63878d1aae56d","advantages_collection_3_content":"In France.","_advantages_collection_3_content":"field_63878d4dae56e","advantages_collection_3_link":"","_advantages_collection_3_link":"field_63878d66ae56f","advantages_collection_4_picto":"","_advantages_collection_4_picto":"field_6397417cac52f","advantages_collection_4_title":"Standards compatibility","_advantages_collection_4_title":"field_63878d1aae56d","advantages_collection_4_content":"And workload portability.","_advantages_collection_4_content":"field_63878d4dae56e","advantages_collection_4_link":"","_advantages_collection_4_link":"field_63878d66ae56f","advantages_collection_5_picto":"","_advantages_collection_5_picto":"field_6397417cac52f","advantages_collection_5_title":"Maturity of the offering","_advantages_collection_5_title":"field_63878d1aae56d","advantages_collection_5_content":"General availability or beta status, together with the associated SLA.","_advantages_collection_5_content":"field_63878d4dae56e","advantages_collection_5_link":"","_advantages_collection_5_link":"field_63878d66ae56f","advantages_collection":6,"_advantages_collection":"field_63878cecae56c"},"mode":"auto"} /-->

<!-- wp:paragraph -->
<p>The general criteria for selecting a managed cluster (irrespective of the national dimension) also warrant careful consideration. These include version policies, autoscaling, storage and the responsibility model.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

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

<!-- wp:paragraph -->
<p>The best French Kubernetes service ultimately depends on your specific context. Some organisations will prioritise a generally available offering backed by strong contractual guarantees, while others will seek close integration with their cloud platform or existing environment. OVHcloud, Scaleway and Clever Cloud currently offer different approaches to managed Kubernetes. The choice primarily depends on operational, governance and compliance requirements, as well as the expected level of maturity.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"150px"} -->
<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"level":1,"style":{"typography":{"textAlign":"center"}}} -->
<h1 class="wp-block-heading has-text-align-center">FAQ</h1>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Are There Any French Managed Kubernetes Providers?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. Several French companies offer managed Kubernetes services, including OVHcloud with Managed Kubernetes Service, Scaleway with Kubernetes Kapsule and Clever Cloud with Clever Kubernetes Engine. These solutions differ in their infrastructure models, level of managed service and integration with each provider’s cloud ecosystem.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What Is the Difference Between French and European Kubernetes?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A French Kubernetes service is provided by a French company, while a European Kubernetes service is provided by a company established in the European Union. In both cases, it is important to examine the infrastructure’s actual location, the entity that operates the service and the law applicable to the data.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does a French Provider Guarantee Digital Sovereignty?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. A provider’s nationality alone is not enough to guarantee sovereignty. Sovereignty also depends on the infrastructure operator, any subcontractors involved in the hosting chain and the legal frameworks to which they are subject.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can You Use Helm and Terraform with a French Kubernetes Service?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes, provided that the service uses a standard Kubernetes implementation. The services offered by OVHcloud, Scaleway and Clever Cloud remain compatible with widely used ecosystem tools such as kubectl, Helm and Terraform, as well as GitOps practices.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">How Do French Kubernetes Services Compare with AWS EKS?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>AWS EKS benefits from an extensive portfolio of cloud services and a global presence. French offerings generally emphasise operations carried out in Europe, local support and integration with locally operated infrastructure. The right choice depends on each project’s technical, regulatory and organisational constraints.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What Is the Difference Between Managed and Self-Hosted Kubernetes?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The main difference lies in operational responsibility. With managed Kubernetes, the provider operates the control plane and handles part of the platform’s maintenance. With self-hosted Kubernetes, the organisation remains responsible for installing, updating, monitoring and securing the cluster, as well as ensuring its availability. Managed Kubernetes reduces the operational burden, while self-hosting provides greater control over the infrastructure.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can You Migrate from One Kubernetes Provider to Another?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes, provided that a standard Kubernetes implementation is used. YAML manifests, Helm charts and deployment tools generally remain portable from one provider to another. However, certain provider-specific dependencies, such as storage, networking and managed services, may require adaptations.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Which French Kubernetes Service Is Best for an SME?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The right choice depends on the project’s requirements. An SME may prefer an offering with a free control plane for its initial deployments or seek closer integration with a particular cloud ecosystem. In all cases, compatibility with standard Kubernetes makes it easier to move to another offering if requirements change.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p></p>
<!-- /wp:paragraph -->]]></description>
										<content:encoded><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/09/2026-09-07-clever-cloud-banniere-blog-kubef-en.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Kube FR" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/09/2026-09-07-clever-cloud-banniere-blog-kubef-en.png 800w, https://cdn.clever-cloud.com/uploads/2026/09/2026-09-07-clever-cloud-banniere-blog-kubef-en-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/09/2026-09-07-clever-cloud-banniere-blog-kubef-en-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">What Is a French Managed Kubernetes Service?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A French Kubernetes service is a managed Kubernetes service provided by a French company. Depending on the offering, the infrastructure may be located in France or elsewhere in Europe and may run on a public cloud, a private cloud or dedicated machines.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Why Choose a French Kubernetes Provider?</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Greater Digital Sovereignty</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Entrusting orchestration to AWS, Google Cloud or Azure exposes organisations to a proprietary ecosystem and a non-European legal framework. Choosing a domestic provider reduces this dependency and supports a broader digital sovereignty strategy that goes beyond technical portability alone.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Clear Infrastructure Location and Responsibility</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Knowing exactly where the control plane and worker nodes are running—and who is responsible for operating them—has become a key selection criterion for regulated industries and public-sector buyers alike.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Easier European Compliance</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Infrastructure operated in Europe can simplify certain compliance processes relating to data location and transfers outside the European Union.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Local Support and Contract Management</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Having a provider in the same time zone, billing in euros and documentation available in French can shorten resolution times and streamline contractual relationships.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">French Managed Kubernetes Providers</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The descriptions below reflect the offerings available at the time of writing. These services evolve rapidly, so always check the provider’s official website before making a decision.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">OVHcloud Managed Kubernetes Service (MKS)</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>OVHcloud offers <a href="https://www.ovhcloud.com/fr/public-cloud/kubernetes/" target="_blank" rel="noreferrer noopener nofollow">MKS</a>, its managed Kubernetes service for the public cloud, in two tiers. MKS Free provides a free managed control plane. MKS Standard, launched in September 2025, adds a 99.99% SLA, with a control plane distributed across a three-availability-zone region (initially Paris, followed by Milan) dedicated etcd storage of up to 8 GB, and a choice of CNI plugins, including Cilium. The service integrates with the OVHcloud Public Cloud ecosystem.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Scaleway Kubernetes Kapsule</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p><a href="https://www.scaleway.com/en/kubernetes-kapsule/" target="_blank" rel="noreferrer noopener nofollow">Kapsule</a> is a CNCF-certified managed Kubernetes service for the public cloud. Its shared control plane is free, with a dedicated control plane available as an option for mission-critical workloads, while autoscaling is supported natively. The service integrates with Scaleway’s services and emphasises digital sovereignty and GDPR compliance for the European market.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Clever Kubernetes Engine (CKE)</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p><a href="https://www.clever.cloud/product/kubernetes/" target="_blank" rel="noreferrer noopener">CKE</a> is Clever Cloud’s managed Kubernetes service. It runs on infrastructure located in France, with no dependency on a foreign hyperscaler. Each cluster runs on its own virtual machines, with no infrastructure shared between customers. The control-plane architecture can be configured according to the selected topology, ranging from an all-in-one bundle to one VM per component. The experience remains true to standard Kubernetes, with no lock-in mechanisms or need to rewrite manifests. Cluster state is stored in Materia etcd, an implementation of the etcd protocol developed in France and built on FoundationDB. CKE integrates with managed databases, S3-compatible object storage, IAM, observability services and private networking through Network Groups. The product is currently in <strong>public beta</strong>.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Comparing French Managed Kubernetes Services</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>French Kubernetes offerings are based on different architectures and operating models. The most useful comparison criteria are infrastructure location, hosting model, availability guarantees, level of integration with cloud services and compatibility with the standard Kubernetes ecosystem.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<style>
  .cc-table-wrap {
    width: 100%;
    overflow-x: auto;
  }

  .cc-table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 17px;
    font-family: "Plus Jakarta Sans", "PlusJakartaSans", -apple-system,
      BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    color: #111827;
  }

  .cc-table th,
  .cc-table td {
    padding: 22px 8px;
    text-align: left;
    vertical-align: top;
    line-height: 1.4;
  }

  .cc-table thead th {
    font-weight: 700;
    text-align: center;
  }

  .cc-table tbody td:first-child {
    font-weight: 700;
  }

  .cc-table tbody tr + tr td,
  .cc-table tbody tr:first-child td {
    border-top: 1px solid #deddee;
  }

  .cc-table th + th,
  .cc-table td + td {
    border-left: 1px solid #deddee;
  }

  .cc-table th:nth-child(1),
  .cc-table td:nth-child(1) {
    width: 21%;
  }

  .cc-table th:nth-child(2),
  .cc-table td:nth-child(2),
  .cc-table th:nth-child(3),
  .cc-table td:nth-child(3),
  .cc-table th:nth-child(4),
  .cc-table td:nth-child(4) {
    width: 26.33%;
  }

  @media (max-width: 767px) {
    .cc-table {
      font-size: 15px;
    }

    .cc-table th,
    .cc-table td {
      padding: 18px 8px;
    }
  }
</style>

<div class="cc-table-wrap">
  <table class="cc-table">
    <thead>
      <tr>
        <th>Criterion</th>
        <th>OVHcloud MKS</th>
        <th>Scaleway Kapsule</th>
        <th>Clever Cloud CKE</th>
      </tr>
    </thead>

    <tbody>
      <tr>
        <td>Location</td>
        <td>France / Europe</td>
        <td>France / Europe</td>
        <td>France</td>
      </tr>

      <tr>
        <td>Infrastructure model</td>
        <td>Public cloud</td>
        <td>Public cloud</td>
        <td>Dedicated VMs for each cluster</td>
      </tr>

      <tr>
        <td>State storage (etcd)</td>
        <td>Dedicated etcd storage of up to 8 GB (Standard)</td>
        <td>Managed etcd</td>
        <td>Serverless Materia etcd (FoundationDB)</td>
      </tr>

      <tr>
        <td>Compatibility</td>
        <td>Standard Kubernetes</td>
        <td>Standard, CNCF-certified</td>
        <td>Vanilla Kubernetes, with no lock-in</td>
      </tr>

      <tr>
        <td>Integration</td>
        <td>OVHcloud ecosystem</td>
        <td>Scaleway ecosystem</td>
        <td>Clever Cloud ecosystem</td>
      </tr>

      <tr>
        <td>Availability / SLA</td>
        <td>99.99% SLA (MKS Standard)</td>
        <td>Optional dedicated control plane</td>
        <td>No SLA yet</td>
      </tr>

      <tr>
        <td>Maturity</td>
        <td>Generally available</td>
        <td>Generally available</td>
        <td>Public beta</td>
      </tr>
    </tbody>
  </table>
</div>
<!-- /wp:html -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>None of these offerings is inherently superior to the others. The right choice depends on the required operating model and the level of assurance expected.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">French Kubernetes vs AWS EKS, Google GKE and Azure AKS</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>AWS EKS, Google GKE and Azure AKS remain the most comprehensive managed Kubernetes services in terms of their wider service portfolios and global reach. In return, they increase dependency on their respective ecosystems. A French offering addresses the same <a href="https://www.clever.cloud/blog/engineering/2026/07/03/kubernetes-orchestration-containers-what-is-it-for/" target="_blank" rel="noreferrer noopener">orchestration</a> requirements while keeping the control plane and data subject to European law.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>French providers host their infrastructure in France or elsewhere in Europe, under European law and with locally operated integrations. Hyperscalers offer a broader service portfolio and global reach, at the cost of greater dependency on their ecosystems.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"45px"} -->
<div style="height:45px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:acf/avantages {"name":"acf/avantages","data":{"title":"How to Choose a \u003cb\u003eFrench Kubernetes Provider\u003c/b\u003e","_title":"field_63878c81ae569","content":"\u003cp data-pm-slice=\u00221 1 []\u0022\u003eOnce you have decided to use a French provider, the selection criteria should focus on what genuinely distinguishes the providers:\u003c/p\u003e","_content":"field_63878c9cae56a","main_picture":"","_main_picture":"field_63878cd5ae56b","advantages_collection_0_picto":"","_advantages_collection_0_picto":"field_6397417cac52f","advantages_collection_0_title":"Actual Infrastructure Location","_advantages_collection_0_title":"field_63878d1aae56d","advantages_collection_0_content":"The location of the datacenters, not merely the provider’s registered office.","_advantages_collection_0_content":"field_63878d4dae56e","advantages_collection_0_link":"","_advantages_collection_0_link":"field_63878d66ae56f","advantages_collection_1_picto":"","_advantages_collection_1_picto":"field_6397417cac52f","advantages_collection_1_title":"Effective Digital Sovereignty","_advantages_collection_1_title":"field_63878d1aae56d","advantages_collection_1_content":"The applicable law and the absence of a foreign hyperscaler from the hosting chain.","_advantages_collection_1_content":"field_63878d4dae56e","advantages_collection_1_link":"","_advantages_collection_1_link":"field_63878d66ae56f","advantages_collection_2_picto":"","_advantages_collection_2_picto":"field_6397417cac52f","advantages_collection_2_title":"Regulatory Compliance","_advantages_collection_2_title":"field_63878d1aae56d","advantages_collection_2_content":"GDPR and requirements specific to regulated industries.","_advantages_collection_2_content":"field_63878d4dae56e","advantages_collection_2_link":"","_advantages_collection_2_link":"field_63878d66ae56f","advantages_collection_3_picto":"","_advantages_collection_3_picto":"field_6397417cac52f","advantages_collection_3_title":"Support and billing","_advantages_collection_3_title":"field_63878d1aae56d","advantages_collection_3_content":"In France.","_advantages_collection_3_content":"field_63878d4dae56e","advantages_collection_3_link":"","_advantages_collection_3_link":"field_63878d66ae56f","advantages_collection_4_picto":"","_advantages_collection_4_picto":"field_6397417cac52f","advantages_collection_4_title":"Standards compatibility","_advantages_collection_4_title":"field_63878d1aae56d","advantages_collection_4_content":"And workload portability.","_advantages_collection_4_content":"field_63878d4dae56e","advantages_collection_4_link":"","_advantages_collection_4_link":"field_63878d66ae56f","advantages_collection_5_picto":"","_advantages_collection_5_picto":"field_6397417cac52f","advantages_collection_5_title":"Maturity of the offering","_advantages_collection_5_title":"field_63878d1aae56d","advantages_collection_5_content":"General availability or beta status, together with the associated SLA.","_advantages_collection_5_content":"field_63878d4dae56e","advantages_collection_5_link":"","_advantages_collection_5_link":"field_63878d66ae56f","advantages_collection":6,"_advantages_collection":"field_63878cecae56c"},"mode":"auto"} /-->

<!-- wp:paragraph -->
<p>The general criteria for selecting a managed cluster (irrespective of the national dimension) also warrant careful consideration. These include version policies, autoscaling, storage and the responsibility model.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

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

<!-- wp:paragraph -->
<p>The best French Kubernetes service ultimately depends on your specific context. Some organisations will prioritise a generally available offering backed by strong contractual guarantees, while others will seek close integration with their cloud platform or existing environment. OVHcloud, Scaleway and Clever Cloud currently offer different approaches to managed Kubernetes. The choice primarily depends on operational, governance and compliance requirements, as well as the expected level of maturity.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"150px"} -->
<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"level":1,"style":{"typography":{"textAlign":"center"}}} -->
<h1 class="wp-block-heading has-text-align-center">FAQ</h1>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Are There Any French Managed Kubernetes Providers?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. Several French companies offer managed Kubernetes services, including OVHcloud with Managed Kubernetes Service, Scaleway with Kubernetes Kapsule and Clever Cloud with Clever Kubernetes Engine. These solutions differ in their infrastructure models, level of managed service and integration with each provider’s cloud ecosystem.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What Is the Difference Between French and European Kubernetes?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A French Kubernetes service is provided by a French company, while a European Kubernetes service is provided by a company established in the European Union. In both cases, it is important to examine the infrastructure’s actual location, the entity that operates the service and the law applicable to the data.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does a French Provider Guarantee Digital Sovereignty?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. A provider’s nationality alone is not enough to guarantee sovereignty. Sovereignty also depends on the infrastructure operator, any subcontractors involved in the hosting chain and the legal frameworks to which they are subject.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can You Use Helm and Terraform with a French Kubernetes Service?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes, provided that the service uses a standard Kubernetes implementation. The services offered by OVHcloud, Scaleway and Clever Cloud remain compatible with widely used ecosystem tools such as kubectl, Helm and Terraform, as well as GitOps practices.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">How Do French Kubernetes Services Compare with AWS EKS?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>AWS EKS benefits from an extensive portfolio of cloud services and a global presence. French offerings generally emphasise operations carried out in Europe, local support and integration with locally operated infrastructure. The right choice depends on each project’s technical, regulatory and organisational constraints.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What Is the Difference Between Managed and Self-Hosted Kubernetes?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The main difference lies in operational responsibility. With managed Kubernetes, the provider operates the control plane and handles part of the platform’s maintenance. With self-hosted Kubernetes, the organisation remains responsible for installing, updating, monitoring and securing the cluster, as well as ensuring its availability. Managed Kubernetes reduces the operational burden, while self-hosting provides greater control over the infrastructure.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can You Migrate from One Kubernetes Provider to Another?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes, provided that a standard Kubernetes implementation is used. YAML manifests, Helm charts and deployment tools generally remain portable from one provider to another. However, certain provider-specific dependencies, such as storage, networking and managed services, may require adaptations.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Which French Kubernetes Service Is Best for an SME?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The right choice depends on the project’s requirements. An SME may prefer an offering with a free control plane for its initial deployments or seek closer integration with a particular cloud ecosystem. In all cases, compatibility with standard Kubernetes makes it easier to move to another offering if requirements change.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p></p>
<!-- /wp:paragraph -->]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Managed Kubernetes: benefits, limitations and selection criteria</title>
		<link>https://www.clever.cloud/blog/features/2026/07/24/managed-kubernetes-benefits-limitations-and-selection-criteria/</link>
		
		<dc:creator><![CDATA[Marjorie Darrigade]]></dc:creator>
		<pubDate>Fri, 24 Jul 2026 11:13:45 +0000</pubDate>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Features]]></category>
		<category><![CDATA[Kubernetes]]></category>
		<category><![CDATA[managed services]]></category>
		<guid isPermaLink="false">https://www.clever.cloud/?p=25100</guid>

					<description><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/07/2026-07-24-clever-cloud-banniere-blog-kubem-eng.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="managed kubernetes" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/07/2026-07-24-clever-cloud-banniere-blog-kubem-eng.png 800w, https://cdn.clever-cloud.com/uploads/2026/07/2026-07-24-clever-cloud-banniere-blog-kubem-eng-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/07/2026-07-24-clever-cloud-banniere-blog-kubem-eng-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>The control plane consists of Kubernetes’ standard components: the API server, etcd (the datastore that stores the cluster’s state), the scheduler and the controller manager. If the control plane fails, workloads that are already running continue to operate, but the cluster can no longer be managed: no new deployments, no scaling, and no response to kubectl commands. Managed services remove responsibility for precisely this layer from engineering teams.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Why is Kubernetes difficult to operate yourself?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p><a href="https://www.clever.cloud/blog/engineering/2026/05/19/k8s-kubernetes-definition-standard/">Kubernetes</a> &nbsp;is a container orchestration standard, not a turnkey product. Deploying a cluster without a managed layer means handling:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>version upgrades (the Kubernetes project actively supports the three most recent minor releases);</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>internal TLS certificate rotation;</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>high availability of the control plane across multiple nodes;</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>backup and consistency of the etcd datastore;</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>security patches, often under tight time constraints.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>These tasks are repetitive, consume valuable engineering time, and are a frequent source of incidents when not performed correctly. Managed services are specifically designed to remove this operational burden from product teams.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Use cases: when managed Kubernetes delivers value</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Kubernetes—whether managed or self-managed—becomes relevant in specific scenarios. It is not a systematic replacement for a <a href="https://www.clever.cloud/clever-cloud-paas/">PaaS</a>: the two approaches address different needs.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Managed Kubernetes is well suited when:</h3>
<!-- /wp:heading -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>the architecture includes multiple interdependent services requiring <a href="https://www.clever.cloud/blog/engineering/2026/07/03/kubernetes-orchestration-containers-what-is-it-for/">fine-grained orchestration</a> (rolling updates, resource management by namespace);</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>workloads are already built for Kubernetes and delivered as Helm charts or YAML manifests;</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>the team requires multi-cluster or hybrid environments (on-premises + cloud);</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>operating the control plane represents a real and measurable cost for SRE or DevOps teams.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">A PaaS remains a better fit when:</h3>
<!-- /wp:heading -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>the application deployment model (code push with platform-managed build and runtime) matches the way your team works;</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>you want to focus on application code without managing orchestration primitives (networking, scheduling, node management);</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>your applications do not require fine-grained control over workload placement or the cluster’s network topology.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Comparison table: self-managed Kubernetes vs managed Kubernetes vs PaaS</h2>
<!-- /wp:heading -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<style>
  .cc-table-wrap {
    width: 100%;
    overflow-x: auto;
  }

  .cc-table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 17px;
    font-family: "Plus Jakarta Sans", "PlusJakartaSans", -apple-system,
      BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    color: #111827;
  }

  .cc-table th,
  .cc-table td {
    padding: 12px 16px;
    text-align: left;
    vertical-align: top;
    line-height: 1.6;
  }

  .cc-table thead th {
    font-weight: 700;
    text-align: center;
  }

  .cc-table tbody td:first-child {
    font-weight: 700;
  }

  .cc-table tbody tr + tr td,
  .cc-table tbody tr:first-child td {
    border-top: 1px solid #deddee;
  }

  .cc-table th + th,
  .cc-table td + td {
    border-left: 1px solid #deddee;
  }

  .cc-table th:nth-child(1),
  .cc-table td:nth-child(1) {
    width: 30%;
  }

  .cc-table th:nth-child(2),
  .cc-table td:nth-child(2),
  .cc-table th:nth-child(3),
  .cc-table td:nth-child(3),
  .cc-table th:nth-child(4),
  .cc-table td:nth-child(4) {
    width: 23.33%;
  }

  @media (max-width: 767px) {
    .cc-table {
      font-size: 15px;
    }

    .cc-table th,
    .cc-table td {
      padding: 10px 12px;
    }
  }
</style>

<div class="cc-table-wrap">
  <table class="cc-table">
    <thead>
      <tr>
        <th>Criteria</th>
        <th>Self-managed Kubernetes</th>
        <th>Managed Kubernetes</th>
        <th>PaaS</th>
      </tr>
    </thead>

    <tbody>
      <tr>
        <td>Control plane management</td>
        <td>Managed by the team</td>
        <td>Operated by the provider</td>
        <td>Not exposed</td>
      </tr>

      <tr>
        <td>kubectl / Helm compatibility</td>
        <td>Full</td>
        <td>Full (vanilla)</td>
        <td>Not applicable</td>
      </tr>

      <tr>
        <td>Architectural flexibility</td>
        <td>Maximum</td>
        <td>High</td>
        <td>Limited to PaaS primitives</td>
      </tr>

      <tr>
        <td>Operational overhead</td>
        <td>High</td>
        <td>Reduced</td>
        <td>Low</td>
      </tr>

      <tr>
        <td>Learning curve</td>
        <td>Steep</td>
        <td>Moderate</td>
        <td>Low</td>
      </tr>

      <tr>
        <td>Kubernetes updates</td>
        <td>Manual</td>
        <td>Handled by the provider</td>
        <td>Not applicable</td>
      </tr>

      <tr>
        <td>Infrastructure engineering cost</td>
        <td>High</td>
        <td>Reduced</td>
        <td>Minimal</td>
      </tr>

      <tr>
        <td>Workload portability</td>
        <td>Full</td>
        <td>Full (if vanilla)</td>
        <td>Depends on the PaaS</td>
      </tr>

      <tr>
        <td>Control plane SLA</td>
        <td>N/A<br>(self-operated)</td>
        <td>Varies by offering</td>
        <td>Varies</td>
      </tr>
    </tbody>
  </table>
</div>
<!-- /wp:html -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p><strong>Note:</strong> here, <em>vanilla</em> refers to a standard Kubernetes experience, with no changes to native Kubernetes behaviour and no proprietary tooling imposed.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Common mistakes when choosing or adopting managed Kubernetes</h2>
<!-- /wp:heading -->

<!-- wp:acf/arguments {"name":"acf/arguments","data":{"items_0_title":"Confusing “managed” with “no operational responsibility”","_items_0_title":"field_638a066e4d2ec","items_0_short_description":"The provider manages the control plane. Node pools, network configuration, RBAC policies, resource limits and workload security remain the user’s responsibility. Managed Kubernetes reduces the operational burden; it does not eliminate it.","_items_0_short_description":"field_638a068d4d2ed","items_0_full_description":"","_items_0_full_description":"field_638a06af4d2ee","items_1_title":"Moving to Kubernetes by default without assessing actual requirements","_items_1_title":"field_638a066e4d2ec","items_1_short_description":"Kubernetes is often adopted because it has become the industry standard, not because it solves a specific problem. For lighter requirements, other distributions (such as \u003ca href=\u0022https://www.clever.cloud/blog/features/2026/05/28/k3s-vs-k8s-what-are-the-differences-and-which-one-should-you-choose-in-2026/\u0022\u003eK3s\u003c/a\u003e) are available and should be evaluated before deploying a full Kubernetes cluster. An application that fits a PaaS deployment model will often be better served by a PaaS: fewer orchestration primitives to manage for an equivalent production outcome.","_items_1_short_description":"field_638a068d4d2ed","items_1_full_description":"","_items_1_full_description":"field_638a06af4d2ee","items_2_title":"Ignoring the release policy","_items_2_title":"field_638a066e4d2ec","items_2_short_description":"The Kubernetes project supports the three most recent minor releases (the “n-2” policy). A cluster that is not kept up to date eventually falls out of support and no longer receives security patches. Verifying that a managed provider follows this policy (and how unsupported cluster versions are handled) is a selection criterion in its own right.","_items_2_short_description":"field_638a068d4d2ed","items_2_full_description":"","_items_2_full_description":"field_638a06af4d2ee","items_3_title":"Overlooking the risk of vendor lock-in","_items_3_title":"field_638a066e4d2ec","items_3_short_description":"Some managed offerings introduce proprietary abstractions, such as non-standard CRDs, provider-specific networking integrations and provider-specific deployment tools, that make migration difficult. A vanilla offering, with no changes to Kubernetes’ native behaviour, ensures portability of existing manifests and workflows.","_items_3_short_description":"field_638a068d4d2ed","items_3_full_description":"","_items_3_full_description":"field_638a06af4d2ee","items_4_title":"Evaluating the service solely on its upfront price","_items_4_title":"field_638a066e4d2ec","items_4_short_description":"The real cost of a Kubernetes cluster includes the engineering time spent maintaining it. A managed service with a higher list price may have a lower total cost of ownership if it eliminates several days of operational work each month.","_items_4_short_description":"field_638a068d4d2ed","items_4_full_description":"","_items_4_full_description":"field_638a06af4d2ee","items":5,"_items":"field_638a065a4d2eb"},"mode":"preview"} /-->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:acf/avantages {"name":"acf/avantages","data":{"title":"Which option should you choose? \u003cbr\u003e\u003cb\u003eA decision guide\u003c/b\u003e","_title":"field_63878c81ae569","content":"","_content":"field_63878c9cae56a","main_picture":"","_main_picture":"field_63878cd5ae56b","advantages_collection_0_picto":"","_advantages_collection_0_picto":"field_6397417cac52f","advantages_collection_0_title":"Choose a PaaS if","_advantages_collection_0_title":"field_63878d1aae56d","advantages_collection_0_content":"its deployment model matches the way your team works: you deliver code, while the platform handles builds, runtime and infrastructure. You retain control over your applications without managing Kubernetes orchestration primitives.","_advantages_collection_0_content":"field_63878d4dae56e","advantages_collection_0_link":"","_advantages_collection_0_link":"field_63878d66ae56f","advantages_collection_1_picto":"","_advantages_collection_1_picto":"field_6397417cac52f","advantages_collection_1_title":"Choose managed Kubernetes if","_advantages_collection_1_title":"field_63878d1aae56d","advantages_collection_1_content":"your architecture includes multiple interdependent services, distributed deployments or third-party software already packaged for Kubernetes. A managed service lets you keep your existing tools (kubectl, Helm, Terraform, GitOps) while delegating operation of the control plane.","_advantages_collection_1_content":"field_63878d4dae56e","advantages_collection_1_link":"","_advantages_collection_1_link":"field_63878d66ae56f","advantages_collection_2_picto":"","_advantages_collection_2_picto":"field_6397417cac52f","advantages_collection_2_title":"Choose self-managed Kubernetes if","_advantages_collection_2_title":"field_63878d1aae56d","advantages_collection_2_content":"you have highly specific infrastructure requirements (mandatory on-premises deployment, network configurations unavailable from cloud providers, or sovereignty requirements incompatible with third-party hosting).","_advantages_collection_2_content":"field_63878d4dae56e","advantages_collection_2_link":"","_advantages_collection_2_link":"field_63878d66ae56f","advantages_collection":3,"_advantages_collection":"field_63878cecae56c"},"mode":"preview"} /-->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Managed Kubernetes in Europe: which sovereignty criteria matter?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>For organisations subject to the GDPR, sector-specific regulations (healthcare, public sector, defence) or data residency requirements, where the cluster is hosted is a compliance issue, not just a performance consideration.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Points to verify:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>physical location of the&nbsp; &nbsp; datacenters (country and applicable jurisdiction);</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>identity of the operator and the involvement of foreign subcontractors in the hosting chain;</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>infrastructure certifications (SecNumCloud, ISO 27001, HDS, depending on the provider and the offering);</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>potential access to data by non-European third parties, particularly under extraterritorial legislation.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>A managed Kubernetes service <a href="https://www.clever.cloud/blog/features/2026/09/09/french-managed-kubernetes-comparison/">operated in France by a French provider</a> addresses these requirements without requiring additional user-side configuration. This is the approach taken by <a href="https://www.clever.cloud/product/kubernetes/">Clever Kubernetes Engine (CKE)</a>, operated end to end in France by Clever Cloud, with no foreign hyperscaler involved in the hosting chain.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

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

<!-- wp:paragraph -->
<p>Managed Kubernetes is relevant when your organisation already relies on Kubernetes and maintaining the control plane represents a meaningful operational burden. It is not a universal solution: when a PaaS deployment model matches the way your team works, it often remains the most straightforward choice. For organisations with European sovereignty requirements, the choice of provider and hosting location is critical.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>The key selection criteria are vanilla compatibility (no vendor lock-in), the release policy, a clear division of responsibilities between provider and user, and the overall cost model: list price plus internal engineering costs.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"150px"} -->
<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"level":1,"style":{"typography":{"textAlign":"center"}}} -->
<h1 class="wp-block-heading has-text-align-center">FAQ</h1>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What is managed Kubernetes?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A service in which the cloud provider manages the Kubernetes control plane (provisioning, updates and availability). The user manages workloads and node pools, but not the cluster’s critical infrastructure.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What is the difference between managed Kubernetes and a PaaS?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A PaaS handles the build, deployment and execution of what you deliver (source code or a container image) without requiring you to define the underlying orchestration. Managed Kubernetes retains the standard Kubernetes interface (kubectl, Helm and YAML manifests), allowing you to manage these primitives while delegating control plane operations to the provider. These are two distinct operational models that are complementary rather than interchangeable.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does managed Kubernetes create a risk of vendor lock-in?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>It depends on the implementation. A <em>vanilla</em> offering (with no changes to Kubernetes’ native behaviour and no proprietary tooling imposed) allows workloads to be migrated without rewriting them. By contrast, non-standard CRDs or provider-specific networking integrations can create dependency on a specific provider.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Who is responsible for what in a managed Kubernetes cluster?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The provider manages the control plane: updates, availability and patching. The user remains responsible for node pools (sizing and scaling), workloads, application security and RBAC policies.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">How can I tell whether my organisation needs managed Kubernetes rather than a PaaS?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The key question is architectural complexity. If your applications require orchestration across multiple services or advanced networking capabilities, or are already designed for Kubernetes, managed Kubernetes is appropriate. If you are deploying relatively standard services, a PaaS will usually be faster and less expensive to operate.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Managed Kubernetes in France: what sovereign options are available?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>In France, <a href="https://www.clever.cloud/blog/features/2026/09/09/french-managed-kubernetes-comparison/">several providers offer managed Kubernetes</a> on sovereign infrastructure, including Scaleway (Kubernetes Kapsule), OVHcloud (Managed Kubernetes Service) and Clever Cloud with CKE. Beyond location, the key differentiators are the actual level of sovereignty (operator, subcontractors involved in the hosting chain), vanilla compatibility and the shared responsibility model between provider and user.</p>
<!-- /wp:paragraph -->]]></description>
										<content:encoded><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/07/2026-07-24-clever-cloud-banniere-blog-kubem-eng.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="managed kubernetes" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/07/2026-07-24-clever-cloud-banniere-blog-kubem-eng.png 800w, https://cdn.clever-cloud.com/uploads/2026/07/2026-07-24-clever-cloud-banniere-blog-kubem-eng-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/07/2026-07-24-clever-cloud-banniere-blog-kubem-eng-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>The control plane consists of Kubernetes’ standard components: the API server, etcd (the datastore that stores the cluster’s state), the scheduler and the controller manager. If the control plane fails, workloads that are already running continue to operate, but the cluster can no longer be managed: no new deployments, no scaling, and no response to kubectl commands. Managed services remove responsibility for precisely this layer from engineering teams.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Why is Kubernetes difficult to operate yourself?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p><a href="https://www.clever.cloud/blog/engineering/2026/05/19/k8s-kubernetes-definition-standard/">Kubernetes</a> &nbsp;is a container orchestration standard, not a turnkey product. Deploying a cluster without a managed layer means handling:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>version upgrades (the Kubernetes project actively supports the three most recent minor releases);</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>internal TLS certificate rotation;</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>high availability of the control plane across multiple nodes;</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>backup and consistency of the etcd datastore;</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>security patches, often under tight time constraints.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>These tasks are repetitive, consume valuable engineering time, and are a frequent source of incidents when not performed correctly. Managed services are specifically designed to remove this operational burden from product teams.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Use cases: when managed Kubernetes delivers value</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Kubernetes—whether managed or self-managed—becomes relevant in specific scenarios. It is not a systematic replacement for a <a href="https://www.clever.cloud/clever-cloud-paas/">PaaS</a>: the two approaches address different needs.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Managed Kubernetes is well suited when:</h3>
<!-- /wp:heading -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>the architecture includes multiple interdependent services requiring <a href="https://www.clever.cloud/blog/engineering/2026/07/03/kubernetes-orchestration-containers-what-is-it-for/">fine-grained orchestration</a> (rolling updates, resource management by namespace);</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>workloads are already built for Kubernetes and delivered as Helm charts or YAML manifests;</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>the team requires multi-cluster or hybrid environments (on-premises + cloud);</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>operating the control plane represents a real and measurable cost for SRE or DevOps teams.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">A PaaS remains a better fit when:</h3>
<!-- /wp:heading -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>the application deployment model (code push with platform-managed build and runtime) matches the way your team works;</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>you want to focus on application code without managing orchestration primitives (networking, scheduling, node management);</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>your applications do not require fine-grained control over workload placement or the cluster’s network topology.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Comparison table: self-managed Kubernetes vs managed Kubernetes vs PaaS</h2>
<!-- /wp:heading -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<style>
  .cc-table-wrap {
    width: 100%;
    overflow-x: auto;
  }

  .cc-table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 17px;
    font-family: "Plus Jakarta Sans", "PlusJakartaSans", -apple-system,
      BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    color: #111827;
  }

  .cc-table th,
  .cc-table td {
    padding: 12px 16px;
    text-align: left;
    vertical-align: top;
    line-height: 1.6;
  }

  .cc-table thead th {
    font-weight: 700;
    text-align: center;
  }

  .cc-table tbody td:first-child {
    font-weight: 700;
  }

  .cc-table tbody tr + tr td,
  .cc-table tbody tr:first-child td {
    border-top: 1px solid #deddee;
  }

  .cc-table th + th,
  .cc-table td + td {
    border-left: 1px solid #deddee;
  }

  .cc-table th:nth-child(1),
  .cc-table td:nth-child(1) {
    width: 30%;
  }

  .cc-table th:nth-child(2),
  .cc-table td:nth-child(2),
  .cc-table th:nth-child(3),
  .cc-table td:nth-child(3),
  .cc-table th:nth-child(4),
  .cc-table td:nth-child(4) {
    width: 23.33%;
  }

  @media (max-width: 767px) {
    .cc-table {
      font-size: 15px;
    }

    .cc-table th,
    .cc-table td {
      padding: 10px 12px;
    }
  }
</style>

<div class="cc-table-wrap">
  <table class="cc-table">
    <thead>
      <tr>
        <th>Criteria</th>
        <th>Self-managed Kubernetes</th>
        <th>Managed Kubernetes</th>
        <th>PaaS</th>
      </tr>
    </thead>

    <tbody>
      <tr>
        <td>Control plane management</td>
        <td>Managed by the team</td>
        <td>Operated by the provider</td>
        <td>Not exposed</td>
      </tr>

      <tr>
        <td>kubectl / Helm compatibility</td>
        <td>Full</td>
        <td>Full (vanilla)</td>
        <td>Not applicable</td>
      </tr>

      <tr>
        <td>Architectural flexibility</td>
        <td>Maximum</td>
        <td>High</td>
        <td>Limited to PaaS primitives</td>
      </tr>

      <tr>
        <td>Operational overhead</td>
        <td>High</td>
        <td>Reduced</td>
        <td>Low</td>
      </tr>

      <tr>
        <td>Learning curve</td>
        <td>Steep</td>
        <td>Moderate</td>
        <td>Low</td>
      </tr>

      <tr>
        <td>Kubernetes updates</td>
        <td>Manual</td>
        <td>Handled by the provider</td>
        <td>Not applicable</td>
      </tr>

      <tr>
        <td>Infrastructure engineering cost</td>
        <td>High</td>
        <td>Reduced</td>
        <td>Minimal</td>
      </tr>

      <tr>
        <td>Workload portability</td>
        <td>Full</td>
        <td>Full (if vanilla)</td>
        <td>Depends on the PaaS</td>
      </tr>

      <tr>
        <td>Control plane SLA</td>
        <td>N/A<br>(self-operated)</td>
        <td>Varies by offering</td>
        <td>Varies</td>
      </tr>
    </tbody>
  </table>
</div>
<!-- /wp:html -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p><strong>Note:</strong> here, <em>vanilla</em> refers to a standard Kubernetes experience, with no changes to native Kubernetes behaviour and no proprietary tooling imposed.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Common mistakes when choosing or adopting managed Kubernetes</h2>
<!-- /wp:heading -->

<!-- wp:acf/arguments {"name":"acf/arguments","data":{"items_0_title":"Confusing “managed” with “no operational responsibility”","_items_0_title":"field_638a066e4d2ec","items_0_short_description":"The provider manages the control plane. Node pools, network configuration, RBAC policies, resource limits and workload security remain the user’s responsibility. Managed Kubernetes reduces the operational burden; it does not eliminate it.","_items_0_short_description":"field_638a068d4d2ed","items_0_full_description":"","_items_0_full_description":"field_638a06af4d2ee","items_1_title":"Moving to Kubernetes by default without assessing actual requirements","_items_1_title":"field_638a066e4d2ec","items_1_short_description":"Kubernetes is often adopted because it has become the industry standard, not because it solves a specific problem. For lighter requirements, other distributions (such as \u003ca href=\u0022https://www.clever.cloud/blog/features/2026/05/28/k3s-vs-k8s-what-are-the-differences-and-which-one-should-you-choose-in-2026/\u0022\u003eK3s\u003c/a\u003e) are available and should be evaluated before deploying a full Kubernetes cluster. An application that fits a PaaS deployment model will often be better served by a PaaS: fewer orchestration primitives to manage for an equivalent production outcome.","_items_1_short_description":"field_638a068d4d2ed","items_1_full_description":"","_items_1_full_description":"field_638a06af4d2ee","items_2_title":"Ignoring the release policy","_items_2_title":"field_638a066e4d2ec","items_2_short_description":"The Kubernetes project supports the three most recent minor releases (the “n-2” policy). A cluster that is not kept up to date eventually falls out of support and no longer receives security patches. Verifying that a managed provider follows this policy (and how unsupported cluster versions are handled) is a selection criterion in its own right.","_items_2_short_description":"field_638a068d4d2ed","items_2_full_description":"","_items_2_full_description":"field_638a06af4d2ee","items_3_title":"Overlooking the risk of vendor lock-in","_items_3_title":"field_638a066e4d2ec","items_3_short_description":"Some managed offerings introduce proprietary abstractions, such as non-standard CRDs, provider-specific networking integrations and provider-specific deployment tools, that make migration difficult. A vanilla offering, with no changes to Kubernetes’ native behaviour, ensures portability of existing manifests and workflows.","_items_3_short_description":"field_638a068d4d2ed","items_3_full_description":"","_items_3_full_description":"field_638a06af4d2ee","items_4_title":"Evaluating the service solely on its upfront price","_items_4_title":"field_638a066e4d2ec","items_4_short_description":"The real cost of a Kubernetes cluster includes the engineering time spent maintaining it. A managed service with a higher list price may have a lower total cost of ownership if it eliminates several days of operational work each month.","_items_4_short_description":"field_638a068d4d2ed","items_4_full_description":"","_items_4_full_description":"field_638a06af4d2ee","items":5,"_items":"field_638a065a4d2eb"},"mode":"preview"} /-->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:acf/avantages {"name":"acf/avantages","data":{"title":"Which option should you choose? \u003cbr\u003e\u003cb\u003eA decision guide\u003c/b\u003e","_title":"field_63878c81ae569","content":"","_content":"field_63878c9cae56a","main_picture":"","_main_picture":"field_63878cd5ae56b","advantages_collection_0_picto":"","_advantages_collection_0_picto":"field_6397417cac52f","advantages_collection_0_title":"Choose a PaaS if","_advantages_collection_0_title":"field_63878d1aae56d","advantages_collection_0_content":"its deployment model matches the way your team works: you deliver code, while the platform handles builds, runtime and infrastructure. You retain control over your applications without managing Kubernetes orchestration primitives.","_advantages_collection_0_content":"field_63878d4dae56e","advantages_collection_0_link":"","_advantages_collection_0_link":"field_63878d66ae56f","advantages_collection_1_picto":"","_advantages_collection_1_picto":"field_6397417cac52f","advantages_collection_1_title":"Choose managed Kubernetes if","_advantages_collection_1_title":"field_63878d1aae56d","advantages_collection_1_content":"your architecture includes multiple interdependent services, distributed deployments or third-party software already packaged for Kubernetes. A managed service lets you keep your existing tools (kubectl, Helm, Terraform, GitOps) while delegating operation of the control plane.","_advantages_collection_1_content":"field_63878d4dae56e","advantages_collection_1_link":"","_advantages_collection_1_link":"field_63878d66ae56f","advantages_collection_2_picto":"","_advantages_collection_2_picto":"field_6397417cac52f","advantages_collection_2_title":"Choose self-managed Kubernetes if","_advantages_collection_2_title":"field_63878d1aae56d","advantages_collection_2_content":"you have highly specific infrastructure requirements (mandatory on-premises deployment, network configurations unavailable from cloud providers, or sovereignty requirements incompatible with third-party hosting).","_advantages_collection_2_content":"field_63878d4dae56e","advantages_collection_2_link":"","_advantages_collection_2_link":"field_63878d66ae56f","advantages_collection":3,"_advantages_collection":"field_63878cecae56c"},"mode":"preview"} /-->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Managed Kubernetes in Europe: which sovereignty criteria matter?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>For organisations subject to the GDPR, sector-specific regulations (healthcare, public sector, defence) or data residency requirements, where the cluster is hosted is a compliance issue, not just a performance consideration.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Points to verify:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>physical location of the&nbsp; &nbsp; datacenters (country and applicable jurisdiction);</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>identity of the operator and the involvement of foreign subcontractors in the hosting chain;</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>infrastructure certifications (SecNumCloud, ISO 27001, HDS, depending on the provider and the offering);</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>potential access to data by non-European third parties, particularly under extraterritorial legislation.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>A managed Kubernetes service <a href="https://www.clever.cloud/blog/features/2026/09/09/french-managed-kubernetes-comparison/">operated in France by a French provider</a> addresses these requirements without requiring additional user-side configuration. This is the approach taken by <a href="https://www.clever.cloud/product/kubernetes/">Clever Kubernetes Engine (CKE)</a>, operated end to end in France by Clever Cloud, with no foreign hyperscaler involved in the hosting chain.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

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

<!-- wp:paragraph -->
<p>Managed Kubernetes is relevant when your organisation already relies on Kubernetes and maintaining the control plane represents a meaningful operational burden. It is not a universal solution: when a PaaS deployment model matches the way your team works, it often remains the most straightforward choice. For organisations with European sovereignty requirements, the choice of provider and hosting location is critical.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>The key selection criteria are vanilla compatibility (no vendor lock-in), the release policy, a clear division of responsibilities between provider and user, and the overall cost model: list price plus internal engineering costs.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"150px"} -->
<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"level":1,"style":{"typography":{"textAlign":"center"}}} -->
<h1 class="wp-block-heading has-text-align-center">FAQ</h1>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What is managed Kubernetes?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A service in which the cloud provider manages the Kubernetes control plane (provisioning, updates and availability). The user manages workloads and node pools, but not the cluster’s critical infrastructure.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What is the difference between managed Kubernetes and a PaaS?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A PaaS handles the build, deployment and execution of what you deliver (source code or a container image) without requiring you to define the underlying orchestration. Managed Kubernetes retains the standard Kubernetes interface (kubectl, Helm and YAML manifests), allowing you to manage these primitives while delegating control plane operations to the provider. These are two distinct operational models that are complementary rather than interchangeable.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does managed Kubernetes create a risk of vendor lock-in?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>It depends on the implementation. A <em>vanilla</em> offering (with no changes to Kubernetes’ native behaviour and no proprietary tooling imposed) allows workloads to be migrated without rewriting them. By contrast, non-standard CRDs or provider-specific networking integrations can create dependency on a specific provider.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Who is responsible for what in a managed Kubernetes cluster?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The provider manages the control plane: updates, availability and patching. The user remains responsible for node pools (sizing and scaling), workloads, application security and RBAC policies.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">How can I tell whether my organisation needs managed Kubernetes rather than a PaaS?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The key question is architectural complexity. If your applications require orchestration across multiple services or advanced networking capabilities, or are already designed for Kubernetes, managed Kubernetes is appropriate. If you are deploying relatively standard services, a PaaS will usually be faster and less expensive to operate.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Managed Kubernetes in France: what sovereign options are available?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>In France, <a href="https://www.clever.cloud/blog/features/2026/09/09/french-managed-kubernetes-comparison/">several providers offer managed Kubernetes</a> on sovereign infrastructure, including Scaleway (Kubernetes Kapsule), OVHcloud (Managed Kubernetes Service) and Clever Cloud with CKE. Beyond location, the key differentiators are the actual level of sovereignty (operator, subcontractors involved in the hosting chain), vanilla compatibility and the shared responsibility model between provider and user.</p>
<!-- /wp:paragraph -->]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>HDS Certification and Compliance: Scope, Limitations and Sovereignty</title>
		<link>https://www.clever.cloud/blog/features/2026/07/23/hds-certification-and-compliance-scope-limitations-and-sovereignty/</link>
		
		<dc:creator><![CDATA[Marjorie Darrigade]]></dc:creator>
		<pubDate>Thu, 23 Jul 2026 14:12:47 +0000</pubDate>
				<category><![CDATA[Features]]></category>
		<category><![CDATA[compliance]]></category>
		<category><![CDATA[HDS]]></category>
		<guid isPermaLink="false">https://www.clever.cloud/?p=25078</guid>

					<description><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/07/2026-07-17-clever-cloud-banniere-blog-hds-2-eng-1.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="hds Compliance" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/07/2026-07-17-clever-cloud-banniere-blog-hds-2-eng-1.png 800w, https://cdn.clever-cloud.com/uploads/2026/07/2026-07-17-clever-cloud-banniere-blog-hds-2-eng-1-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/07/2026-07-17-clever-cloud-banniere-blog-hds-2-eng-1-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>This article distinguishes three things that are often confused: what certification guarantees, what it does not cover, and what to check before entrusting health data to a provider. It also presents the changes associated with version 2.1 of the standard, particularly those concerning contracts, remote access and exposure to third-country legislation.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">HDS Certification and HDS Compliance: Two Distinct Concepts</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Certification is a status granted to the hosting provider following an audit. Compliance is an obligation shared by the hosting provider and its client. Confusing the two creates a false sense of security: the belief that outsourcing to a certified provider is enough to fulfil all of one’s own obligations.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What the Certified Hosting Provider Is Responsible For</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Certification is issued by an accredited body following an audit of the activities included in the requested scope. It confirms that the hosting provider meets the requirements applicable to the activities covered by its certificate. <a href="https://www.clever.cloud/health-data-hosting/">The HDS standard distinguishes six activities</a>, but a certificate may cover only some of them.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What Remains the Client’s Responsibility</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Using a certified hosting provider does not make the client certified. By using a certified provider, the client fulfils the obligation to engage a certified provider for the hosting activities concerned. Its application-related, contractual and GDPR obligations remain its own. The standard also imposes a specific requirement: hosting health data requires a dedicated contract between the client and the hosting provider, setting out, among other things, the scope of the services and the allocation of responsibilities.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">What Certification Confirms, and What It Does Not Cover</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">The Scope of the Six Activities: Partial Certification Leaves Areas Uncovered</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The HDS standard distinguishes six activities, ranging from providing physical sites to outsourced backup, including the administration and operation of the information system. An offering may be certified for only part of this scope, such as certain infrastructure layers. In that case, administration and operation or backup remain outside the certified scope, and addressing that gap becomes the client’s compliance responsibility. Checking the exact scope of certification, activity by activity, is therefore a prerequisite, not a minor detail.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">The Boundary Between Hosting Security and Legal Sovereignty</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Certification confirms compliance with the standard’s technical and organisational requirements, which also impose transparency obligations concerning certain legal risks. It does not, however, guarantee that a hosting provider or one of its subcontractors cannot be legally compelled to disclose data. A provider may meet the standard’s security requirements while remaining subject to non-European legislation. The <a href="https://www.ccomptes.fr/sites/default/files/2025-10/20251031-S2025-1479-Enjeux-souverainete-des-SI-civils-de-l-Etat.pdf" target="_blank" rel="noreferrer noopener">French Court of Auditors</a> states this unambiguously: at present, the HDS standard does not include the sovereignty requirements specific to SecNumCloud qualification, particularly those concerning ownership and protection against extraterritorial legislation. An HDS-certified hosting provider is therefore not automatically immune from these laws.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">HDS Certification and Extraterritorial Laws (Cloud Act, FISA)</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What HDS Regulations Actually Require</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The regulatory framework became stricter in early 2026. Decree No. 2026-209 of 24 March 2026, published in the <em>Journal officiel</em> on 26 March and implementing Article 32 of the SREN Act of 21 May 2024, incorporated into the French Public Health Code obligations that had previously appeared only in the certification standard. Its new Article R. 1111-9-1 establishes the principle that health data must be stored exclusively within a member state of the European Union or a state party to the European Economic Area (EEA) Agreement. A transfer to a third country, including through remote access, remains possible, but subject to the conditions of the GDPR: a European Commission adequacy decision or, failing that, appropriate safeguards.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>The decree also strengthens the hosting contract and the information that must be provided to the client. In particular, the hosting provider must specify any remote access from third countries, non-European laws that may require data disclosure within the meaning of Article 48 of the GDPR, the mitigation measures in place and the residual risks. It also creates a transparency obligation: to publish and keep up to date a map of transfers outside the EEA, remote access and risks of unauthorised access by third countries.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>These provisions entered into force on 26 September 2026; the decree’s other amendments have applied since 27 March 2026.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3,"anchor":"hds-v2-1-ce-qui-change"} -->
<h3 id="hds-v2-1-ce-qui-change" class="wp-block-heading">HDS v2.1: what changes compared with version 2 of the standard</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The decree thus establishes the new regulatory framework. Version 2.1 of the HDS standard, <a href="https://esante.gouv.fr/actualites/referentiel-hds-v21-les-evolutions-anticiper-des-maintenant" target="_blank" rel="noreferrer noopener">presented by the French Digital Health Agency</a>, aims to align the certification scheme with that framework. This targeted update specifies, in particular, how obligations relating to transfers, remote access and third-country legislation must be documented in contracts and checked during audits.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph {"anchor":"hds-v2-1-ce-qui-change"} -->
<p id="hds-v2-1-ce-qui-change">Specifically, when a hosting provider is not subject to any third-country legislation that could compel it to transfer personal health data, this must be stated in its existing and future contracts. When a transfer to a country outside the EEA takes place, the contract must specify, in particular, the reason for the transfer, the data concerned, the destination country and the applicable safeguards. Remote access from a country outside the EEA is also considered a transfer.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Version 2.1 also provides that third-party archiving providers authorised by the French state to archive personal health data digitally must be HDS-certified for that activity.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Version 2.1 takes effect three months after its publication. No additional audit is required for hosting providers that are already certified: their compliance is checked during their first surveillance or renewal audit conducted under the new standard. From the date it takes effect, initial audits are also conducted under version 2.1.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Clever Cloud is currently HDS v2-certified for all six activities and is applying the announced version 2.1 requirements in advance. Compliance with those requirements will be checked during its next surveillance audit.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What HDS Certification Does Not Guarantee</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>HDS certification does not eliminate extraterritorial risk. The regulations require the hosting provider to inform its client, but they do not guarantee the absence of exposure. The Health Data Hub illustrates this distinction: <a href="https://www.cnil.fr/fr/les-principaux-avis-et-recommandations-de-la-cnil-sur-la-plateforme-des-donnees-de-sante" target="_blank" rel="noreferrer noopener">the CNIL notes</a> that the platform chose Microsoft Ireland to host data that must be stored in data centres in France. It nevertheless observes that this provider belongs to a group whose parent company is established in the United States, creating a legal possibility of disclosure requests from US authorities. Storing data in France is therefore not, in itself, enough to remove legal exposure.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Legal Immunity and Sovereignty: Two Distinct Requirements</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>For the most sensitive data (large health databases, data concerning minors and data relating to criminal offences), the CNIL recommends using either a hosting provider subject exclusively to European law or a provider with SecNumCloud qualification, which includes a criterion of immunity from non-European laws.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>One distinction is worth making. The qualification provides <strong>legal</strong> immunity, but it can coexist with <strong>technological</strong> dependence: some qualified offerings may rely on non-European technologies. Sovereignty therefore cannot be inferred from a single label; it also depends on the provider’s ownership structure and the origin of its technology.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>This recommendation concerns the most sensitive processing activities and does not, in itself, amount to a general ban on using an HDS-certified hosting provider exposed to third-country legislation. The appropriate approach is to assess the risk in light of the sensitivity of the data being processed.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Checking a Hosting Provider’s Actual Compliance</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Certificate Validity and Accreditation</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>An expired certificate is no longer valid, even if a renewal process is under way. Two straightforward checks are needed: is the certificate still valid, and is the body that issued it accredited by COFRAC or an equivalent European body for HDS certification? A hosting provider’s status can also be checked in the <a href="https://esante.gouv.fr/produits-services/hds/liste-des-hebergeurs-certifies" target="_blank" rel="noreferrer noopener">official register of certified hosting providers</a> maintained by the French Digital Health Agency.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Location of Storage and Operations</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A lack of portability creates technical dependence that may prevent future compliance, for example if <a href="https://www.clever.cloud/blog/features/2026/07/23/hds-migration-migrate-your-healthcare-data-with-no-perceptible-downtime/">a migration to a sovereign solution becomes necessary</a>. As for transparency, the map of transfers outside the EEA required by the regulations provides a direct point of verification: its absence is a warning sign.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>These points can be checked systematically using our checklist of ten points to verify concerning the sovereignty of an HDS hosting provider.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Reversibility and Transparency of Transfers</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A lack of reversibility creates a technical dependency that may prevent future compliance, for example <a href="https://www.clever.cloud/blog/features/2026/07/23/hds-migration-migrate-your-healthcare-data-with-no-perceptible-downtime/">if a migration to a sovereign solution becomes necessary</a>. In terms of transparency, the map of transfers outside the EEA made mandatory by the regulations provides a direct control point: its absence is a warning sign.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>These points can be assessed systematically using our ten-point assessment framework for evaluating the sovereignty of an HDS hosting provider.</p>
<!-- /wp:paragraph -->

<!-- wp:buttons -->
<div class="wp-block-buttons"><!-- wp:button -->
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://cdn.clever-cloud.com/uploads/2026/09/hds-and-digital-sovereignty-10-points-to-verify.pdf" target="_blank" rel="noreferrer noopener"><strong>View and download the framework</strong></a></div>
<!-- /wp:button --></div>
<!-- /wp:buttons -->

<!-- wp:spacer {"height":"42px"} -->
<div style="height:42px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Clever Cloud’s Position</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Clever Cloud is HDS-certified for all six activities under the standard. On extraterritorial exposure, our guarantee is based on our legal and operational structure rather than an offering that already has SecNumCloud qualification: our registered office is in France, our capital is European, we have no subsidiary in the United States, HDS hosting and operations are carried out in France, and we commit not to transfer any health data outside the EEA. This structure places Clever Cloud’s HDS activities <a href="https://www.clever.cloud/commitments/">under European jurisdiction and outside the scope of extraterritorial laws</a> such as the CLOUD Act or FISA.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"150px"} -->
<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"style":{"typography":{"textAlign":"center"}}} -->
<h2 class="wp-block-heading has-text-align-center">FAQ</h2>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does HDS Certification Provide Protection Against the Cloud Act?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. The certification attests to the security of health data hosting. It is not intended to provide immunity from extraterritorial laws. Depending on its ownership structure, a certified hosting provider may remain subject to non-European legislation.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can an HDS-Certified Hosting Provider Be Subject to US Law?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes, when its parent company is subject to US law. An entity may hold HDS certification and store data in France while remaining within the reach of the Cloud Act or FISA.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Must health data be stored in France?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. The French HDS framework and Decree No. 2026-209 of 24 March 2026 require storage exclusively within the European Economic Area (the EU plus Norway, Iceland and Liechtenstein) rather than on French territory specifically. The rule is codified in Article R. 1111-9-1 of the French Public Health Code. Remote access from a third country remains possible, but only under the conditions set out in Chapter V of the GDPR (adequacy decision or appropriate safeguards), and it must be disclosed to the customer in the hosting agreement. Hosting located in France is therefore a contractual commitment made by the provider, not a regulatory requirement.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does Using a Certified Provider Make Me “HDS Compliant”?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. Certification belongs to the hosting provider. By using a certified provider, the client fulfils the obligation to entrust the relevant hosting activities to a certified hosting provider, within the scope covered by the certificate and the contract. Its application-related, contractual and GDPR obligations remain its responsibility.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">HDS and SecNumCloud: What Is the Difference?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>HDS certification governs the security and conditions of health data hosting. SecNumCloud qualification, issued by ANSSI, adds technical, operational and legal requirements, including criteria for protection against non-European law and rules concerning ownership and control. At present, HDS does not provide the same level of assurance on these points.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"42px"} -->
<div style="height:42px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<p><em style="font-style: italic;">Article updated on 30 October 2026.</em></p>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p></p>
<!-- /wp:paragraph -->]]></description>
										<content:encoded><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/07/2026-07-17-clever-cloud-banniere-blog-hds-2-eng-1.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="hds Compliance" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/07/2026-07-17-clever-cloud-banniere-blog-hds-2-eng-1.png 800w, https://cdn.clever-cloud.com/uploads/2026/07/2026-07-17-clever-cloud-banniere-blog-hds-2-eng-1-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/07/2026-07-17-clever-cloud-banniere-blog-hds-2-eng-1-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>This article distinguishes three things that are often confused: what certification guarantees, what it does not cover, and what to check before entrusting health data to a provider. It also presents the changes associated with version 2.1 of the standard, particularly those concerning contracts, remote access and exposure to third-country legislation.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">HDS Certification and HDS Compliance: Two Distinct Concepts</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Certification is a status granted to the hosting provider following an audit. Compliance is an obligation shared by the hosting provider and its client. Confusing the two creates a false sense of security: the belief that outsourcing to a certified provider is enough to fulfil all of one’s own obligations.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What the Certified Hosting Provider Is Responsible For</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Certification is issued by an accredited body following an audit of the activities included in the requested scope. It confirms that the hosting provider meets the requirements applicable to the activities covered by its certificate. <a href="https://www.clever.cloud/health-data-hosting/">The HDS standard distinguishes six activities</a>, but a certificate may cover only some of them.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What Remains the Client’s Responsibility</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Using a certified hosting provider does not make the client certified. By using a certified provider, the client fulfils the obligation to engage a certified provider for the hosting activities concerned. Its application-related, contractual and GDPR obligations remain its own. The standard also imposes a specific requirement: hosting health data requires a dedicated contract between the client and the hosting provider, setting out, among other things, the scope of the services and the allocation of responsibilities.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">What Certification Confirms, and What It Does Not Cover</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">The Scope of the Six Activities: Partial Certification Leaves Areas Uncovered</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The HDS standard distinguishes six activities, ranging from providing physical sites to outsourced backup, including the administration and operation of the information system. An offering may be certified for only part of this scope, such as certain infrastructure layers. In that case, administration and operation or backup remain outside the certified scope, and addressing that gap becomes the client’s compliance responsibility. Checking the exact scope of certification, activity by activity, is therefore a prerequisite, not a minor detail.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">The Boundary Between Hosting Security and Legal Sovereignty</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Certification confirms compliance with the standard’s technical and organisational requirements, which also impose transparency obligations concerning certain legal risks. It does not, however, guarantee that a hosting provider or one of its subcontractors cannot be legally compelled to disclose data. A provider may meet the standard’s security requirements while remaining subject to non-European legislation. The <a href="https://www.ccomptes.fr/sites/default/files/2025-10/20251031-S2025-1479-Enjeux-souverainete-des-SI-civils-de-l-Etat.pdf" target="_blank" rel="noreferrer noopener">French Court of Auditors</a> states this unambiguously: at present, the HDS standard does not include the sovereignty requirements specific to SecNumCloud qualification, particularly those concerning ownership and protection against extraterritorial legislation. An HDS-certified hosting provider is therefore not automatically immune from these laws.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">HDS Certification and Extraterritorial Laws (Cloud Act, FISA)</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What HDS Regulations Actually Require</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The regulatory framework became stricter in early 2026. Decree No. 2026-209 of 24 March 2026, published in the <em>Journal officiel</em> on 26 March and implementing Article 32 of the SREN Act of 21 May 2024, incorporated into the French Public Health Code obligations that had previously appeared only in the certification standard. Its new Article R. 1111-9-1 establishes the principle that health data must be stored exclusively within a member state of the European Union or a state party to the European Economic Area (EEA) Agreement. A transfer to a third country, including through remote access, remains possible, but subject to the conditions of the GDPR: a European Commission adequacy decision or, failing that, appropriate safeguards.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>The decree also strengthens the hosting contract and the information that must be provided to the client. In particular, the hosting provider must specify any remote access from third countries, non-European laws that may require data disclosure within the meaning of Article 48 of the GDPR, the mitigation measures in place and the residual risks. It also creates a transparency obligation: to publish and keep up to date a map of transfers outside the EEA, remote access and risks of unauthorised access by third countries.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>These provisions entered into force on 26 September 2026; the decree’s other amendments have applied since 27 March 2026.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3,"anchor":"hds-v2-1-ce-qui-change"} -->
<h3 id="hds-v2-1-ce-qui-change" class="wp-block-heading">HDS v2.1: what changes compared with version 2 of the standard</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The decree thus establishes the new regulatory framework. Version 2.1 of the HDS standard, <a href="https://esante.gouv.fr/actualites/referentiel-hds-v21-les-evolutions-anticiper-des-maintenant" target="_blank" rel="noreferrer noopener">presented by the French Digital Health Agency</a>, aims to align the certification scheme with that framework. This targeted update specifies, in particular, how obligations relating to transfers, remote access and third-country legislation must be documented in contracts and checked during audits.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph {"anchor":"hds-v2-1-ce-qui-change"} -->
<p id="hds-v2-1-ce-qui-change">Specifically, when a hosting provider is not subject to any third-country legislation that could compel it to transfer personal health data, this must be stated in its existing and future contracts. When a transfer to a country outside the EEA takes place, the contract must specify, in particular, the reason for the transfer, the data concerned, the destination country and the applicable safeguards. Remote access from a country outside the EEA is also considered a transfer.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Version 2.1 also provides that third-party archiving providers authorised by the French state to archive personal health data digitally must be HDS-certified for that activity.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Version 2.1 takes effect three months after its publication. No additional audit is required for hosting providers that are already certified: their compliance is checked during their first surveillance or renewal audit conducted under the new standard. From the date it takes effect, initial audits are also conducted under version 2.1.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Clever Cloud is currently HDS v2-certified for all six activities and is applying the announced version 2.1 requirements in advance. Compliance with those requirements will be checked during its next surveillance audit.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What HDS Certification Does Not Guarantee</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>HDS certification does not eliminate extraterritorial risk. The regulations require the hosting provider to inform its client, but they do not guarantee the absence of exposure. The Health Data Hub illustrates this distinction: <a href="https://www.cnil.fr/fr/les-principaux-avis-et-recommandations-de-la-cnil-sur-la-plateforme-des-donnees-de-sante" target="_blank" rel="noreferrer noopener">the CNIL notes</a> that the platform chose Microsoft Ireland to host data that must be stored in data centres in France. It nevertheless observes that this provider belongs to a group whose parent company is established in the United States, creating a legal possibility of disclosure requests from US authorities. Storing data in France is therefore not, in itself, enough to remove legal exposure.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Legal Immunity and Sovereignty: Two Distinct Requirements</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>For the most sensitive data (large health databases, data concerning minors and data relating to criminal offences), the CNIL recommends using either a hosting provider subject exclusively to European law or a provider with SecNumCloud qualification, which includes a criterion of immunity from non-European laws.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>One distinction is worth making. The qualification provides <strong>legal</strong> immunity, but it can coexist with <strong>technological</strong> dependence: some qualified offerings may rely on non-European technologies. Sovereignty therefore cannot be inferred from a single label; it also depends on the provider’s ownership structure and the origin of its technology.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>This recommendation concerns the most sensitive processing activities and does not, in itself, amount to a general ban on using an HDS-certified hosting provider exposed to third-country legislation. The appropriate approach is to assess the risk in light of the sensitivity of the data being processed.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Checking a Hosting Provider’s Actual Compliance</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Certificate Validity and Accreditation</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>An expired certificate is no longer valid, even if a renewal process is under way. Two straightforward checks are needed: is the certificate still valid, and is the body that issued it accredited by COFRAC or an equivalent European body for HDS certification? A hosting provider’s status can also be checked in the <a href="https://esante.gouv.fr/produits-services/hds/liste-des-hebergeurs-certifies" target="_blank" rel="noreferrer noopener">official register of certified hosting providers</a> maintained by the French Digital Health Agency.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Location of Storage and Operations</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A lack of portability creates technical dependence that may prevent future compliance, for example if <a href="https://www.clever.cloud/blog/features/2026/07/23/hds-migration-migrate-your-healthcare-data-with-no-perceptible-downtime/">a migration to a sovereign solution becomes necessary</a>. As for transparency, the map of transfers outside the EEA required by the regulations provides a direct point of verification: its absence is a warning sign.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>These points can be checked systematically using our checklist of ten points to verify concerning the sovereignty of an HDS hosting provider.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Reversibility and Transparency of Transfers</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A lack of reversibility creates a technical dependency that may prevent future compliance, for example <a href="https://www.clever.cloud/blog/features/2026/07/23/hds-migration-migrate-your-healthcare-data-with-no-perceptible-downtime/">if a migration to a sovereign solution becomes necessary</a>. In terms of transparency, the map of transfers outside the EEA made mandatory by the regulations provides a direct control point: its absence is a warning sign.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>These points can be assessed systematically using our ten-point assessment framework for evaluating the sovereignty of an HDS hosting provider.</p>
<!-- /wp:paragraph -->

<!-- wp:buttons -->
<div class="wp-block-buttons"><!-- wp:button -->
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://cdn.clever-cloud.com/uploads/2026/09/hds-and-digital-sovereignty-10-points-to-verify.pdf" target="_blank" rel="noreferrer noopener"><strong>View and download the framework</strong></a></div>
<!-- /wp:button --></div>
<!-- /wp:buttons -->

<!-- wp:spacer {"height":"42px"} -->
<div style="height:42px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Clever Cloud’s Position</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Clever Cloud is HDS-certified for all six activities under the standard. On extraterritorial exposure, our guarantee is based on our legal and operational structure rather than an offering that already has SecNumCloud qualification: our registered office is in France, our capital is European, we have no subsidiary in the United States, HDS hosting and operations are carried out in France, and we commit not to transfer any health data outside the EEA. This structure places Clever Cloud’s HDS activities <a href="https://www.clever.cloud/commitments/">under European jurisdiction and outside the scope of extraterritorial laws</a> such as the CLOUD Act or FISA.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"150px"} -->
<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"style":{"typography":{"textAlign":"center"}}} -->
<h2 class="wp-block-heading has-text-align-center">FAQ</h2>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does HDS Certification Provide Protection Against the Cloud Act?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. The certification attests to the security of health data hosting. It is not intended to provide immunity from extraterritorial laws. Depending on its ownership structure, a certified hosting provider may remain subject to non-European legislation.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can an HDS-Certified Hosting Provider Be Subject to US Law?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes, when its parent company is subject to US law. An entity may hold HDS certification and store data in France while remaining within the reach of the Cloud Act or FISA.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Must health data be stored in France?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. The French HDS framework and Decree No. 2026-209 of 24 March 2026 require storage exclusively within the European Economic Area (the EU plus Norway, Iceland and Liechtenstein) rather than on French territory specifically. The rule is codified in Article R. 1111-9-1 of the French Public Health Code. Remote access from a third country remains possible, but only under the conditions set out in Chapter V of the GDPR (adequacy decision or appropriate safeguards), and it must be disclosed to the customer in the hosting agreement. Hosting located in France is therefore a contractual commitment made by the provider, not a regulatory requirement.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does Using a Certified Provider Make Me “HDS Compliant”?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. Certification belongs to the hosting provider. By using a certified provider, the client fulfils the obligation to entrust the relevant hosting activities to a certified hosting provider, within the scope covered by the certificate and the contract. Its application-related, contractual and GDPR obligations remain its responsibility.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">HDS and SecNumCloud: What Is the Difference?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>HDS certification governs the security and conditions of health data hosting. SecNumCloud qualification, issued by ANSSI, adds technical, operational and legal requirements, including criteria for protection against non-European law and rules concerning ownership and control. At present, HDS does not provide the same level of assurance on these points.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"42px"} -->
<div style="height:42px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<p><em style="font-style: italic;">Article updated on 30 October 2026.</em></p>
<!-- /wp:html -->

<!-- wp:paragraph -->
<p></p>
<!-- /wp:paragraph -->]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>HDS migration: migrate your healthcare data with no perceptible downtime</title>
		<link>https://www.clever.cloud/blog/features/2026/07/23/hds-migration-migrate-your-healthcare-data-with-no-perceptible-downtime/</link>
		
		<dc:creator><![CDATA[Marjorie Darrigade]]></dc:creator>
		<pubDate>Thu, 23 Jul 2026 11:39:38 +0000</pubDate>
				<category><![CDATA[Features]]></category>
		<category><![CDATA[HDS]]></category>
		<category><![CDATA[migration]]></category>
		<guid isPermaLink="false">https://www.clever.cloud/?p=25057</guid>

					<description><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/07/2026-07-23-clever-cloud-banniere-blog-hds-eng.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="HDS Migration" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/07/2026-07-23-clever-cloud-banniere-blog-hds-eng.png 800w, https://cdn.clever-cloud.com/uploads/2026/07/2026-07-23-clever-cloud-banniere-blog-hds-eng-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/07/2026-07-23-clever-cloud-banniere-blog-hds-eng-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>The remaining questions are when such an operation becomes necessary, how it is carried out, and which pitfalls should be anticipated.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">What is an HDS migration?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>An HDS migration is more than a simple infrastructure change: it involves transferring personal healthcare data whose hosting is regulated by law. The objective can be summed up in a single sentence: change hosting providers without leaving the compliance framework, either during or after the migration.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>HDS certification itself remains the responsibility of the hosting provider under <a href="https://www.clever.cloud/health-data-hosting/">the HDS framework and its six regulated activities</a>. Migrating does not invalidate this compliance; the objective is to preserve it throughout the transition from one hosting environment to another.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">When should you consider an HDS migration?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Three situations justify switching the hosting environment for healthcare data.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Hosting that is not HDS certified</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>In France, entrusting healthcare data to a hosting provider requires that provider to hold HDS certification (Article L.1111-8 of the French Public Health Code). An e-health application deployed on non-certified infrastructure therefore falls outside this regulatory framework, regardless of its technical quality. Migrating to a certified hosting provider addresses the hosting requirement, although it does not by itself fulfil the publisher’s other obligations, whether application-related or under the GDPR.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Hosting that is not sovereign or is subject to extraterritorial legislation</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Certification and legal sovereignty are not the same thing. A hosting provider may be HDS certified while still being subject to non-European legislation that could require the disclosure of data, such as the Cloud Act or FISA. For the most sensitive healthcare data, the CNIL recommends enhanced protection against access requests from third-country authorities, including hosting operated exclusively under European law. The <a href="https://www.clever.cloud/blog/features/2026/07/23/hds-certification-and-compliance-scope-limitations-and-sovereignty/">distinction between HDS compliance and sovereignty</a> deserves separate consideration; in the context of a migration, it mainly becomes a hosting provider selection criterion.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Operational overhead on self-managed infrastructure</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Infrastructure may be compliant while still being managed in-house, typically on bare metal. In this case, internal teams remain responsible for server configuration, monitoring, upgrades, and reversibility. As the platform grows, this operational burden becomes increasingly significant. It often leads software vendors that are already HDS compliant to adopt a managed platform, reducing operational workload without compromising compliance.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"70px"} -->
<div style="height:70px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:acf/avantages {"name":"acf/avantages","data":{"title":"How does an HDS migration work, step by step?","_title":"field_63878c81ae569","content":"\u003cp class=\u0022p1\u0022\u003eThe project follows five phases, from initial assessment to final compliance verification.\u003c/p\u003e","_content":"field_63878c9cae56a","main_picture":"","_main_picture":"field_63878cd5ae56b","advantages_collection_0_picto":"","_advantages_collection_0_picto":"field_6397417cac52f","advantages_collection_0_title":"Scoping and preliminary assessment","_advantages_collection_0_title":"field_63878d1aae56d","advantages_collection_0_content":"Before any transfer takes place, the scope must be clearly defined: which healthcare data is involved, which applications process it, and where the backups are located. This stage determines which HDS framework activities are actually involved and which data residency requirements must be met, including backup copies.","_advantages_collection_0_content":"field_63878d4dae56e","advantages_collection_0_link":"","_advantages_collection_0_link":"field_63878d66ae56f","advantages_collection_1_picto":"","_advantages_collection_1_picto":"field_6397417cac52f","advantages_collection_1_title":"HDS contractual agreement","_advantages_collection_1_title":"field_63878d1aae56d","advantages_collection_1_content":"Hosting healthcare data requires a dedicated agreement between the customer and the hosting provider. This is a requirement of the HDS framework, not a commercial formality: the agreement defines the allocation of responsibilities and must be in place before the production environment goes live.","_advantages_collection_1_content":"field_63878d4dae56e","advantages_collection_1_link":"","_advantages_collection_1_link":"field_63878d66ae56f","advantages_collection_2_picto":"","_advantages_collection_2_picto":"field_6397417cac52f","advantages_collection_2_title":"Data transfer and synchronization","_advantages_collection_2_title":"field_63878d1aae56d","advantages_collection_2_content":"This is the core operation: copying and synchronizing the data, deploying the applications, and restoring scheduled tasks and monitoring. Encryption at rest is enabled when databases and storage volumes are created. Depending on the source infrastructure, this phase may also require adapting file formats inherited from third-party storage systems.","_advantages_collection_2_content":"field_63878d4dae56e","advantages_collection_2_link":"","_advantages_collection_2_link":"field_63878d66ae56f","advantages_collection_3_picto":"","_advantages_collection_3_picto":"field_6397417cac52f","advantages_collection_3_title":"DNS switch: the only possible interruption","_advantages_collection_3_title":"field_63878d1aae56d","advantages_collection_3_content":"As long as the legacy and the new platforms coexist, the service continues to run on the former. The DNS switch to the new hosting environment is the only point at which an interruption may occur. When properly prepared, it remains imperceptible to users.","_advantages_collection_3_content":"field_63878d4dae56e","advantages_collection_3_link":"","_advantages_collection_3_link":"field_63878d66ae56f","advantages_collection_4_picto":"","_advantages_collection_4_picto":"field_6397417cac52f","advantages_collection_4_title":"Post-migration compliance verification","_advantages_collection_4_title":"field_63878d1aae56d","advantages_collection_4_content":"The migration does not end with the DNS switch. The final step is to verify that the certified scope covers the entire deployed environment, that backups comply with the same data residency requirements as the primary data, and that reversibility remains fully guaranteed.","_advantages_collection_4_content":"field_63878d4dae56e","advantages_collection_4_link":"","_advantages_collection_4_link":"field_63878d66ae56f","advantages_collection":5,"_advantages_collection":"field_63878cecae56c"},"mode":"auto"} /-->

<!-- wp:heading -->
<h2 class="wp-block-heading">Key considerations for an HDS migration</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Five recurring pitfalls deserve particular attention. Each one should prompt a question to your future hosting provider.</p>
<!-- /wp:paragraph -->

<!-- wp:acf/arguments {"name":"acf/arguments","data":{"items_0_title":"Partially certified scope","_items_0_title":"field_638a066e4d2ec","items_0_short_description":"Some offerings cover only part of the six activities defined by the HDS framework, often limited to the infrastructure layers. Partial coverage leaves parts of the environment outside the compliance scope and under the customer’s responsibility.","_items_0_short_description":"field_638a068d4d2ed","items_0_full_description":"","_items_0_full_description":"field_638a06af4d2ee","items_1_title":"Backup location","_items_1_title":"field_638a066e4d2ec","items_1_short_description":"Hosting primary data in France while storing backups elsewhere merely shifts the risk instead of eliminating it. Backup copies must comply with the same requirements as the original data.","_items_1_short_description":"field_638a068d4d2ed","items_1_full_description":"","_items_1_full_description":"field_638a06af4d2ee","items_2_title":"Remote administration from a third country","_items_2_title":"field_638a066e4d2ec","items_2_short_description":"Even when data is stored in France, it remains exposed if the platform is administered from a country subject to non-European legislation. In such cases, the HDS framework requires the hosting provider to inform its customer.","_items_2_short_description":"field_638a068d4d2ed","items_2_full_description":"","_items_2_full_description":"field_638a06af4d2ee","items_3_title":"Reversibility","_items_3_title":"field_638a066e4d2ec","items_3_short_description":"The inability to recover all data in a usable format creates vendor lock-in, which may prevent future compliance efforts.","_items_3_short_description":"field_638a068d4d2ed","items_3_full_description":"","_items_3_full_description":"field_638a06af4d2ee","items_4_title":"Division of responsibilities","_items_4_title":"field_638a066e4d2ec","items_4_short_description":"Using an HDS-certified hosting provider does not make the customer HDS certified. Responsibility for application compliance and GDPR compliance remains with the software publisher","_items_4_short_description":"field_638a068d4d2ed","items_4_full_description":"","_items_4_full_description":"field_638a06af4d2ee","items":5,"_items":"field_638a065a4d2eb"},"mode":"auto"} /-->

<!-- wp:heading -->
<h2 class="wp-block-heading">How do you choose an HDS hosting provider for your migration?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Five criteria make the difference:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>Certification covering all six activities</strong> defined by the HDS framework, not just the infrastructure layer.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>A valid certificate</strong> issued by an accredited certification body.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Genuine sovereignty:</strong> headquarters and ownership based in France, no subsidiary subject to non-European law, and hosting infrastructure located in France.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>A fully managed platform</strong> that takes care of encryption, monitoring, backups, and updates instead of leaving these responsibilities to the customer.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Documented reversibility</strong>, ensuring an exit strategy without technical lock-in.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>The last criterion deserves particular attention: a platform that operates an <a href="https://www.clever.cloud/blog/features/2025/03/19/hds-cloud-secure-hosting-of-healthcare-data-with-clever-cloud/">HDS cloud</a> end to end relieves customers of the operational layers where most compliance gaps tend to arise.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"28px"} -->
<div style="height:28px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:columns -->
<div class="wp-block-columns"><!-- wp:column {"verticalAlignment":"top","width":"33.33%"} -->
<div class="wp-block-column is-vertically-aligned-top" style="flex-basis:33.33%"><!-- wp:buttons {"layout":{"type":"flex","justifyContent":"center","verticalAlignment":"top"}} -->
<div class="wp-block-buttons"><!-- wp:button -->
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://cdn.clever-cloud.com/uploads/2026/07/practical-guide-to-hds-migration.pdf" target="_blank" rel="noreferrer noopener"><strong>Download the guide</strong></a></div>
<!-- /wp:button --></div>
<!-- /wp:buttons --></div>
<!-- /wp:column -->

<!-- wp:column {"verticalAlignment":"bottom","width":"66.66%"} -->
<div class="wp-block-column is-vertically-aligned-bottom" style="flex-basis:66.66%"><!-- wp:paragraph -->
<p>Checklist, migration steps, common mistakes, and hosting provider selection criteria. Find all of these in our <strong>Practical Guide to HDS Migration</strong>.</p>
<!-- /wp:paragraph --></div>
<!-- /wp:column --></div>
<!-- /wp:columns -->

<!-- wp:spacer {"height":"42px"} -->
<div style="height:42px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Case study: the Madietenligne migration</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Clever Cloud supports several e-health providers. The migration of <a href="https://www.clever.cloud/testimonial/madietenligne/">Madietenligne</a>, a platform dedicated to dietitians, provides a documented example: it moved from self-managed bare-metal infrastructure to Clever Cloud’s sovereign PaaS while remaining within the HDS framework. This case illustrates a migration driven by the need to reduce operational overhead rather than to move from a non-compliant to a compliant environment: the HDS framework was already being met before the migration.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Key highlights:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>Test and production environments migrated in <strong>less than fifteen days</strong>.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>500 GB </strong>of data transferred and synchronized.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Platform used by more than <strong>2,500 dietitians</strong>.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Zero-downtime deployments, with support responding within the same business day.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>HDS compliance maintained, encryption at rest enabled, and<strong> migration away from Azure </strong>for file storage, removing a dependency on a provider subject to U.S. law.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Key takeaways from an HDS migration</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A well-executed HDS migration answers three questions, in order: why migrate, how to migrate, and how to verify compliance. The process is manageable, service interruption is limited to the DNS switch, and compliance can be verified at every stage.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"level":4} -->
<h4 class="wp-block-heading">To assess your current situation or prepare your migration project, </h4>
<!-- /wp:heading -->

<!-- wp:buttons -->
<div class="wp-block-buttons"><!-- wp:button -->
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://www.clever.cloud/contact-hds/">Get in touch with our team</a></div>
<!-- /wp:button --></div>
<!-- /wp:buttons -->

<!-- wp:spacer {"height":"150px"} -->
<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"style":{"typography":{"textAlign":"center"}}} -->
<h2 class="wp-block-heading has-text-align-center">FAQ</h2>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">How long does an HDS migration take?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The duration depends on the data volume, the architecture, and the number of environments involved. As a reference point, one documented project covering both test and production environments was completed in less than fifteen days. This figure applies only to that specific case and should not be taken as representative of every migration.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does an HDS migration cause service downtime?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>As long as the legacy and the new hosting environments coexist, the service remains available. The only possible interruption occurs during the DNS switch; when properly prepared, it is imperceptible to users.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Is a new contract required for an HDS migration?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. Hosting healthcare data requires a dedicated agreement with the hosting provider under the HDS framework. It must be signed before the production environment goes live.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">After the migration, what remains my responsibility to stay HDS compliant?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>HDS certification remains the responsibility of the hosting provider. The software publisher remains responsible for application compliance and GDPR compliance. The migration brings the hosting component into compliance, but it does not cover all regulatory obligations.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can I migrate from a non-sovereign hosting provider such as Azure or AWS?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. One purpose of an HDS migration may be to remove a dependency on a hosting provider subject to non-European legislation, for example by moving away from file storage operated by a non-European provider.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p></p>
<!-- /wp:paragraph -->]]></description>
										<content:encoded><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/07/2026-07-23-clever-cloud-banniere-blog-hds-eng.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="HDS Migration" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/07/2026-07-23-clever-cloud-banniere-blog-hds-eng.png 800w, https://cdn.clever-cloud.com/uploads/2026/07/2026-07-23-clever-cloud-banniere-blog-hds-eng-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/07/2026-07-23-clever-cloud-banniere-blog-hds-eng-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>The remaining questions are when such an operation becomes necessary, how it is carried out, and which pitfalls should be anticipated.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading">What is an HDS migration?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>An HDS migration is more than a simple infrastructure change: it involves transferring personal healthcare data whose hosting is regulated by law. The objective can be summed up in a single sentence: change hosting providers without leaving the compliance framework, either during or after the migration.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>HDS certification itself remains the responsibility of the hosting provider under <a href="https://www.clever.cloud/health-data-hosting/">the HDS framework and its six regulated activities</a>. Migrating does not invalidate this compliance; the objective is to preserve it throughout the transition from one hosting environment to another.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">When should you consider an HDS migration?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Three situations justify switching the hosting environment for healthcare data.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Hosting that is not HDS certified</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>In France, entrusting healthcare data to a hosting provider requires that provider to hold HDS certification (Article L.1111-8 of the French Public Health Code). An e-health application deployed on non-certified infrastructure therefore falls outside this regulatory framework, regardless of its technical quality. Migrating to a certified hosting provider addresses the hosting requirement, although it does not by itself fulfil the publisher’s other obligations, whether application-related or under the GDPR.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Hosting that is not sovereign or is subject to extraterritorial legislation</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Certification and legal sovereignty are not the same thing. A hosting provider may be HDS certified while still being subject to non-European legislation that could require the disclosure of data, such as the Cloud Act or FISA. For the most sensitive healthcare data, the CNIL recommends enhanced protection against access requests from third-country authorities, including hosting operated exclusively under European law. The <a href="https://www.clever.cloud/blog/features/2026/07/23/hds-certification-and-compliance-scope-limitations-and-sovereignty/">distinction between HDS compliance and sovereignty</a> deserves separate consideration; in the context of a migration, it mainly becomes a hosting provider selection criterion.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Operational overhead on self-managed infrastructure</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Infrastructure may be compliant while still being managed in-house, typically on bare metal. In this case, internal teams remain responsible for server configuration, monitoring, upgrades, and reversibility. As the platform grows, this operational burden becomes increasingly significant. It often leads software vendors that are already HDS compliant to adopt a managed platform, reducing operational workload without compromising compliance.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"70px"} -->
<div style="height:70px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:acf/avantages {"name":"acf/avantages","data":{"title":"How does an HDS migration work, step by step?","_title":"field_63878c81ae569","content":"\u003cp class=\u0022p1\u0022\u003eThe project follows five phases, from initial assessment to final compliance verification.\u003c/p\u003e","_content":"field_63878c9cae56a","main_picture":"","_main_picture":"field_63878cd5ae56b","advantages_collection_0_picto":"","_advantages_collection_0_picto":"field_6397417cac52f","advantages_collection_0_title":"Scoping and preliminary assessment","_advantages_collection_0_title":"field_63878d1aae56d","advantages_collection_0_content":"Before any transfer takes place, the scope must be clearly defined: which healthcare data is involved, which applications process it, and where the backups are located. This stage determines which HDS framework activities are actually involved and which data residency requirements must be met, including backup copies.","_advantages_collection_0_content":"field_63878d4dae56e","advantages_collection_0_link":"","_advantages_collection_0_link":"field_63878d66ae56f","advantages_collection_1_picto":"","_advantages_collection_1_picto":"field_6397417cac52f","advantages_collection_1_title":"HDS contractual agreement","_advantages_collection_1_title":"field_63878d1aae56d","advantages_collection_1_content":"Hosting healthcare data requires a dedicated agreement between the customer and the hosting provider. This is a requirement of the HDS framework, not a commercial formality: the agreement defines the allocation of responsibilities and must be in place before the production environment goes live.","_advantages_collection_1_content":"field_63878d4dae56e","advantages_collection_1_link":"","_advantages_collection_1_link":"field_63878d66ae56f","advantages_collection_2_picto":"","_advantages_collection_2_picto":"field_6397417cac52f","advantages_collection_2_title":"Data transfer and synchronization","_advantages_collection_2_title":"field_63878d1aae56d","advantages_collection_2_content":"This is the core operation: copying and synchronizing the data, deploying the applications, and restoring scheduled tasks and monitoring. Encryption at rest is enabled when databases and storage volumes are created. Depending on the source infrastructure, this phase may also require adapting file formats inherited from third-party storage systems.","_advantages_collection_2_content":"field_63878d4dae56e","advantages_collection_2_link":"","_advantages_collection_2_link":"field_63878d66ae56f","advantages_collection_3_picto":"","_advantages_collection_3_picto":"field_6397417cac52f","advantages_collection_3_title":"DNS switch: the only possible interruption","_advantages_collection_3_title":"field_63878d1aae56d","advantages_collection_3_content":"As long as the legacy and the new platforms coexist, the service continues to run on the former. The DNS switch to the new hosting environment is the only point at which an interruption may occur. When properly prepared, it remains imperceptible to users.","_advantages_collection_3_content":"field_63878d4dae56e","advantages_collection_3_link":"","_advantages_collection_3_link":"field_63878d66ae56f","advantages_collection_4_picto":"","_advantages_collection_4_picto":"field_6397417cac52f","advantages_collection_4_title":"Post-migration compliance verification","_advantages_collection_4_title":"field_63878d1aae56d","advantages_collection_4_content":"The migration does not end with the DNS switch. The final step is to verify that the certified scope covers the entire deployed environment, that backups comply with the same data residency requirements as the primary data, and that reversibility remains fully guaranteed.","_advantages_collection_4_content":"field_63878d4dae56e","advantages_collection_4_link":"","_advantages_collection_4_link":"field_63878d66ae56f","advantages_collection":5,"_advantages_collection":"field_63878cecae56c"},"mode":"auto"} /-->

<!-- wp:heading -->
<h2 class="wp-block-heading">Key considerations for an HDS migration</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Five recurring pitfalls deserve particular attention. Each one should prompt a question to your future hosting provider.</p>
<!-- /wp:paragraph -->

<!-- wp:acf/arguments {"name":"acf/arguments","data":{"items_0_title":"Partially certified scope","_items_0_title":"field_638a066e4d2ec","items_0_short_description":"Some offerings cover only part of the six activities defined by the HDS framework, often limited to the infrastructure layers. Partial coverage leaves parts of the environment outside the compliance scope and under the customer’s responsibility.","_items_0_short_description":"field_638a068d4d2ed","items_0_full_description":"","_items_0_full_description":"field_638a06af4d2ee","items_1_title":"Backup location","_items_1_title":"field_638a066e4d2ec","items_1_short_description":"Hosting primary data in France while storing backups elsewhere merely shifts the risk instead of eliminating it. Backup copies must comply with the same requirements as the original data.","_items_1_short_description":"field_638a068d4d2ed","items_1_full_description":"","_items_1_full_description":"field_638a06af4d2ee","items_2_title":"Remote administration from a third country","_items_2_title":"field_638a066e4d2ec","items_2_short_description":"Even when data is stored in France, it remains exposed if the platform is administered from a country subject to non-European legislation. In such cases, the HDS framework requires the hosting provider to inform its customer.","_items_2_short_description":"field_638a068d4d2ed","items_2_full_description":"","_items_2_full_description":"field_638a06af4d2ee","items_3_title":"Reversibility","_items_3_title":"field_638a066e4d2ec","items_3_short_description":"The inability to recover all data in a usable format creates vendor lock-in, which may prevent future compliance efforts.","_items_3_short_description":"field_638a068d4d2ed","items_3_full_description":"","_items_3_full_description":"field_638a06af4d2ee","items_4_title":"Division of responsibilities","_items_4_title":"field_638a066e4d2ec","items_4_short_description":"Using an HDS-certified hosting provider does not make the customer HDS certified. Responsibility for application compliance and GDPR compliance remains with the software publisher","_items_4_short_description":"field_638a068d4d2ed","items_4_full_description":"","_items_4_full_description":"field_638a06af4d2ee","items":5,"_items":"field_638a065a4d2eb"},"mode":"auto"} /-->

<!-- wp:heading -->
<h2 class="wp-block-heading">How do you choose an HDS hosting provider for your migration?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Five criteria make the difference:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>Certification covering all six activities</strong> defined by the HDS framework, not just the infrastructure layer.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>A valid certificate</strong> issued by an accredited certification body.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Genuine sovereignty:</strong> headquarters and ownership based in France, no subsidiary subject to non-European law, and hosting infrastructure located in France.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>A fully managed platform</strong> that takes care of encryption, monitoring, backups, and updates instead of leaving these responsibilities to the customer.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Documented reversibility</strong>, ensuring an exit strategy without technical lock-in.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>The last criterion deserves particular attention: a platform that operates an <a href="https://www.clever.cloud/blog/features/2025/03/19/hds-cloud-secure-hosting-of-healthcare-data-with-clever-cloud/">HDS cloud</a> end to end relieves customers of the operational layers where most compliance gaps tend to arise.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"28px"} -->
<div style="height:28px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:columns -->
<div class="wp-block-columns"><!-- wp:column {"verticalAlignment":"top","width":"33.33%"} -->
<div class="wp-block-column is-vertically-aligned-top" style="flex-basis:33.33%"><!-- wp:buttons {"layout":{"type":"flex","justifyContent":"center","verticalAlignment":"top"}} -->
<div class="wp-block-buttons"><!-- wp:button -->
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://cdn.clever-cloud.com/uploads/2026/07/practical-guide-to-hds-migration.pdf" target="_blank" rel="noreferrer noopener"><strong>Download the guide</strong></a></div>
<!-- /wp:button --></div>
<!-- /wp:buttons --></div>
<!-- /wp:column -->

<!-- wp:column {"verticalAlignment":"bottom","width":"66.66%"} -->
<div class="wp-block-column is-vertically-aligned-bottom" style="flex-basis:66.66%"><!-- wp:paragraph -->
<p>Checklist, migration steps, common mistakes, and hosting provider selection criteria. Find all of these in our <strong>Practical Guide to HDS Migration</strong>.</p>
<!-- /wp:paragraph --></div>
<!-- /wp:column --></div>
<!-- /wp:columns -->

<!-- wp:spacer {"height":"42px"} -->
<div style="height:42px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Case study: the Madietenligne migration</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Clever Cloud supports several e-health providers. The migration of <a href="https://www.clever.cloud/testimonial/madietenligne/">Madietenligne</a>, a platform dedicated to dietitians, provides a documented example: it moved from self-managed bare-metal infrastructure to Clever Cloud’s sovereign PaaS while remaining within the HDS framework. This case illustrates a migration driven by the need to reduce operational overhead rather than to move from a non-compliant to a compliant environment: the HDS framework was already being met before the migration.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Key highlights:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>Test and production environments migrated in <strong>less than fifteen days</strong>.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>500 GB </strong>of data transferred and synchronized.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Platform used by more than <strong>2,500 dietitians</strong>.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Zero-downtime deployments, with support responding within the same business day.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>HDS compliance maintained, encryption at rest enabled, and<strong> migration away from Azure </strong>for file storage, removing a dependency on a provider subject to U.S. law.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Key takeaways from an HDS migration</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>A well-executed HDS migration answers three questions, in order: why migrate, how to migrate, and how to verify compliance. The process is manageable, service interruption is limited to the DNS switch, and compliance can be verified at every stage.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"level":4} -->
<h4 class="wp-block-heading">To assess your current situation or prepare your migration project, </h4>
<!-- /wp:heading -->

<!-- wp:buttons -->
<div class="wp-block-buttons"><!-- wp:button -->
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://www.clever.cloud/contact-hds/">Get in touch with our team</a></div>
<!-- /wp:button --></div>
<!-- /wp:buttons -->

<!-- wp:spacer {"height":"150px"} -->
<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"style":{"typography":{"textAlign":"center"}}} -->
<h2 class="wp-block-heading has-text-align-center">FAQ</h2>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">How long does an HDS migration take?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The duration depends on the data volume, the architecture, and the number of environments involved. As a reference point, one documented project covering both test and production environments was completed in less than fifteen days. This figure applies only to that specific case and should not be taken as representative of every migration.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does an HDS migration cause service downtime?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>As long as the legacy and the new hosting environments coexist, the service remains available. The only possible interruption occurs during the DNS switch; when properly prepared, it is imperceptible to users.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Is a new contract required for an HDS migration?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. Hosting healthcare data requires a dedicated agreement with the hosting provider under the HDS framework. It must be signed before the production environment goes live.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">After the migration, what remains my responsibility to stay HDS compliant?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>HDS certification remains the responsibility of the hosting provider. The software publisher remains responsible for application compliance and GDPR compliance. The migration brings the hosting component into compliance, but it does not cover all regulatory obligations.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can I migrate from a non-sovereign hosting provider such as Azure or AWS?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. One purpose of an HDS migration may be to remove a dependency on a hosting provider subject to non-European legislation, for example by moving away from file storage operated by a non-European provider.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p></p>
<!-- /wp:paragraph -->]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>K3s vs K8s: What Are the Differences and Which One Should You Choose in 2026?</title>
		<link>https://www.clever.cloud/blog/features/2026/05/28/k3s-vs-k8s-what-are-the-differences-and-which-one-should-you-choose-in-2026/</link>
		
		<dc:creator><![CDATA[Marjorie Darrigade]]></dc:creator>
		<pubDate>Thu, 28 May 2026 07:19:05 +0000</pubDate>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Features]]></category>
		<category><![CDATA[K3s]]></category>
		<category><![CDATA[K8S]]></category>
		<category><![CDATA[Kubernetes]]></category>
		<guid isPermaLink="false">https://www.clever.cloud/?p=24419</guid>

					<description><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/05/2026-05-27-clever-cloud-banniere-blog-k3s-vs-k8s-en.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="K3s vs K8s EN" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/05/2026-05-27-clever-cloud-banniere-blog-k3s-vs-k8s-en.png 800w, https://cdn.clever-cloud.com/uploads/2026/05/2026-05-27-clever-cloud-banniere-blog-k3s-vs-k8s-en-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/05/2026-05-27-clever-cloud-banniere-blog-k3s-vs-k8s-en-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>In short: K3s is a CNCF-certified Kubernetes distribution optimized for constrained environments (edge, IoT, labs). K8s refers to the original Kubernetes project, designed for large-scale production clusters. The choice depends on your available resources, deployment context and operational requirements.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">K8s: Standard Kubernetes for Enterprise Environments</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K8s is the abbreviation of Kubernetes, with the “8” representing the eight letters between the “K” and the “s”. It is the original open-source project maintained by the Cloud Native Computing Foundation (CNCF) and initially developed by Google.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Kubernetes is designed for <strong>large-scale production environments</strong>: multi-node clusters, high availability, integration with public clouds (AWS, GCP, Azure), or on-premises datacenters. Its control plane includes several separate components: API server, scheduler, controller manager, etcd, deployed independently, which provides maximum flexibility but requires significant operational expertise.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p><strong>Typical requirements for a production control plane node</strong>: at least 2 vCPUs and 2 GB of RAM for Kubernetes components alone, excluding etcd and application workloads.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">K3s: A CNCF-Certified Kubernetes Distribution, Not a Fork</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K3s is a certified Kubernetes distribution, not an unofficial lightweight version or a fork. Created by Rancher Labs, it was <a href="https://thenewstack.io/ranchers-k3s-joins-cncf-sandbox-as-first-kubernetes-distribution/" target="_blank" rel="noreferrer noopener">donated to the CNCF in June 2020</a> and passes the same Sonobuoy conformance tests as all certified distributions. Any valid Kubernetes manifest works on K3s.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Its main goal is to <strong>drastically reduce the resources required </strong>to run Kubernetes in constrained environments (edge, IoT, CI/CD, labs) without giving up API compatibility.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What K3s Changes Compared to K8s</h3>
<!-- /wp:heading -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li></li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><a href="https://k3s.io/" target="_blank" rel="noreferrer noopener">A single binary under 70 MB</a>  (supporting x86, ARM64, ARMv7, and S390X), including the containerd runtime, Flannel CNI, a Traefik ingress controller, and a Klipper load balancer.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>SQLite as the default datastore</strong> in single-node mode instead of etcd. In high-availability configurations (minimum three server nodes), K3s can use <strong>embedded etcd </strong>or an external datastore (MySQL, PostgreSQL, external etcd).</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Alpha and beta components removed </strong>to reduce the attack surface and memory footprint.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p><strong>Important point</strong>: K3s does not remove etcd; it makes it optional. In single-node mode, SQLite is sufficient. In high availability, embedded or external etcd is supported - although the latter is not officially supported by the K3s team.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading"><strong>Resource Footprint</strong></h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K3s can run with as little as <strong>512 MB of RAM</strong> on an agent node. According to <a href="https://docs.k3s.io/installation/requirements" target="_blank" rel="noreferrer noopener">the official documentation</a> (updated May 2026), a server node (control plane) requires 2 GB of RAM and 2 CPU cores, excluding application workloads. A load-tested profile is available in the <a href="https://docs.k3s.io/reference/resource-profiling" target="_blank" rel="noreferrer noopener">K3s resource profiling guide</a>. It is worth noting that tests on hardware with 1 GB of total RAM showed instability across K3s, k0s, and MicroK8s when deploying real application workloads (even a lightweight Kubernetes cluster still consumes non-negligible control-plane resources).</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Key Technical Differences</h2>
<!-- /wp:heading -->

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

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<style>
  .cc-table-wrap { overflow-x: auto; }
  .cc-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 17px;
    font-family: "Plus Jakarta Sans","PlusJakartaSans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    color: #111827;
  }
  .cc-table th,
  .cc-table td {
    text-align: left;
    padding: 12px 16px;
    vertical-align: top;
    line-height: 1.6;
  }
  .cc-table tbody tr + tr td,
  .cc-table tbody tr:first-child td {
    border-top: 1px solid #deddee;
  }
  .cc-table th + th,
  .cc-table td + td {
    border-left: 1px solid #deddee;
  }
  .cc-table thead th {
    font-weight: 700;
    text-align: center;
  }
  .cc-table th:nth-child(1),
  .cc-table td:nth-child(1) { width: 28%; }
  .cc-table th:nth-child(2),
  .cc-table td:nth-child(2) { width: 36%; }
  .cc-table th:nth-child(3),
  .cc-table td:nth-child(3) { width: 36%; }
</style>

<div class="cc-table-wrap">
  <table class="cc-table">
    <thead>
      <tr>
        <th>Scenario</th>
        <th>K8s</th>
        <th>K3s</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>Single-node</td>
        <td>etcd required</td>
        <td>SQLite by default</td>
      </tr>
      <tr>
        <td>Multi-node High Availability</td>
        <td>etcd</td>
        <td>Embedded or external etcd (MySQL, PostgreSQL)</td>
      </tr>
    </tbody>
  </table>
</div>
<!-- /wp:html -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Runtime and packaging</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K8s no longer provides a default runtime since the removal of dockershim (v1.24, 2022). Starting with Kubernetes 1.24, you must install a CRI-compatible runtime (containerd or CRI-O). K3s embeds containerd directly into its binary.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading"><strong>Control Plane Architecture</strong></h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>In K8s, control plane components (API server, scheduler, controller manager) are separate processes. In K3s, they are merged into a single binary, which reduces overhead but limits some advanced isolation configurations.</p>
<!-- /wp:paragraph -->

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

<!-- wp:paragraph -->
<p>K3s is suitable for moderately sized clusters. In high-availability configurations (3 server nodes, 4 vCPU / 8 GB RAM), <a href="https://docs.k3s.io/installation/requirements" target="_blank" rel="noreferrer noopener">the official documentation</a> indicates a capacity of around 1,200 agents. For very large clusters (several thousand nodes), K8s remains the standard choice.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">K3s vs K8s Comparison Table</h2>
<!-- /wp:heading -->

<!-- wp:spacer {"height":"35px"} -->
<div style="height:35px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<style>
  .cc-table-wrap { overflow-x: auto; }
  .cc-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 17px;
    font-family: "Plus Jakarta Sans","PlusJakartaSans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    color: #111827;
  }
  .cc-table th,
  .cc-table td {
    text-align: left;
    padding: 12px 16px;
    vertical-align: top;
    line-height: 1.6;
  }
  .cc-table tbody tr + tr td,
  .cc-table tbody tr:first-child td {
    border-top: 1px solid #deddee;
  }
  .cc-table th + th,
  .cc-table td + td {
    border-left: 1px solid #deddee;
  }
  .cc-table thead th {
    font-weight: 700;
    text-align: center;
  }
  .cc-table tbody td:first-child {
    font-weight: 600;
  }
  .cc-table th:nth-child(1),
  .cc-table td:nth-child(1) { width: 28%; }
  .cc-table th:nth-child(2),
  .cc-table td:nth-child(2) { width: 36%; }
  .cc-table th:nth-child(3),
  .cc-table td:nth-child(3) { width: 36%; }
</style>

<div class="cc-table-wrap">
  <table class="cc-table">
    <thead>
      <tr>
        <th>Criterion</th>
        <th>K3s</th>
        <th>K8s</th>
      </tr>
    </thead>
    <tbody>
      <tr><td>CNCF certification</td><td>Yes (certified distribution)</td><td>Yes (original project)</td></tr>
      <tr><td>Binary size</td><td>&lt; 100 MB</td><td>Not applicable (separate components)</td></tr>
      <tr><td>Default datastore</td><td>SQLite (single-node) / etcd (high availability)</td><td>etcd</td></tr>
      <tr><td>Embedded runtime</td><td>containerd</td><td>No (to be installed separately)</td></tr>
      <tr><td>ARM support</td><td>Yes (ARM64, ARMv7)</td><td>Yes (depends on the distribution)</td></tr>
      <tr><td>Default ingress</td><td>Traefik (included)</td><td>No (to be deployed separately)</td></tr>
      <tr><td>API compatibility</td><td>Required APIs certified by the CNCF</td><td>Reference implementation (original project)</td></tr>
      <tr><td>Documented max scalability</td><td>~1200 agents (High Availability 3 servers)</td><td>Several thousand nodes</td></tr>
      <tr><td>Main use case</td><td>Edge, IoT, lab, CI/CD</td><td>Enterprise, cloud, datacenters</td></tr>
      <tr><td>Operational complexity</td><td>Low</td><td>High</td></tr>
      <tr><td>Alpha/beta components</td><td>Removed</td><td>Included</td></tr>
    </tbody>
  </table>
</div>
<!-- /wp:html -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Use Cases: Which One Should You Choose?</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Choose K3s if:</h3>
<!-- /wp:heading -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>You deploy on <strong>constrained hardware</strong> (Raspberry Pi, industrial appliances, edge servers with limited RAM).</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>You manage remote <strong>IoT or edge clusters</strong>, potentially in disconnected environments.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>You need a <strong>development or CI cluster</strong> that starts quickly, including on modest hardware.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>You want an operational cluster with <strong>minimal initial configuration</strong>.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Choose K8s (or an enterprise distribution) if:</h3>
<!-- /wp:heading -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>You orchestrate <strong>hundreds or thousands of production nodes</strong>.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Your workloads require <strong>advanced cloud-native integrations</strong> (storage, load balancers, IAM) provided by hyperscalers.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>You need <strong>alpha or beta API components</strong> unavailable in K3s.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Your organization has a <strong>dedicated SRE team</strong> operating clusters.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Hybrid Use Cases: K3s and K8s Together</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K3s and K8s are not mutually exclusive. Several hybrid architectures are documented in production:</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Fleet Management with Rancher</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Edge K3s clusters are managed from a central control plane running on K8s or RKE2. The Home Depot, a major US retailer with more than 2,300 stores, <a href="https://www.datacenterknowledge.com/data-center-site-selection/home-depot-upgrades-2-300-retail-edge-locations-using-suse-rancher-k3s" target="_blank" rel="noreferrer noopener">manages its sites using K3s clusters administered through Rancher</a>.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">K3s for Dev and Staging, K8s for Production</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>API compatibility guarantees that manifests and Helm charts tested on K3s work in production on an enterprise cluster. This parity reduces surprises when promoting environments.</p>
<!-- /wp:paragraph -->

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

<!-- wp:paragraph -->
<p>Test pipelines run on K3s (low cost, fast startup) while production environments use managed K8s clusters.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Managed Kubernetes: A Third Path</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Neither K3s nor K8s solves the question of <strong>daily operations</strong>: updates, certificates, control plane monitoring, or failure management. This is precisely what managed Kubernetes solutions cover.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Hyperscalers (<a href="https://www.clever.cloud/blog/engineering/2026/07/24/kubernetes-cloud/">EKS, GKE, AKS</a>) provide this management within their own clouds. But managed solutions also exist outside these ecosystems, especially for organizations that want to retain control over their data and choose sovereign Kubernetes, or even <a href="https://www.clever.cloud/blog/features/2026/09/09/french-managed-kubernetes-comparison/">French-operated Kubernetes</a>.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p><a href="https://www.clever.cloud/clever-kubernetes-engine/">Clever Kubernetes Engine (CKE)</a> is Clever Cloud’s <a href="https://www.clever.cloud/product/kubernetes/">managed Kubernetes</a> service, designed for teams already using Kubernetes and wanting to delegate control plane management (updates, high availability, monitoring) without being constrained to a single hyperscaler. CKE explicitly targets teams that are not fully covered by the traditional&nbsp; <a href="https://www.clever.cloud/clever-cloud-paas/">PaaS</a> model (multi-runtime use cases, non-twelve-factor workloads, or the need for granular resource control).</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"150px"} -->
<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"level":1,"style":{"typography":{"textAlign":"center"}}} -->
<h1 class="wp-block-heading has-text-align-center">FAQ</h1>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Is K3s a Kubernetes fork?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. K3s is a CNCF-certified Kubernetes distribution. It passes Sonobuoy conformance tests and supports the same APIs as K8s. It is not maintained separately from Kubernetes: it follows upstream Kubernetes releases.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can K3s Be Used in Production?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes, with some nuances. K3s is documented for production workloads in constrained environments (edge, IoT). For large-scale clusters or critical workloads with high SLA requirements, K8s (or an enterprise distribution such as RKE2) is more appropriate.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does K3s Support Helm?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. K3s includes an integrated Helm controller and is compatible with any valid Helm chart.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What Is the Difference Between K3s and K3d?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K3d is a tool that runs K3s inside Docker containers. It further simplifies the creation of local K3s clusters for development, but it is not intended for production use.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does K3s Run on ARM?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. ARM64 and ARMv7 are natively supported, which explains its popularity on Raspberry Pi devices and industrial appliances.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Managed Kubernetes vs Self-Hosted K3s: Which One Should You Choose?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Self-hosted K3s gives you full control but makes you responsible for operations (updates, security, high availability). Managed Kubernetes delegates this responsibility to an operator, at the cost of dependency on that provider. The choice depends on your operational resources and control requirements.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"90px"} -->
<div style="height:90px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->]]></description>
										<content:encoded><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/05/2026-05-27-clever-cloud-banniere-blog-k3s-vs-k8s-en.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="K3s vs K8s EN" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/05/2026-05-27-clever-cloud-banniere-blog-k3s-vs-k8s-en.png 800w, https://cdn.clever-cloud.com/uploads/2026/05/2026-05-27-clever-cloud-banniere-blog-k3s-vs-k8s-en-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/05/2026-05-27-clever-cloud-banniere-blog-k3s-vs-k8s-en-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>In short: K3s is a CNCF-certified Kubernetes distribution optimized for constrained environments (edge, IoT, labs). K8s refers to the original Kubernetes project, designed for large-scale production clusters. The choice depends on your available resources, deployment context and operational requirements.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">K8s: Standard Kubernetes for Enterprise Environments</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K8s is the abbreviation of Kubernetes, with the “8” representing the eight letters between the “K” and the “s”. It is the original open-source project maintained by the Cloud Native Computing Foundation (CNCF) and initially developed by Google.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Kubernetes is designed for <strong>large-scale production environments</strong>: multi-node clusters, high availability, integration with public clouds (AWS, GCP, Azure), or on-premises datacenters. Its control plane includes several separate components: API server, scheduler, controller manager, etcd, deployed independently, which provides maximum flexibility but requires significant operational expertise.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p><strong>Typical requirements for a production control plane node</strong>: at least 2 vCPUs and 2 GB of RAM for Kubernetes components alone, excluding etcd and application workloads.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">K3s: A CNCF-Certified Kubernetes Distribution, Not a Fork</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K3s is a certified Kubernetes distribution, not an unofficial lightweight version or a fork. Created by Rancher Labs, it was <a href="https://thenewstack.io/ranchers-k3s-joins-cncf-sandbox-as-first-kubernetes-distribution/" target="_blank" rel="noreferrer noopener">donated to the CNCF in June 2020</a> and passes the same Sonobuoy conformance tests as all certified distributions. Any valid Kubernetes manifest works on K3s.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Its main goal is to <strong>drastically reduce the resources required </strong>to run Kubernetes in constrained environments (edge, IoT, CI/CD, labs) without giving up API compatibility.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What K3s Changes Compared to K8s</h3>
<!-- /wp:heading -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li></li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><a href="https://k3s.io/" target="_blank" rel="noreferrer noopener">A single binary under 70 MB</a>  (supporting x86, ARM64, ARMv7, and S390X), including the containerd runtime, Flannel CNI, a Traefik ingress controller, and a Klipper load balancer.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>SQLite as the default datastore</strong> in single-node mode instead of etcd. In high-availability configurations (minimum three server nodes), K3s can use <strong>embedded etcd </strong>or an external datastore (MySQL, PostgreSQL, external etcd).</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>Alpha and beta components removed </strong>to reduce the attack surface and memory footprint.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p><strong>Important point</strong>: K3s does not remove etcd; it makes it optional. In single-node mode, SQLite is sufficient. In high availability, embedded or external etcd is supported - although the latter is not officially supported by the K3s team.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading"><strong>Resource Footprint</strong></h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K3s can run with as little as <strong>512 MB of RAM</strong> on an agent node. According to <a href="https://docs.k3s.io/installation/requirements" target="_blank" rel="noreferrer noopener">the official documentation</a> (updated May 2026), a server node (control plane) requires 2 GB of RAM and 2 CPU cores, excluding application workloads. A load-tested profile is available in the <a href="https://docs.k3s.io/reference/resource-profiling" target="_blank" rel="noreferrer noopener">K3s resource profiling guide</a>. It is worth noting that tests on hardware with 1 GB of total RAM showed instability across K3s, k0s, and MicroK8s when deploying real application workloads (even a lightweight Kubernetes cluster still consumes non-negligible control-plane resources).</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Key Technical Differences</h2>
<!-- /wp:heading -->

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

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<style>
  .cc-table-wrap { overflow-x: auto; }
  .cc-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 17px;
    font-family: "Plus Jakarta Sans","PlusJakartaSans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    color: #111827;
  }
  .cc-table th,
  .cc-table td {
    text-align: left;
    padding: 12px 16px;
    vertical-align: top;
    line-height: 1.6;
  }
  .cc-table tbody tr + tr td,
  .cc-table tbody tr:first-child td {
    border-top: 1px solid #deddee;
  }
  .cc-table th + th,
  .cc-table td + td {
    border-left: 1px solid #deddee;
  }
  .cc-table thead th {
    font-weight: 700;
    text-align: center;
  }
  .cc-table th:nth-child(1),
  .cc-table td:nth-child(1) { width: 28%; }
  .cc-table th:nth-child(2),
  .cc-table td:nth-child(2) { width: 36%; }
  .cc-table th:nth-child(3),
  .cc-table td:nth-child(3) { width: 36%; }
</style>

<div class="cc-table-wrap">
  <table class="cc-table">
    <thead>
      <tr>
        <th>Scenario</th>
        <th>K8s</th>
        <th>K3s</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>Single-node</td>
        <td>etcd required</td>
        <td>SQLite by default</td>
      </tr>
      <tr>
        <td>Multi-node High Availability</td>
        <td>etcd</td>
        <td>Embedded or external etcd (MySQL, PostgreSQL)</td>
      </tr>
    </tbody>
  </table>
</div>
<!-- /wp:html -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Runtime and packaging</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K8s no longer provides a default runtime since the removal of dockershim (v1.24, 2022). Starting with Kubernetes 1.24, you must install a CRI-compatible runtime (containerd or CRI-O). K3s embeds containerd directly into its binary.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading"><strong>Control Plane Architecture</strong></h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>In K8s, control plane components (API server, scheduler, controller manager) are separate processes. In K3s, they are merged into a single binary, which reduces overhead but limits some advanced isolation configurations.</p>
<!-- /wp:paragraph -->

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

<!-- wp:paragraph -->
<p>K3s is suitable for moderately sized clusters. In high-availability configurations (3 server nodes, 4 vCPU / 8 GB RAM), <a href="https://docs.k3s.io/installation/requirements" target="_blank" rel="noreferrer noopener">the official documentation</a> indicates a capacity of around 1,200 agents. For very large clusters (several thousand nodes), K8s remains the standard choice.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">K3s vs K8s Comparison Table</h2>
<!-- /wp:heading -->

<!-- wp:spacer {"height":"35px"} -->
<div style="height:35px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<style>
  .cc-table-wrap { overflow-x: auto; }
  .cc-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 17px;
    font-family: "Plus Jakarta Sans","PlusJakartaSans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    color: #111827;
  }
  .cc-table th,
  .cc-table td {
    text-align: left;
    padding: 12px 16px;
    vertical-align: top;
    line-height: 1.6;
  }
  .cc-table tbody tr + tr td,
  .cc-table tbody tr:first-child td {
    border-top: 1px solid #deddee;
  }
  .cc-table th + th,
  .cc-table td + td {
    border-left: 1px solid #deddee;
  }
  .cc-table thead th {
    font-weight: 700;
    text-align: center;
  }
  .cc-table tbody td:first-child {
    font-weight: 600;
  }
  .cc-table th:nth-child(1),
  .cc-table td:nth-child(1) { width: 28%; }
  .cc-table th:nth-child(2),
  .cc-table td:nth-child(2) { width: 36%; }
  .cc-table th:nth-child(3),
  .cc-table td:nth-child(3) { width: 36%; }
</style>

<div class="cc-table-wrap">
  <table class="cc-table">
    <thead>
      <tr>
        <th>Criterion</th>
        <th>K3s</th>
        <th>K8s</th>
      </tr>
    </thead>
    <tbody>
      <tr><td>CNCF certification</td><td>Yes (certified distribution)</td><td>Yes (original project)</td></tr>
      <tr><td>Binary size</td><td>&lt; 100 MB</td><td>Not applicable (separate components)</td></tr>
      <tr><td>Default datastore</td><td>SQLite (single-node) / etcd (high availability)</td><td>etcd</td></tr>
      <tr><td>Embedded runtime</td><td>containerd</td><td>No (to be installed separately)</td></tr>
      <tr><td>ARM support</td><td>Yes (ARM64, ARMv7)</td><td>Yes (depends on the distribution)</td></tr>
      <tr><td>Default ingress</td><td>Traefik (included)</td><td>No (to be deployed separately)</td></tr>
      <tr><td>API compatibility</td><td>Required APIs certified by the CNCF</td><td>Reference implementation (original project)</td></tr>
      <tr><td>Documented max scalability</td><td>~1200 agents (High Availability 3 servers)</td><td>Several thousand nodes</td></tr>
      <tr><td>Main use case</td><td>Edge, IoT, lab, CI/CD</td><td>Enterprise, cloud, datacenters</td></tr>
      <tr><td>Operational complexity</td><td>Low</td><td>High</td></tr>
      <tr><td>Alpha/beta components</td><td>Removed</td><td>Included</td></tr>
    </tbody>
  </table>
</div>
<!-- /wp:html -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Use Cases: Which One Should You Choose?</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Choose K3s if:</h3>
<!-- /wp:heading -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>You deploy on <strong>constrained hardware</strong> (Raspberry Pi, industrial appliances, edge servers with limited RAM).</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>You manage remote <strong>IoT or edge clusters</strong>, potentially in disconnected environments.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>You need a <strong>development or CI cluster</strong> that starts quickly, including on modest hardware.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>You want an operational cluster with <strong>minimal initial configuration</strong>.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Choose K8s (or an enterprise distribution) if:</h3>
<!-- /wp:heading -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>You orchestrate <strong>hundreds or thousands of production nodes</strong>.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Your workloads require <strong>advanced cloud-native integrations</strong> (storage, load balancers, IAM) provided by hyperscalers.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>You need <strong>alpha or beta API components</strong> unavailable in K3s.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>Your organization has a <strong>dedicated SRE team</strong> operating clusters.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Hybrid Use Cases: K3s and K8s Together</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K3s and K8s are not mutually exclusive. Several hybrid architectures are documented in production:</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Fleet Management with Rancher</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Edge K3s clusters are managed from a central control plane running on K8s or RKE2. The Home Depot, a major US retailer with more than 2,300 stores, <a href="https://www.datacenterknowledge.com/data-center-site-selection/home-depot-upgrades-2-300-retail-edge-locations-using-suse-rancher-k3s" target="_blank" rel="noreferrer noopener">manages its sites using K3s clusters administered through Rancher</a>.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">K3s for Dev and Staging, K8s for Production</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>API compatibility guarantees that manifests and Helm charts tested on K3s work in production on an enterprise cluster. This parity reduces surprises when promoting environments.</p>
<!-- /wp:paragraph -->

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

<!-- wp:paragraph -->
<p>Test pipelines run on K3s (low cost, fast startup) while production environments use managed K8s clusters.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Managed Kubernetes: A Third Path</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Neither K3s nor K8s solves the question of <strong>daily operations</strong>: updates, certificates, control plane monitoring, or failure management. This is precisely what managed Kubernetes solutions cover.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Hyperscalers (<a href="https://www.clever.cloud/blog/engineering/2026/07/24/kubernetes-cloud/">EKS, GKE, AKS</a>) provide this management within their own clouds. But managed solutions also exist outside these ecosystems, especially for organizations that want to retain control over their data and choose sovereign Kubernetes, or even <a href="https://www.clever.cloud/blog/features/2026/09/09/french-managed-kubernetes-comparison/">French-operated Kubernetes</a>.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p><a href="https://www.clever.cloud/clever-kubernetes-engine/">Clever Kubernetes Engine (CKE)</a> is Clever Cloud’s <a href="https://www.clever.cloud/product/kubernetes/">managed Kubernetes</a> service, designed for teams already using Kubernetes and wanting to delegate control plane management (updates, high availability, monitoring) without being constrained to a single hyperscaler. CKE explicitly targets teams that are not fully covered by the traditional&nbsp; <a href="https://www.clever.cloud/clever-cloud-paas/">PaaS</a> model (multi-runtime use cases, non-twelve-factor workloads, or the need for granular resource control).</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"150px"} -->
<div style="height:150px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"level":1,"style":{"typography":{"textAlign":"center"}}} -->
<h1 class="wp-block-heading has-text-align-center">FAQ</h1>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Is K3s a Kubernetes fork?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. K3s is a CNCF-certified Kubernetes distribution. It passes Sonobuoy conformance tests and supports the same APIs as K8s. It is not maintained separately from Kubernetes: it follows upstream Kubernetes releases.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can K3s Be Used in Production?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes, with some nuances. K3s is documented for production workloads in constrained environments (edge, IoT). For large-scale clusters or critical workloads with high SLA requirements, K8s (or an enterprise distribution such as RKE2) is more appropriate.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does K3s Support Helm?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. K3s includes an integrated Helm controller and is compatible with any valid Helm chart.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What Is the Difference Between K3s and K3d?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K3d is a tool that runs K3s inside Docker containers. It further simplifies the creation of local K3s clusters for development, but it is not intended for production use.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does K3s Run on ARM?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. ARM64 and ARMv7 are natively supported, which explains its popularity on Raspberry Pi devices and industrial appliances.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Managed Kubernetes vs Self-Hosted K3s: Which One Should You Choose?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Self-hosted K3s gives you full control but makes you responsible for operations (updates, security, high availability). Managed Kubernetes delegates this responsibility to an operator, at the cost of dependency on that provider. The choice depends on your operational resources and control requirements.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"90px"} -->
<div style="height:90px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Kubernetes vs Docker : Differences and When to Use Them</title>
		<link>https://www.clever.cloud/blog/features/2026/05/22/kubernetes-vs-docker-differences-and-when-to-use-them/</link>
		
		<dc:creator><![CDATA[Marjorie Darrigade]]></dc:creator>
		<pubDate>Fri, 22 May 2026 20:31:53 +0000</pubDate>
				<category><![CDATA[Features]]></category>
		<category><![CDATA[docker]]></category>
		<category><![CDATA[K8S]]></category>
		<category><![CDATA[Kubernetes]]></category>
		<guid isPermaLink="false">https://www.clever.cloud/?p=24363</guid>

					<description><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/05/2026-05-22-clever-cloud-banniere-blog-k8s-vs-docker-eng.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="K8s vs Docker ENG" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/05/2026-05-22-clever-cloud-banniere-blog-k8s-vs-docker-eng.png 800w, https://cdn.clever-cloud.com/uploads/2026/05/2026-05-22-clever-cloud-banniere-blog-k8s-vs-docker-eng-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/05/2026-05-22-clever-cloud-banniere-blog-k8s-vs-docker-eng-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>The <a href="https://www.clever.cloud/blog/engineering/2026/05/19/k8s-kubernetes-definition-standard/">Kubernetes</a> vs Docker question deserves a precise answer, because the two technologies do not solve the same problem.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Docker is mainly used to build and run containers. Kubernetes is used to orchestrate those containers once the infrastructure becomes more complex. The two technologies are therefore often complementary, even though they are frequently, and incorrectly, presented as opposites.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Understanding this distinction helps clarify when Docker alone is enough, when <a href="https://www.clever.cloud/product/kubernetes/">Kubernetes</a> becomes relevant, and why not every application actually needs a Kubernetes cluster.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Docker: Standardizing Application Execution</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Docker popularized modern containerization. Its goal is simple: make applications run the same way regardless of the environment in which they are executed.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Before Docker, it was common for an application to work perfectly on a developer’s machine but fail once deployed to a server. Differences in system versions, missing dependencies, or inconsistent configurations made deployments significantly more difficult.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Docker largely solved this problem by packaging an application and its dependencies into an isolated container. In practice, the container includes the application itself, its libraries, dependencies, and some system components required for execution.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>The environment becomes portable and reproducible. A Docker image can run on any compatible machine with predictable behavior. This standardization explains Docker’s massive adoption across CI/CD pipelines, development environments, and modern architectures.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Docker Is Not Just About “Running Containers”</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>In many teams, Docker has become an everyday tool. A developer can locally run a Node.js API, a PostgreSQL database, Redis, or an Nginx service without manually installing each component on their machine. Everything runs inside isolated containers.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>This approach greatly simplifies local development, testing, demo environments, continuous integration, and application deployments.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>For relatively simple applications, Docker alone may be sufficient. This is especially true when a team manages only a few services, operates a limited infrastructure, has limited scaling requirements or needs little operational automation. In such situations, adding Kubernetes may actually introduce unnecessary complexity.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Where Docker Reaches Its Limits</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Docker works extremely well for running containers. However, it does not automatically solve large-scale orchestration challenges.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>As the number of services grows, several questions quickly emerge:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>How do you distribute containers across multiple servers?</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>How do you automatically restart a failed service?</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>How do you perform updates without downtime?</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>How do you automatically absorb traffic spikes?</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>How do you monitor dozens or hundreds of distributed workloads?</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Docker was not designed to handle this level of operational complexity on its own. That is precisely the role of <a href="https://www.clever.cloud/blog/engineering/2026/07/03/kubernetes-orchestration-containers-what-is-it-for/">container orchestration</a>, where Kubernetes has become the most widely adopted standard.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Kubernetes: Automating Container Operations</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Kubernetes is a container orchestrator. Its goal is not to replace Docker for image creation or containerization logic. Kubernetes operates at a higher level: infrastructure automation and operations management.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>It can automatically deploy applications, distribute workloads across multiple machines, restart failed containers, manage high availability, perform auto-scaling, and orchestrate distributed architectures.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>In other words, Docker runs containers, while Kubernetes coordinates them across a cluster. That distinction is essential.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">A Practical Example: Docker Alone vs Kubernetes</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Consider a modern e-commerce platform. Initially, the application may remain relatively simple: a backend, a frontend, and a database. Docker is often enough to run this stack.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>But over time, the architecture evolves: multiple microservices appear, some components need to scale independently, message queues are introduced, several environments must remain synchronized, availability becomes critical.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>At that point, manually managing every container quickly becomes difficult. Kubernetes introduces automation mechanisms such as automatic workload recovery, load distribution, service replication, rolling deployments, and automatic reconciliation of the desired cluster state.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>This is why Kubernetes has become the de facto standard for cloud-native orchestration.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Kubernetes vs Docker: Does One Replace the Other?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>This is one of the most common questions, and the answer is clear: Kubernetes does not replace Docker.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>For many years, Kubernetes used Docker as its container runtime. That is no longer the default behavior. Starting with version 1.20 (December 2020), Kubernetes deprecated direct Docker support through the “dockershim” component. This support was fully removed in Kubernetes 1.24, released in May 2022.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Since then, Kubernetes has relied on CRI-compatible runtimes (Container Runtime Interface) such as containerd or CRI-O.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>This change has little impact on developers in day-to-day workflows. Docker-built images comply with the OCI (Open Container Initiative) standard and remain fully compatible with Kubernetes. The image format itself did not change: only the runtime layer inside Kubernetes clusters evolved.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>In practice, Docker and Kubernetes still work together in many environments. Docker is used to build and test images locally. Kubernetes deploys and orchestrates them in production.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>The confusion often comes from the fact that Docker was historically used at both stages of the container lifecycle. That is no longer true on the Kubernetes runtime side, but Docker remains heavily used for builds and development.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>The Kubernetes vs Docker distinction is therefore not about replacement, but about roles: each technology operates at a different stage of the containerized application lifecycle.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">When to Use Docker Without Kubernetes</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Docker alone remains highly relevant in many situations. It is often the right choice for simple projects, internal applications, development environments, prototypes, small web platforms, or infrastructures with limited operational requirements.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>In these scenarios, Kubernetes may represent significant operational overhead compared to the actual needs. In some cases, a lightweight distribution such as K3S may also be more appropriate than a full Kubernetes cluster.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Clever Cloud explicitly recognises that Kubernetes is not the best choice for every application, including in the positioning of  <a href="https://www.clever.cloud/product/kubernetes/">Clever Kubernetes Engine (CKE)</a>, its managed Kubernetes platform.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">When Kubernetes Actually Becomes Useful</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Kubernetes becomes valuable when an architecture requires advanced orchestration capabilities. This is especially true when multiple services must be coordinated, when deployments become frequent, when resilience becomes critical, when workloads fluctuate significantly, when teams already use GitOps practices, or when infrastructure becomes distributed or hybrid.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Some organizations also use Kubernetes to standardize deployments across multiple environments or cloud providers. In this context, choosing a <a href="https://www.clever.cloud/blog/features/2026/07/24/managed-kubernetes-benefits-limitations-and-selection-criteria/">managed Kubernetes</a> platform often becomes central to reducing operational burden.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>This is precisely the type of use case behind solutions such as&nbsp;<a href="https://www.clever.cloud/blog/company/2026/04/27/cke-in-public-beta-managed-sovereign-and-properly-integrated-kubernetes/">CKE</a>, designed to remain compatible with standard Kubernetes ecosystem tools while integrating with the broader Clever Cloud platform.&nbsp;</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Kubernetes or PaaS: They Are Not Always Competing Approaches</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Another common misconception is that Kubernetes necessarily replaces a PaaS (Platform as a Service). In practice, many applications run perfectly well on a traditional PaaS with less operational overhead and less complexity.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Even within the context of <a href="https://www.clever.cloud/clever-kubernetes-engine/">CKE</a>, the positioning is explicit: Kubernetes does not replace the <a href="https://www.clever.cloud/clever-cloud-paas/">PaaS</a>. The two address different operational models, not different levels of complexity: the PaaS takes care of operations, Kubernetes gives you control over them. Both run serious production workloads. The goal is therefore not to move every application onto Kubernetes, but to use it when it provides real technical or operational value.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Docker vs Kubernetes: Key Differences to Remember</h2>
<!-- /wp:heading -->

<!-- wp:spacer {"height":"35px"} -->
<div style="height:35px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<style>
  .cc-table-wrap { overflow-x: auto; }
  .cc-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 17px;
    font-family: "Plus Jakarta Sans","PlusJakartaSans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    color: #111827;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
  }
  .cc-table th,
  .cc-table td {
    text-align: left;
    padding: 12px 16px;
    vertical-align: top;
    line-height: 1.6;
  }

  /* Internal horizontal lines only */
  .cc-table tbody tr + tr td,
  .cc-table tbody tr:first-child td {
    border-top: 1px solid #deddee;
  }

  /* Internal vertical lines only */
  .cc-table th + th,
  .cc-table td + td {
    border-left: 1px solid #deddee;
  }

  .cc-table thead th {
    font-weight: 700;
    text-align: center;
  }

  .cc-table tbody td:first-child {
    font-weight: 600;
  }

  /* Column widths */
  .cc-table th:nth-child(1),
  .cc-table td:nth-child(1) { width: 25%; }

  .cc-table th:nth-child(2),
  .cc-table td:nth-child(2) { width: 37.5%; }

  .cc-table th:nth-child(3),
  .cc-table td:nth-child(3) { width: 37.5%; }
</style>

<div class="cc-table-wrap">
  <table class="cc-table">
    <thead>
      <tr>
        <th></th>
        <th>Docker</th>
        <th>Kubernetes</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>Main purpose</td>
        <td>Create and run containers</td>
        <td>Orchestrate containers</td>
      </tr>
      <tr>
        <td>Target environments</td>
        <td>Development, simple projects</td>
        <td>Distributed infrastructures</td>
      </tr>
      <tr>
        <td>Complexity</td>
        <td>Easier to get started with</td>
        <td>More complex to operate, designed for advanced orchestration</td>
      </tr>
      <tr>
        <td>Typical use cases</td>
        <td>CI/CD, local environments, prototypes</td>
        <td>Advanced cloud-native architectures</td>
      </tr>
      <tr>
        <td>Automation</td>
        <td>Limited to execution</td>
        <td>Auto-scaling, auto-healing, high availability</td>
      </tr>
    </tbody>
  </table>
</div>
<!-- /wp:html -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Docker and Kubernetes Are Not Competing Technologies</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The Kubernetes vs Docker question is not really about choosing one over the other: each addresses a different need at a different stage of the application lifecycle.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Docker simplified the creation and execution of containerized applications. Kubernetes automated their operation at scale.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Not every application needs Kubernetes. In many cases, Docker alone is enough. When teams want to delegate application operations entirely, a PaaS can manage them, including for distributed architectures and applications with demanding resilience requirements. Kubernetes, for its part, becomes relevant when you need explicit control over orchestration, integration with the CNCF ecosystem, or multi-cloud portability on open standards. It is a choice of operational model and team needs, not a level of application complexity.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>The real challenge is therefore not choosing "Docker or Kubernetes," but recognizing the point at which your orchestration needs make Kubernetes genuinely worthwhile.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer -->
<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"level":1,"style":{"typography":{"textAlign":"center"}}} -->
<h1 class="wp-block-heading has-text-align-center">FAQ</h1>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Are Docker and Kubernetes competitors?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. Docker and Kubernetes address different needs. Docker is mainly used to build and run containers, while Kubernetes orchestrates them at scale.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does Kubernetes replace Docker?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. Since Kubernetes version 1.24 (May 2022), Docker is no longer used as the cluster’s internal runtime. Kubernetes now relies on CRI-compatible runtimes such as containerd or CRI-O. However, Docker images, which comply with the OCI standard, remain fully compatible with Kubernetes.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Why Has Kubernetes Become a Standard?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Kubernetes became the dominant standard thanks to its declarative model, portability across environments, and the cloud-native ecosystem built around the CNCF, where it has been a graduated project since 2016. Its ecosystem includes tools such as Helm, Prometheus, and Argo CD.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What Is the Difference Between K3S and Standard Kubernetes?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K3S is a lightweight Kubernetes distribution designed for edge environments, IoT, development, or small clusters, with lower resource consumption than standard Kubernetes.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Is Managed Kubernetes Better?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>In many organizations, yes. Managed Kubernetes reduces the operational burden associated with the control plane, updates, security, and cluster resilience. This is the approach taken by&nbsp; <a href="https://www.clever.cloud/product/kubernetes/">Clever Kubernetes Engine (CKE)</a>.</p>
<!-- /wp:paragraph -->]]></description>
										<content:encoded><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/05/2026-05-22-clever-cloud-banniere-blog-k8s-vs-docker-eng.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="K8s vs Docker ENG" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/05/2026-05-22-clever-cloud-banniere-blog-k8s-vs-docker-eng.png 800w, https://cdn.clever-cloud.com/uploads/2026/05/2026-05-22-clever-cloud-banniere-blog-k8s-vs-docker-eng-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/05/2026-05-22-clever-cloud-banniere-blog-k8s-vs-docker-eng-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>The <a href="https://www.clever.cloud/blog/engineering/2026/05/19/k8s-kubernetes-definition-standard/">Kubernetes</a> vs Docker question deserves a precise answer, because the two technologies do not solve the same problem.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Docker is mainly used to build and run containers. Kubernetes is used to orchestrate those containers once the infrastructure becomes more complex. The two technologies are therefore often complementary, even though they are frequently, and incorrectly, presented as opposites.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Understanding this distinction helps clarify when Docker alone is enough, when <a href="https://www.clever.cloud/product/kubernetes/">Kubernetes</a> becomes relevant, and why not every application actually needs a Kubernetes cluster.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Docker: Standardizing Application Execution</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Docker popularized modern containerization. Its goal is simple: make applications run the same way regardless of the environment in which they are executed.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Before Docker, it was common for an application to work perfectly on a developer’s machine but fail once deployed to a server. Differences in system versions, missing dependencies, or inconsistent configurations made deployments significantly more difficult.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Docker largely solved this problem by packaging an application and its dependencies into an isolated container. In practice, the container includes the application itself, its libraries, dependencies, and some system components required for execution.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>The environment becomes portable and reproducible. A Docker image can run on any compatible machine with predictable behavior. This standardization explains Docker’s massive adoption across CI/CD pipelines, development environments, and modern architectures.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Docker Is Not Just About “Running Containers”</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>In many teams, Docker has become an everyday tool. A developer can locally run a Node.js API, a PostgreSQL database, Redis, or an Nginx service without manually installing each component on their machine. Everything runs inside isolated containers.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>This approach greatly simplifies local development, testing, demo environments, continuous integration, and application deployments.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>For relatively simple applications, Docker alone may be sufficient. This is especially true when a team manages only a few services, operates a limited infrastructure, has limited scaling requirements or needs little operational automation. In such situations, adding Kubernetes may actually introduce unnecessary complexity.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Where Docker Reaches Its Limits</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Docker works extremely well for running containers. However, it does not automatically solve large-scale orchestration challenges.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>As the number of services grows, several questions quickly emerge:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li>How do you distribute containers across multiple servers?</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>How do you automatically restart a failed service?</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>How do you perform updates without downtime?</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>How do you automatically absorb traffic spikes?</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li>How do you monitor dozens or hundreds of distributed workloads?</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Docker was not designed to handle this level of operational complexity on its own. That is precisely the role of <a href="https://www.clever.cloud/blog/engineering/2026/07/03/kubernetes-orchestration-containers-what-is-it-for/">container orchestration</a>, where Kubernetes has become the most widely adopted standard.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Kubernetes: Automating Container Operations</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Kubernetes is a container orchestrator. Its goal is not to replace Docker for image creation or containerization logic. Kubernetes operates at a higher level: infrastructure automation and operations management.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>It can automatically deploy applications, distribute workloads across multiple machines, restart failed containers, manage high availability, perform auto-scaling, and orchestrate distributed architectures.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>In other words, Docker runs containers, while Kubernetes coordinates them across a cluster. That distinction is essential.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">A Practical Example: Docker Alone vs Kubernetes</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Consider a modern e-commerce platform. Initially, the application may remain relatively simple: a backend, a frontend, and a database. Docker is often enough to run this stack.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>But over time, the architecture evolves: multiple microservices appear, some components need to scale independently, message queues are introduced, several environments must remain synchronized, availability becomes critical.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>At that point, manually managing every container quickly becomes difficult. Kubernetes introduces automation mechanisms such as automatic workload recovery, load distribution, service replication, rolling deployments, and automatic reconciliation of the desired cluster state.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>This is why Kubernetes has become the de facto standard for cloud-native orchestration.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Kubernetes vs Docker: Does One Replace the Other?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>This is one of the most common questions, and the answer is clear: Kubernetes does not replace Docker.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>For many years, Kubernetes used Docker as its container runtime. That is no longer the default behavior. Starting with version 1.20 (December 2020), Kubernetes deprecated direct Docker support through the “dockershim” component. This support was fully removed in Kubernetes 1.24, released in May 2022.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Since then, Kubernetes has relied on CRI-compatible runtimes (Container Runtime Interface) such as containerd or CRI-O.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>This change has little impact on developers in day-to-day workflows. Docker-built images comply with the OCI (Open Container Initiative) standard and remain fully compatible with Kubernetes. The image format itself did not change: only the runtime layer inside Kubernetes clusters evolved.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>In practice, Docker and Kubernetes still work together in many environments. Docker is used to build and test images locally. Kubernetes deploys and orchestrates them in production.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>The confusion often comes from the fact that Docker was historically used at both stages of the container lifecycle. That is no longer true on the Kubernetes runtime side, but Docker remains heavily used for builds and development.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>The Kubernetes vs Docker distinction is therefore not about replacement, but about roles: each technology operates at a different stage of the containerized application lifecycle.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">When to Use Docker Without Kubernetes</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Docker alone remains highly relevant in many situations. It is often the right choice for simple projects, internal applications, development environments, prototypes, small web platforms, or infrastructures with limited operational requirements.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>In these scenarios, Kubernetes may represent significant operational overhead compared to the actual needs. In some cases, a lightweight distribution such as K3S may also be more appropriate than a full Kubernetes cluster.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Clever Cloud explicitly recognises that Kubernetes is not the best choice for every application, including in the positioning of  <a href="https://www.clever.cloud/product/kubernetes/">Clever Kubernetes Engine (CKE)</a>, its managed Kubernetes platform.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">When Kubernetes Actually Becomes Useful</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Kubernetes becomes valuable when an architecture requires advanced orchestration capabilities. This is especially true when multiple services must be coordinated, when deployments become frequent, when resilience becomes critical, when workloads fluctuate significantly, when teams already use GitOps practices, or when infrastructure becomes distributed or hybrid.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Some organizations also use Kubernetes to standardize deployments across multiple environments or cloud providers. In this context, choosing a <a href="https://www.clever.cloud/blog/features/2026/07/24/managed-kubernetes-benefits-limitations-and-selection-criteria/">managed Kubernetes</a> platform often becomes central to reducing operational burden.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>This is precisely the type of use case behind solutions such as&nbsp;<a href="https://www.clever.cloud/blog/company/2026/04/27/cke-in-public-beta-managed-sovereign-and-properly-integrated-kubernetes/">CKE</a>, designed to remain compatible with standard Kubernetes ecosystem tools while integrating with the broader Clever Cloud platform.&nbsp;</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Kubernetes or PaaS: They Are Not Always Competing Approaches</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Another common misconception is that Kubernetes necessarily replaces a PaaS (Platform as a Service). In practice, many applications run perfectly well on a traditional PaaS with less operational overhead and less complexity.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Even within the context of <a href="https://www.clever.cloud/clever-kubernetes-engine/">CKE</a>, the positioning is explicit: Kubernetes does not replace the <a href="https://www.clever.cloud/clever-cloud-paas/">PaaS</a>. The two address different operational models, not different levels of complexity: the PaaS takes care of operations, Kubernetes gives you control over them. Both run serious production workloads. The goal is therefore not to move every application onto Kubernetes, but to use it when it provides real technical or operational value.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"15px"} -->
<div style="height:15px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Docker vs Kubernetes: Key Differences to Remember</h2>
<!-- /wp:heading -->

<!-- wp:spacer {"height":"35px"} -->
<div style="height:35px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<style>
  .cc-table-wrap { overflow-x: auto; }
  .cc-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 17px;
    font-family: "Plus Jakarta Sans","PlusJakartaSans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    color: #111827;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
  }
  .cc-table th,
  .cc-table td {
    text-align: left;
    padding: 12px 16px;
    vertical-align: top;
    line-height: 1.6;
  }

  /* Internal horizontal lines only */
  .cc-table tbody tr + tr td,
  .cc-table tbody tr:first-child td {
    border-top: 1px solid #deddee;
  }

  /* Internal vertical lines only */
  .cc-table th + th,
  .cc-table td + td {
    border-left: 1px solid #deddee;
  }

  .cc-table thead th {
    font-weight: 700;
    text-align: center;
  }

  .cc-table tbody td:first-child {
    font-weight: 600;
  }

  /* Column widths */
  .cc-table th:nth-child(1),
  .cc-table td:nth-child(1) { width: 25%; }

  .cc-table th:nth-child(2),
  .cc-table td:nth-child(2) { width: 37.5%; }

  .cc-table th:nth-child(3),
  .cc-table td:nth-child(3) { width: 37.5%; }
</style>

<div class="cc-table-wrap">
  <table class="cc-table">
    <thead>
      <tr>
        <th></th>
        <th>Docker</th>
        <th>Kubernetes</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>Main purpose</td>
        <td>Create and run containers</td>
        <td>Orchestrate containers</td>
      </tr>
      <tr>
        <td>Target environments</td>
        <td>Development, simple projects</td>
        <td>Distributed infrastructures</td>
      </tr>
      <tr>
        <td>Complexity</td>
        <td>Easier to get started with</td>
        <td>More complex to operate, designed for advanced orchestration</td>
      </tr>
      <tr>
        <td>Typical use cases</td>
        <td>CI/CD, local environments, prototypes</td>
        <td>Advanced cloud-native architectures</td>
      </tr>
      <tr>
        <td>Automation</td>
        <td>Limited to execution</td>
        <td>Auto-scaling, auto-healing, high availability</td>
      </tr>
    </tbody>
  </table>
</div>
<!-- /wp:html -->

<!-- wp:spacer {"height":"20px"} -->
<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Docker and Kubernetes Are Not Competing Technologies</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>The Kubernetes vs Docker question is not really about choosing one over the other: each addresses a different need at a different stage of the application lifecycle.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Docker simplified the creation and execution of containerized applications. Kubernetes automated their operation at scale.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Not every application needs Kubernetes. In many cases, Docker alone is enough. When teams want to delegate application operations entirely, a PaaS can manage them, including for distributed architectures and applications with demanding resilience requirements. Kubernetes, for its part, becomes relevant when you need explicit control over orchestration, integration with the CNCF ecosystem, or multi-cloud portability on open standards. It is a choice of operational model and team needs, not a level of application complexity.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>The real challenge is therefore not choosing "Docker or Kubernetes," but recognizing the point at which your orchestration needs make Kubernetes genuinely worthwhile.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer -->
<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading {"level":1,"style":{"typography":{"textAlign":"center"}}} -->
<h1 class="wp-block-heading has-text-align-center">FAQ</h1>
<!-- /wp:heading -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Are Docker and Kubernetes competitors?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. Docker and Kubernetes address different needs. Docker is mainly used to build and run containers, while Kubernetes orchestrates them at scale.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does Kubernetes replace Docker?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. Since Kubernetes version 1.24 (May 2022), Docker is no longer used as the cluster’s internal runtime. Kubernetes now relies on CRI-compatible runtimes such as containerd or CRI-O. However, Docker images, which comply with the OCI standard, remain fully compatible with Kubernetes.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Why Has Kubernetes Become a Standard?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Kubernetes became the dominant standard thanks to its declarative model, portability across environments, and the cloud-native ecosystem built around the CNCF, where it has been a graduated project since 2016. Its ecosystem includes tools such as Helm, Prometheus, and Argo CD.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">What Is the Difference Between K3S and Standard Kubernetes?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>K3S is a lightweight Kubernetes distribution designed for edge environments, IoT, development, or small clusters, with lower resource consumption than standard Kubernetes.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Is Managed Kubernetes Better?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>In many organizations, yes. Managed Kubernetes reduces the operational burden associated with the control plane, updates, security, and cluster resilience. This is the approach taken by&nbsp; <a href="https://www.clever.cloud/product/kubernetes/">Clever Kubernetes Engine (CKE)</a>.</p>
<!-- /wp:paragraph -->]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Cloud modernisation: how to align governance and operations without adding complexity</title>
		<link>https://www.clever.cloud/blog/engineering/2026/04/21/cloud-modernisation-how-to-align-governance-and-operations-without-adding-complexity/</link>
		
		<dc:creator><![CDATA[Marjorie Darrigade]]></dc:creator>
		<pubDate>Tue, 21 Apr 2026 15:18:47 +0000</pubDate>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[Guests]]></category>
		<category><![CDATA[webinar]]></category>
		<guid isPermaLink="false">https://www.clever.cloud/?p=24180</guid>

					<description><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/04/2026-04-20-webinaire-ccxcycloid-en-1.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Webinaire CCxCycloid" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/04/2026-04-20-webinaire-ccxcycloid-en-1.png 800w, https://cdn.clever-cloud.com/uploads/2026/04/2026-04-20-webinaire-ccxcycloid-en-1-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/04/2026-04-20-webinaire-ccxcycloid-en-1-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>In this context, the question is no longer whether to migrate, but how to structure what already exists, maintain control over day-to-day operations, and retain ownership of environments and data.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>On Tuesday 28 April at 11:30 AM, Clever Cloud and <a href="https://www.cycloid.io/">Cycloid</a> are hosting a webinar to address these challenges.</p>
<!-- /wp:paragraph -->

<!-- wp:image {"lightbox":{"enabled":false},"id":24153,"sizeSlug":"large","linkDestination":"custom"} -->
<figure class="wp-block-image size-large"><img src="https://cdn.clever-cloud.com/uploads/2026/04/2026-04-20-webinaire-ccxcycloid-en-1024x427.png" alt="Webinaire CCxCycloid" class="wp-image-24153"/></figure>
<!-- /wp:image -->

<!-- wp:buttons {"layout":{"type":"flex","justifyContent":"center"}} -->
<div class="wp-block-buttons"><!-- wp:button -->
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://app.livestorm.co/clevercloud/clever-cloud-et-cycloid-modernisation-cloud-en-europe">Register now</a></div>
<!-- /wp:button --></div>
<!-- /wp:buttons -->

<!-- wp:heading -->
<h2 class="wp-block-heading"><strong><strong>Two complementary perspectives on a shared challenge</strong></strong></h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>We are offering a cross-functional discussion to provide concrete insight into these topics.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Cycloid covers the structuring and governance of environments through a unified internal developer platform and portal. Clever Cloud addresses managed operations, operational maintenance (MCO) and operational sovereignty.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Join Florent Perreux (Chief Sales Officer @ Clever Cloud), Steven Le Roux (CTO @ Clever Cloud), Alexandre Blin (Business Director SEMEA @ Cycloid) and Olivier de Turckheim (Solution Architect @ Cycloid) to understand how to align governance and operations without adding complexity.</p>
<!-- /wp:paragraph -->

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

<!-- wp:paragraph -->
<p>🔹 Why cloud modernisation goes beyond migration;plus à une migration;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>🔹 Structuring and governance challenges in multi-cloud environments;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>🔹 Operational challenges related to operations and maintenance;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>🔹 How to align governance and operations without multiplying complexity;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>🔹 A live Q&amp;A session to ask your questions directly.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading"><strong>Why attend?</strong></h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>✅ Understand the root causes of complexity in cloud projects;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>✅ Identify the levers to structure your usage and reduce vendor dependency;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>✅ Gain a clearer understanding of operational and sovereignty challenges;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>✅ Benefit from concrete real-world experience;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>✅ Engage directly with experts.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading"><strong>Register now</strong></h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>🗓️ Tuesday 28 April 2026</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>⏰ 11:30 AM – 12:00 PM</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>💻 Online webinar on Livestorm</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"21px"} -->
<div style="height:21px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>Facing these challenges? Join us on 28 April!</p>
<!-- /wp:paragraph -->

<!-- wp:buttons {"layout":{"type":"flex","justifyContent":"center"}} -->
<div class="wp-block-buttons"><!-- wp:button -->
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://app.livestorm.co/clevercloud/clever-cloud-et-cycloid-modernisation-cloud-en-europe">Register now</a></div>
<!-- /wp:button --></div>
<!-- /wp:buttons -->]]></description>
										<content:encoded><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/04/2026-04-20-webinaire-ccxcycloid-en-1.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Webinaire CCxCycloid" decoding="async" loading="lazy" srcset="https://cdn.clever-cloud.com/uploads/2026/04/2026-04-20-webinaire-ccxcycloid-en-1.png 800w, https://cdn.clever-cloud.com/uploads/2026/04/2026-04-20-webinaire-ccxcycloid-en-1-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/04/2026-04-20-webinaire-ccxcycloid-en-1-768x341.png 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>In this context, the question is no longer whether to migrate, but how to structure what already exists, maintain control over day-to-day operations, and retain ownership of environments and data.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>On Tuesday 28 April at 11:30 AM, Clever Cloud and <a href="https://www.cycloid.io/">Cycloid</a> are hosting a webinar to address these challenges.</p>
<!-- /wp:paragraph -->

<!-- wp:image {"lightbox":{"enabled":false},"id":24153,"sizeSlug":"large","linkDestination":"custom"} -->
<figure class="wp-block-image size-large"><img src="https://cdn.clever-cloud.com/uploads/2026/04/2026-04-20-webinaire-ccxcycloid-en-1024x427.png" alt="Webinaire CCxCycloid" class="wp-image-24153"/></figure>
<!-- /wp:image -->

<!-- wp:buttons {"layout":{"type":"flex","justifyContent":"center"}} -->
<div class="wp-block-buttons"><!-- wp:button -->
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://app.livestorm.co/clevercloud/clever-cloud-et-cycloid-modernisation-cloud-en-europe">Register now</a></div>
<!-- /wp:button --></div>
<!-- /wp:buttons -->

<!-- wp:heading -->
<h2 class="wp-block-heading"><strong><strong>Two complementary perspectives on a shared challenge</strong></strong></h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>We are offering a cross-functional discussion to provide concrete insight into these topics.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Cycloid covers the structuring and governance of environments through a unified internal developer platform and portal. Clever Cloud addresses managed operations, operational maintenance (MCO) and operational sovereignty.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Join Florent Perreux (Chief Sales Officer @ Clever Cloud), Steven Le Roux (CTO @ Clever Cloud), Alexandre Blin (Business Director SEMEA @ Cycloid) and Olivier de Turckheim (Solution Architect @ Cycloid) to understand how to align governance and operations without adding complexity.</p>
<!-- /wp:paragraph -->

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

<!-- wp:paragraph -->
<p>🔹 Why cloud modernisation goes beyond migration;plus à une migration;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>🔹 Structuring and governance challenges in multi-cloud environments;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>🔹 Operational challenges related to operations and maintenance;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>🔹 How to align governance and operations without multiplying complexity;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>🔹 A live Q&amp;A session to ask your questions directly.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading"><strong>Why attend?</strong></h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>✅ Understand the root causes of complexity in cloud projects;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>✅ Identify the levers to structure your usage and reduce vendor dependency;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>✅ Gain a clearer understanding of operational and sovereignty challenges;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>✅ Benefit from concrete real-world experience;</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>✅ Engage directly with experts.</p>
<!-- /wp:paragraph -->

<!-- wp:heading -->
<h2 class="wp-block-heading"><strong>Register now</strong></h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>🗓️ Tuesday 28 April 2026</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>⏰ 11:30 AM – 12:00 PM</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>💻 Online webinar on Livestorm</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"21px"} -->
<div style="height:21px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>Facing these challenges? Join us on 28 April!</p>
<!-- /wp:paragraph -->

<!-- wp:buttons {"layout":{"type":"flex","justifyContent":"center"}} -->
<div class="wp-block-buttons"><!-- wp:button -->
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://app.livestorm.co/clevercloud/clever-cloud-et-cycloid-modernisation-cloud-en-europe">Register now</a></div>
<!-- /wp:button --></div>
<!-- /wp:buttons -->]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
