Interface de ligne de commande (CLI) L’accès au CLI OpenShift se fait par la commande oc. De là, vous pouvez administrer l’ensemble du cluster OpenShift et déployer de nouvelles applications.
Le CLI expose le système d’orchestration Kubernetes sous-jacent avec les améliorations apportées par OpenShift. Les utilisateurs familiers avec Kubernetes pourront s’adapter rapidement à OpenShift. oc fournit toutes les fonctionnalités de kubectl, ainsi que des fonctionnalités supplémentaires pour faciliter le travail avec OpenShift. Le CLI est idéal dans les situations où vous vous trouvez :
Vous travaillez directement avec le code source d’un projet
Scripter des opérations OpenShift
Limité par les ressources en bande passante et ne peut pas utiliser la console web
Dans ce tutoriel, nous ne nous concentrons pas sur le CLI OpenShift, mais nous voulons que vous en soyez conscient au cas où vous préféreriez utiliser la ligne de commande. Vous pouvez consulter nos autres cours qui traitent plus en détail de l’utilisation de l’interface utilisateur. Maintenant, nous allons simplement nous entraîner à nous connecter afin que vous puissiez acquérir une certaine expérience du fonctionnement de l’interface utilisateur.
Exercice : Connexion à l’application CLI
Commençons par vous connecter. Votre tâche consiste à entrer les informations suivantes dans la console :
oc login
Lorsque vous y êtes invité, saisissez le nom d’utilisateur et le mot de passe suivants :
Nom d’utilisateur : developer
Mot de passe : developer
Ensuite, vous pouvez vérifier si elle a réussi :
oc whoami
oc whoami devrait renvoyer une réponse de :
developer
C’est ça !
Dans la prochaine étape, nous allons commencer à créer votre premier projet en utilisant la console web.
Cette section se concentre sur l’utilisation de la console web.
Exercice : Se connecter avec la console web
Pour commencer, cliquez sur l’onglet “Console” de votre écran. Cela ouvrira la console web sur votre navigateur.
Vous devriez voir une fenêtre Red Hat OpenShift OKD avec les formulaires de nom d’utilisateur et de mot de passe comme indiqué ci-dessous :

Pour ce scénario, connectez-vous en entrant les informations suivantes :
Nom d’utilisateur : developer
Mot de passe : developer
Après vous être connecté à la console web, vous serez sur une page de projets.
Qu’est-ce qu’un projet ? Pourquoi est-ce important ?
OpenShift est souvent appelé “plate-forme d’applications en conteneurs”, car il s’agit d’une plate-forme conçue pour le développement et le déploiement d’applications en conteneurs.
Pour regrouper votre application, nous utilisons des projets. La raison pour laquelle un projet doit contenir votre application est de permettre un accès contrôlé et des quotas pour les développeurs ou les équipes.
Plus techniquement, il s’agit d’une visualisation de l’espace de noms Kubernetes basée sur les contrôles d’accès des développeurs.
Exercice : Création d’un projet
Cliquez sur le bouton bleu Créer un projet.
Vous devriez maintenant voir une page pour la création de votre premier projet dans la console web. Remplissez le champ Nom comme mon projet.

Le reste du formulaire est facultatif et c’est à vous de le remplir ou de l’ignorer. Cliquez sur Créer pour continuer.
Après la création de votre projet, vous verrez quelques informations de base sur votre projet.
Exercice : Explorez les perspectives de l’administrateur et du développeur
Remarquez le menu de navigation à gauche. Lorsque vous vous connectez pour la première fois, vous êtes généralement dans la perspective de l’administrateur. Si vous n’êtes pas dans la Perspective de l’administrateur, déconnecter vous et connecter vous en tant que administrateur
Nom d’utilisateur : system
Mot de passe : admin
Vous êtes maintenant dans la perspective de l’administrateur, où vous trouverez les menus Opérateurs, Charges de travail, Réseau, Stockage, Bâtiments et Administration dans la navigation.
Jetez un coup d’œil rapide à ces menus, en cliquant sur quelques-uns d’entre eux pour voir plus d’options.
Maintenant, passez à la perspective du développeur. Nous passerons la majeure partie de notre temps dans ce tutoriel dans la perspective du développeur. La première chose que vous verrez est la vue Application. Pour l’instant, elle est vide et présente plusieurs façons d’ajouter du contenu à votre projet. Une fois que vous aurez déployé une application, elle sera visualisée ici dans la vue Application.
Dans cette section, vous allez déployer le composant frontal d’une application appelée parksmap. L’application web affichera une carte interactive, qui servira à indiquer l’emplacement des principaux parcs nationaux du monde entier.
Exercice : Déploiement de votre première image
La façon la plus simple de déployer une application dans OpenShift est de prendre une image de conteneur existante et de l’exécuter. Nous allons utiliser la console web OpenShift pour ce faire, donc assurez-vous d’avoir la console web OpenShift ouverte avec la perspective du développeur active et que vous êtes dans le projet appelé myproject.
La console web OpenShift offre différentes options pour déployer une application dans un projet. Pour cette section, nous allons utiliser la méthode de l’image conteneur. Comme le projet est vide à ce stade, la vue Application devrait afficher les options suivantes : Browser Catalog, Deploy Image, Import YAML/JSON, Select From project.

