Les conteneurs sont des packages logiciels qui contiennent tous les éléments nécessaires pour s'exécuter dans n'importe quel environnement. Ils peuvent ainsi virtualiser le système d'exploitation et s'exécuter partout : centre de données privé, cloud public, voire ordinateur portable personnel d'un développeur. De Gmail à YouTube en passant par le moteur de recherche, tout fonctionne sous forme de conteneurs chez Google. La conteneurisation permet à nos équipes de développement d'agir rapidement, de déployer efficacement des logiciels et d'œuvrer à une échelle sans précédent. Nous avons beaucoup appris sur l'exécution des charges de travail conteneurisées. Nous avons d'ailleurs partagé nos connaissances avec la communauté tout au long du processus, de la création des groupes de contrôle du noyau Linux à la mise à disposition en Open Source de nos conceptions à partir de nos outils internes, dans le cadre du projet Kubernetes.
Les conteneurs sont des packages légers de votre code d'application, avec des dépendances telles que les versions d'exécution du langage de programmation et les bibliothèques spécifiques requises pour exécuter vos services logiciels.
Les conteneurs facilitent le partage du processeur, de la mémoire, du stockage et des ressources réseau au niveau du système d'exploitation. Ils proposent un mécanisme de regroupement logique qui permet d'extraire des applications de l'environnement dans lequel elles s'exécutent réellement.
Séparation des responsabilités
La conteneurisation permet une séparation claire des responsabilités. En effet, les développeurs peuvent se concentrer sur la logique et les dépendances de leur application pendant que les équipes informatiques se consacrent au déploiement et à la gestion, sans avoir à se soucier de détails tels que la version du logiciel ou la configuration spécifique de l'application.
Portabilité des charges de travail
Les conteneurs peuvent s'exécuter dans pratiquement n'importe quel environnement, ce qui facilite grandement le développement et le déploiement sous Linux, Windows, Mac, sur des machines virtuelles ou des serveurs physiques, sur l'ordinateur d'un développeur, dans un centre de données sur site et, bien entendu, dans le cloud public.
Isolement des applications
Les conteneurs virtualisent le processeur, la mémoire, l'espace de stockage et les ressources réseau au niveau du système d'exploitation (OS), ce qui offre aux développeurs un aperçu de l'OS logiquement isolé des autres applications.
Vous connaissez peut-être le principe des VM : un système d'exploitation invité tel que Linux ou Windows est exécuté sur un système d'exploitation hôte ayant accès au matériel sous-jacent. Les conteneurs sont souvent comparés aux machines virtuelles (VM). À l'instar de ces dernières, ils vous permettent de regrouper votre application, des bibliothèques et d'autres dépendances en un seul package afin d'obtenir un environnement isolé pour l'exécution de vos services logiciels. La ressemblance s'arrête toutefois ici, car les conteneurs prennent la forme d'unités bien plus légères et offrent de nombreux avantages aux développeurs et aux équipes informatiques.
Les conteneurs proposent un mécanisme de regroupement logique qui permet d'extraire des applications de l'environnement dans lequel elles s'exécutent réellement. Grâce à cette dissociation, les applications basées sur des conteneurs peuvent facilement être déployées dans n'importe quel environnement, qu'il s'agisse d'un centre de données privé, du cloud public ou encore de l'ordinateur personnel d'un développeur.
Développement agile
Les conteneurs leur permettent de travailler beaucoup plus rapidement, car ils n'ont pas à se soucier des dépendances et des environnements.
Opérations efficaces
Les conteneurs sont légers et vous permettent de n'utiliser que les ressources de calcul strictement nécessaires, ce qui optimise l'exécution de vos applications.
Une très grande compatibilité
Les conteneurs peuvent s'exécuter pratiquement n'importe où. Vous pouvez donc les utiliser quel que soit l'environnement de votre logiciel.
Profitez de 300 $ de crédits gratuits et de plus de 20 produits Always Free pour commencer à créer des applications sur Google Cloud.