Minishift est un outil qui vous permet d'exécuter OpenShift localement en tant que cluster OpenShift à partir d'un seul nœud à l'intérieur d'une machine virtuelle.
Les technologies évoluent et, avec elles, les processus de développement et de déploiement d'applications évoluent. Auparavant, il s'agissait de choses assez standard avec un ensemble strictement limité de composants impliqués, ces dernières années, avec l'avènement de nouveaux outils et cadres, des changements drastiques se sont produits dans ce domaine. L'installation du progiciel sur un ordinateur personnel semble aujourd'hui triviale, mais mettez-vous à la place du service informatique et vous aurez immédiatement beaucoup de questions. D'où vient tel ou tel composant logiciel? Pourquoi est-il nécessaire? Comment est-il mis à jour? Qui apporte son soutien? Ce sont des questions vraiment importantes et inévitables si votre organisation adhère aux meilleures pratiques de sécurité et doit se conformer aux politiques et règles de sécurité.

Il n'est généralement pas très pratique de déployer un environnement OpenShift complet sur une machine de développeur typique. Dans le même temps, le Minishift local permet au développeur de réaliser tous les avantages de la gestion des charges de travail conteneurisées, d'augmenter sa productivité et d'éliminer la complexité du support opérationnel.
Avec la transition vers OpenShift, les organisations comprennent qu'avoir un développeur disposant d'une plateforme de conteneur locale offre plusieurs avantages: par exemple, l'indépendance du développeur par rapport à l'environnement d'entreprise OpenShift et, par conséquent, la réduction de la charge sur ce dernier. En d'autres termes, il contribue à réduire les coûts et à mettre en œuvre des services supplémentaires.
Vous voulez donc un OpenShift local
D'après notre expérience, nous pouvons dire qu'avant d'utiliser Minishift, vous devez faire ce qui suit:
- Décrire la configuration système requise
- Formuler une liste de dépendances
Ces informations aideront les administrateurs système, les responsables de la prise en charge des postes de travail et les personnes responsables du respect des politiques et règles de sécurité à comprendre ce à quoi elles doivent faire face. La configuration requise et les dépendances sont directement liées à l'option de déploiement qui sera utilisée.
Puisque nous connaissons ici le scénario d'entreprise, nous nous concentrerons sur le
Container Development Kit (CDK) , une branche du projet Minishift, qui a été amené à l'étape d'un produit logiciel fini.
Il existe deux options pour installer CDK:
- Utilisation d'un exécutable autonome
- Dans le cadre de la suite de développement Red Hat , qui comprend divers outils de développement de conteneurs, notamment OpenJDK, Red Hat JBoss Developer Studio, VirtualBox et le kit de développement de conteneurs
L'expérience a montré que la plupart des organisations préfèrent utiliser un fichier exécutable autonome plutôt que Red Hat Development Suite, afin de ne pas produire d'outils inutiles. Red Hat, d'autre part, est idéal pour les développeurs en dehors du contexte de l'entreprise, car il fournit une installation étape par étape facile et intuitive de CDK. En outre, l'organisation peut déjà utiliser des outils similaires à ceux qui font partie de Red Hat Development Suite.
Quelle que soit la méthode d'installation de CDK que vous choisissez, vous aurez besoin de l'un des hyperviseurs pris en charge, car le CDK fonctionne comme une machine virtuelle (VM).
Il peut y avoir plusieurs options:
L'hyperviseur dépend du système d'exploitation de la machine de développement, et dans la plupart des organisations, c'est Windows ou OS X, car la plupart des développeurs utilisent très rarement Linux comme système d'exploitation principal.
Tout le monde n'aime pas la nécessité d'avoir des machines virtuelles sur les machines de développement, car cela nécessite des ressources processeur et RAM supplémentaires. Les experts en sécurité ne sont pas satisfaits non plus, car cela peut compromettre la sécurité au niveau du réseau et du PC. De plus, des droits d'administrateur sont requis pour installer et parfois utiliser l'hyperviseur.
Heureusement, avec la prolifération de nouvelles approches de développement, lorsque les machines virtuelles sont utilisées avec des outils d'optimisation d'environnement automatisés tels que Vagrant, de nombreuses organisations ont déjà des hyperviseurs sur les machines de développement, et elles peuvent ignorer cette étape, ce qui élimine un certain nombre d'obstacles sérieux à l'utilisation Minishift dans les environnements d'entreprise.
Installation et configuration
Tôt ou tard, les obstacles seront surmontés, et le tour viendra d'installer et de configurer CDK. Les organisations bloquent généralement le téléchargement de fichiers exécutables pour des raisons de sécurité, donc d'autres mécanismes devront être utilisés. Par exemple, il peut s'agir d'un répertoire de logiciels approuvé ou vous pouvez placer le programme d'installation CDK dans un référentiel, tel que
Sonatype Nexus ou
JFrog Artifactory , à partir duquel les utilisateurs peuvent le télécharger.
Si l'installation est effectuée manuellement, sans utiliser les outils de déploiement et de configuration centralisés disponibles dans l'organisation, l'utilisateur peut soit exécuter directement le programme d'installation exécutable, soit le placer dans le répertoire spécifié dans la variable PATH, où ce fichier sera accessible à partir de n'importe quelle session de terminal. Dans le cas de Windows, l'utilisateur n'a généralement pas le droit de modifier la variable système PATH, car elle est valide pour tous les comptes sur la machine. Mais l'utilisateur peut éditer sa variable personnelle PATH, qui n'est valable que pour son compte
L'étape suivante consiste à installer le CDK lui-même à l'aide de la commande appropriée:
minishift setup-cdk
Cette commande extrait le fichier ISO utilisé pour démarrer la machine virtuelle et prépare le système à l'utilisation. Dans ce cas, tous les fichiers sont copiés dans le dossier .minishift du répertoire personnel (HOME) de l'utilisateur ($ HOME / .minishift). Ce dossier peut être modifié à l'aide de l'indicateur –minishift-home, en utilisant éventuellement la variable d'environnement MINISHIFT_HOME. Dans les environnements d'entreprise, le répertoire personnel est souvent situé dans un dossier réseau, de sorte que si nécessaire, l'utilisateur peut passer à un autre ordinateur et travailler en silence. Cependant, cette option a un mauvais effet sur les performances du CDK, car la lecture et l'écriture seront effectuées sur le réseau, et non à partir du disque local. De plus, sans se connecter au réseau d'entreprise, l'utilisateur perd l'accès aux fichiers nécessaires au fonctionnement du CDK. Lors du choix d'un autre emplacement pour le CDK, l'utilisateur doit disposer d'autorisations d'écriture dans le dossier de destination sélectionné.
Et enfin, la dernière étape que vous devez effectuer avant de démarrer le CDK est de fournir des informations d'identification pour enregistrer une copie de Red Hat Enterprise Linux (RHEL) incluse dans le CDK sur le site Red Hat Network (RHN). L'enregistrement est nécessaire pour que les conteneurs exécutés dans l'environnement OpenShift puissent utiliser des packages yum, car yum utilise l'abonnement de l'hôte sous-jacent. Un abonnement développeur peut être obtenu gratuitement sur
developers.redhat.com , ou il peut être inclus dans une licence en volume existante. Cependant, CDK peut fonctionner sans abonnement machine, avec des fonctionnalités limitées.
Les informations d'identification peuvent être spécifiées dans les variables d'environnement MINISHIFT_USERNAME et MINISHIFT_PASSWORD, soit spécifier -username et -password dans les paramètres de démarrage, soit définir comme l'un des paramètres de configuration à l'aide de la commande config minishift. En plus des informations d'identification, la commande config minishift vous permet de définir un certain nombre d'autres paramètres, tels que le pilote de l'hyperviseur, le nombre de CPU et de RAM pour la machine virtuelle. Par exemple, voici comment le pilote VM est défini:
minishift config set vm-driver virtualbox
Après cela, il ne reste plus qu'à exécuter le CDK (si nécessaire, avec des paramètres supplémentaires):
minishift start
Après cela, le Kit de développement de conteneurs va créer une nouvelle machine virtuelle, l'enregistrer et effectuer d'autres opérations nécessaires, à savoir:
- Télécharger la version conteneurisée d'OpenShift
- Mettre en surbrillance le volume de volumes persistants défini pour le stockage persistant
- Il utilise un certain nombre de modules supplémentaires pour étendre les fonctionnalités de base d'OpenShift
- Créera des comptes d'administrateur et de développeur pour interagir avec la plateforme
Une fois lancé, le CDK fournira une URL pour accéder à la console Web, ainsi que des informations d'identification pour se connecter au compte développeur.
En général, si toutes les conditions préalables sont remplies, l'installation de base du Container Development Kit ne devrait pas poser de problème.
Et le 16 juin, à DevOpsDays Moscou 2018, nous organiserons une master class / atelier / démonstration en direct du scénario d'utilisation de la plate-forme OpenShift déployée dans le cloud public Azure.Nous montrons les trois options de déploiement - à partir du code source, de l'image du conteneur, du modèle. Nous allons montrer à quel point il est facile de configurer les webhooks pour que notre application soit automatiquement reconstruite lorsqu'un certain événement se produit, par exemple, après une validation. Nous montrons le scénario du test A / B, parlons du concept de compte de service et exécutons l'application super-héritée dans le conteneur.
Nous passerons seulement une heure de votre temps à montrer comment (à notre humble avis) vos tâches quotidiennes de CI / CD sont rapidement et simplement résolues en utilisant la plate-forme de conteneur OpenShift sur Microsoft Azure. Venez!
BONUS: Vous voulez un code promotionnel pour une remise? Écrivez-nous dans des messages privés.