Open Source : Chef donne ses recettes pour administrer le Cloud

À la manœuvre de la cuisine interne des infrastructures cloud, Chef est un outil open source d’orchestration, qui gagne du terrain en entreprise et au sein d’offres commerciales.

Chef est un outil d’orchestration des infrastructures de cloud computing. Livré sous licence open source Apache, cette offre monte en puissance, grâce à sa capacité à piloter de nombreux clouds et systèmes d’exploitation. Chef est aujourd’hui utilisé par certains grands noms comme Bloomberg, Facebook ou encore Yahoo.

Appliqué aux infrastructures serveur de l’entreprise, le cloud computing offre bien des avantages. La mise en place d’un cloud privé permet en effet de faciliter le déploiement et la gestion des machines virtuelles ou applications. Fini le silotage et bienvenue dans le monde de la ressource accessible à la demande, l’IaaS (Infrastructure as a Service).

Entrée : les serveurs physiques

Reste que ceci ne fait que déporter le problème d’administration de l’infrastructure à d’autres niveaux. Il faut en effet gérer la configuration et la mise en place des serveurs, physiques ou virtuels.

C’est ici qu’entre en jeu Chef. Il permet de créer des recettes (via un langage de programmation métier), utilisables pour déployer les serveurs. Il est ainsi possible de définir le rôle qu’aura un nœud physique au sein d’un cloud : compute, stockage, réseau, etc.

L’offre SUSE Cloud emploie Chef pour assurer la configuration des nœuds composants une infrastructure de cloud privé (voir notre présentation « SUSE Cloud en avant-première et en images »). HP l’utilise également au sein de sa solution de cloud public.

Plat de résistance : les serveurs virtuels

Mais ce n’est pas tout. Chef peut aussi provisionner (et déprovisionner) des machines virtuelles. Vous pourrez ainsi définir des recettes permettant de préconfigurer et déployer des serveurs virtuels, voire des conteneurs. Apache pour un serveur web, MariaDB pour une base de données, ou encore Hadoop pour du Big Data.

Il est à noter que Chef peut déployer ses recettes sous une foultitude d’OS. Linux est assez largement supporté (CentOS, Debian, RedHat, Ubuntu…), mais OS X et Windows sont également de la partie. Certaines solutions d’orchestration d’infrastructures cloud sont même en mesure de réutiliser les recettes Chef. C’est ainsi le cas de Juju, l’offre liée à Ubuntu (voir notre article « Open World Forum 2011 : l’Ubuntu veut révolutionner la gestion des services »).

Dessert : les infrastructures hybrides

Si un cloud est vu comme une ressource cohérente et uniforme, il peut s’appuyer sur des serveurs employant des technologies différentes, voir mixer des clouds différents (infrastructure privée et clouds publics par exemple).

Chef est capable de prendre cette problématique en compte. Il supporte en effet les plates-formes cloud d’Amazon (EC2), Google (Cloud Platform), Microsoft (Azure) et Rackspace. Il sera en mesure de déployer ses recettes et donc de provisionner des serveurs virtuels sur toutes ces offres de cloud public.

L’administrateur système a ainsi la possibilité de piloter l’ensemble de sa brigade de serveurs depuis une unique station de travail et un seul outil. À charge pour lui de définir les rôles des serveurs, puis de créer les recettes permettant de couvrir les différents cas possibles. Il pourra pour cela s’appuyer sur le vaste ensemble de recettes déjà existantes.

Un chef à la demande

L’automatisation des infrastructures suppose l’acquisition de certaines connaissances spécifiques. Notez que des SSII comme AlterWay proposent aujourd’hui une formation dédiée à Chef. Un sujet que nous avions évoqué dans un de nos précédents articles : « Solutions Linux 2014 : L’Open Source raisonne Cloud et rêve des métiers ».

Notez que Chef est proposé en version commerciale par son créateur. Soit sous forme on premise, soit en mode SaaS.