À l’avenir, pour revenir à ce menu de moyens d’ajouter du contenu à votre projet, vous pouvez cliquer sur +Ajouter dans la navigation de gauche.
Dans la page Déployer l’image, entrez ce qui suit pour le nom de l’image :
docker.io/openshiftroadshow/parksmap-katacoda:1.2.0
Appuyez sur la touche Entrée ou cliquez sur l’icône de la loupe à droite de la zone de saisie de texte pour obtenir des informations sur l’image :

Cliquez sur “Deploy”.
Créer une route dédier au service, allez dans Application->Routes->Create Route et vous renseignez les informations de creation de la route :

Augmentons notre application jusqu’à 2 instances des pods. Vous pouvez le faire en cliquant sur l’application Parksmap-katacoda de la vue Application. Dans le tableau, cliquez sur numéro du déploiement, puis sur la flèche “haut” à côté du Pod dans le panneau latéral.

Repassez maintenant à 1 Pod.
Dans cette section, vous allez déployer un service de backend pour l’application ParksMap. Ce service backend fournira des données, via une API de service REST, sur les principaux parcs nationaux du monde entier. L’application web frontale ParksMap interrogera ces données et les affichera sur une carte interactive dans votre navigateur web.
Arrière-plan : Source-to-Image (S2I) Dans une section précédente, vous avez appris comment déployer une application (le frontal ParksMap) à partir d’une image de conteneur préexistante. Ici, vous apprendrez comment déployer une application directement à partir du code source hébergé dans un dépôt Git distant. Cela se fera à l’aide de l’outil Source-to-Image (S2I).
La documentation relative à S2I se décrit de la manière suivante :
Source-to-Image (S2I) est un outil permettant de construire des images de conteneurs reproductibles. S2I produit des images prêtes à l’emploi en injectant le code source dans une image de conteneur et en assemblant une nouvelle image de conteneur qui incorpore l’image du constructeur et la source construite. Le résultat est ensuite prêt à être utilisé avec le docker run. S2I supporte les constructions incrémentales qui réutilisent les dépendances téléchargées précédemment, les artefacts construits précédemment, etc.
OpenShift est compatible avec S2I et peut utiliser S2I comme l’un de ses mécanismes de construction (en plus de la construction d’images de conteneurs à partir de Dockerfiles et de constructions “personnalisées”).
Une discussion complète sur le S2I dépasse la portée de ce tutoriel. Vous trouverez plus d’informations sur S2I dans la documentation OpenShift S2I et dans le dépôt du projet GitHub pour S2I.
Le seul concept clé que vous devez retenir à propos de S2I est qu’il gère le processus de construction de votre image de conteneur d’application pour vous à partir de votre code source.
Exercice : Déploiement du code de l’application
Le service d’arrière-plan que vous allez déployer dans cette section s’appelle nationalparks-katacoda. Il s’agit d’une application Python qui renverra les coordonnées cartographiques des principaux parcs nationaux du monde entier en JSON via une API de service REST. Le dépôt de code source de l’application se trouve sur GitHub à l’adresse suivante
https://github.com/openshift-roadshow/nationalparks-katacoda
Pour déployer l’application, vous allez utiliser l’option +Ajouter dans le menu de navigation de gauche de la Perspective du développeur. Assurez-vous donc que la console web OpenShift est ouverte et que vous êtes dans le projet appelé myproject. Cliquez sur +Ajouter. Cette fois, plutôt que d’utiliser l’image du conteneur, choisissez From Catalog, et sélectionner Python.
Dans la section Langues, sélectionnez Python dans la liste des langues prises en charge. Lorsque les options de Django + Postgres SQL, Django + Postgres SQL (Ephemeral) et Python vous sont présentées, sélectionnez l’option Python et cliquez sur Créer une application.
Pour l’utilisation de l’URL Git Repo :
https://github.com/openshift-roadshow/nationalparks-katacoda
Une fois que vous l’avez saisi, cliquez en dehors du champ de saisie de texte, et vous devriez voir le nom de la demande apparaître sous la forme nationalparks-katacoda. Le nom doit être nationalparks-katacoda car le service d’entrée de l’application ParksMap s’attend à ce que le service de sortie utilise ce nom.
Laissez toutes les autres options telles quelles.
Cliquez sur Créer dans le coin inférieur droit de l’écran et vous reviendrez à la vue Application->Deploiement. Cliquez sur le cercle pour l’application nationalparks-katacoda, puis sur l’onglet Ressources dans le panneau latéral. Dans la section Builds, vous devriez voir votre build en cours d’exécution.
C’est l’étape où S2I est exécuté sur le code source de l’application à partir du dépôt Git pour créer l’image qui sera ensuite exécutée. Cliquez sur le lien “View Logs” pour la construction et vous pouvez suivre l’opération puisque le constructeur S2I pour Python télécharge tous les paquets Python nécessaires à l’exécution de l’application, prépare l’application et crée l’image.
Le status nationalparks-katacoda indique que la construction est terminée alors le service nationalparks-katacoda est déployé.
Revenez maintenant à l’application frontale ParksMap dans votre navigateur, et vous devriez maintenant pouvoir voir les emplacements des parcs nationaux affichés. Si l’application n’est pas encore ouverte dans votre navigateur, allez dans la vue Application->Routes et cliquez sur URL parksmap-katacoda pour ouvrir l’URL dans votre navigateur.