OCI Designer Toolkit : Créer, visualiser et déployer vos environnements OCI graphiquement
Introduction
OCI Designer Toolkit (OKIT) (https://github.com/oracle/oci-designer-toolkit) est un outil open source permettant de créer, de visualiser ou de déployer des environnements OCI via une interface graphique de type Drag-n-Drop.
En effet, l'interface OCI officielle manque cruellement d'un outil graphique permettant de designer et d'avoir une représentation des ressources du tenant.
OKIT pallie ce manque et permet en plus d'exporter l'architecture au format svg, png ou jpeg (pratique pour vos présentations) et également sur des formats compatibles Ansible, Terraform ou OCI Resource Manager pour simplifier vos déploiements.
Pour fonctionner, OKIT utilise une image Docker et a besoin d'avoir des éléments de configuration OCI CLI pour se connecter au tenant.
Installation
Je vous propose d'installer OKIT sur une instance linux créée dans votre tenant OCI (je dispose d'une instance VM.Standard.E2.1.Micro avec Oracle Linux 7.8 dans un subnet public).
Etape n°1 : Connectez-vous sur votre instance OCI en ssh
Etape n°2 : Comme OKIT est disponible sur un dépôt Git, il va falloir installer Git sur notre instance
$ sudo yum install -y git
Etape n°3 : Installez ensuite le composant Docker avec les commandes suivantes
Etape n°4 : Démarrez ensuite le composant Docker et vérifiez la version installée
$ sudo systemctl start docker
$ sudo docker version
Etape n°5 : Installer ensuite le client OCI CLI sur l'instance
$ bash -c "$(curl -L https://raw.githubusercontent.com/oracle/oci-cli/master/scripts/install/install.sh)"
Durant l'installation d'OCI CLI, il faudra répondre aux questions suivantes :
- In what directory would you like to place the install? (leave blank to use '/home/opc/lib/oracle-cli') Laissez ce chemin par défaut
- In what directory would you like to place the 'oci' executable? (leave blank to use '/home/opc/bin') Laissez ce chemin par défaut
- In what directory would you like to place the OCI scripts? (leave blank to use '/home/opc/bin/oci-cli-scripts') Laissez ce chemin par défaut
- What optional CLI packages would you like to be installed (comma separated names; press enter if you don't need any optional packages)? Passez cette étape en appuyant sur Entrée
- Modify profile to update your $PATH and enable shell/tab completion now? (Y/n) Répondez Y
- Enter a path to an rc file to update (leave blank to use '/home/opc/.bashrc') Laissez ce chemin par défaut
Etape n°6 : Configuration d'OCI CLI pour l'accès au tenant OCI
Lancez la configuration d'OCI CLI
$ oci setup config
Durant la configuration d'OCI CLI, il faudra répondre aux questions suivantes :
- Enter a location for your config [/home/opc/.oci/config] Laissez ce chemin par défaut
- Enter a user OCID: Entrez l'OCID de l'utilisateur ayant accès au tenant
- Enter a tenancy OCID: Entrez L'OCID du tenant
- Enter a region: Entrez la région du tenant OCI
- Do you want to generate a new API Signing RSA key pair? (If you decline you will be asked to supply the path to an existing key.) [Y/n] Répondez Y
- Enter a directory for your keys to be created [/home/opc/.oci] Laissez ce chemin par défaut
- Enter a name for your key [oci_api_key]: Laissez ce nom par défaut
- Enter a passphrase for your private key (empty for no passphrase): Appuyez sur Entrée
Etape n°7 : Récupérez la clef publique générée et l'uploader dans OCI
$ cat /home/opc/.oci/oci_api_key_public.pem
Copiez le contenu de la clef publique. Puis connectez vous sur l'interface "Identity > Users" sous OCI. Créez ensuite une "API Key" pour votre utilisateur en renseignant la clef publique.
Etape n°8 : Editez le fichier de configuration OCI et tester l'accès au tenant
Une petite modification est à effectuer sur le fichier /home/opc/.oci/config. Editez le fichier et remplacer la ligne ci-dessous
key_file=/home/opc/.oci/oci_api_key.pem
par
key_file=~/.oci/oci_api_key.pem
Pour vérifier que la configuration OCI CLI est correcte, tester l'accès au tenant avec la commande ci-dessous
$ oci iam availability-domain list
Etape n°9 : Cloner localement ensuite la version 0.8.0 d'OKIT depuis Git
Au moment où j'écris ces lignes, la dernière version d'OKIT est la 0.8.0. C'est cette dernière que nous allons installer.
$ git clone -b v0.8.0 --depth 1 https://github.com/oracle/oci-designer-toolkit.git
Etape n°10 : Construisez l'image de l'application pour Docker
Il y a actuellement quelques bugs dans cette dernière version (0.8.0) quand vous l'installez sur une instance OCI. Pour corriger ces problèmes, il faut éditer le fichier /home/opc/oci-designer-toolkit/containers/docker/Dockerfile$ vi /home/opc/oci-designer-toolkit/containers/docker/Dockerfile
Remplacez la ligne
RUN yum install -y \
par
RUN echo "-$(curl -sfm 3 http://169.254.169.254/opc/v1/instance/ | grep "region"| cut -d '-' -f 2)" > /etc/yum/vars/ociregion && yum install -y \
Lancez ensuite la construction de l'image Docker
$ cd /home/opc/oci-designer-toolkit
$ sudo docker build --tag okit --file ./containers/docker/Dockerfile --force-rm .
Etape n°11 : Démarrez ensuite l'image Docker créée
Etape n°12 : Ajoutez une Ingress Rule (TCP port 80)
Pour accéder à l'URL d'OKIT, il faut ajouter une Ingress Rule (TCP port 80) dans le subnet public de l'instance.
OCI Designer Toolkit est maintenant démarré sur votre instance OCI.
Utilisation d'OKIT
L'interface web d'OKIT est accessible via l'URL suivante http://localhost/okit/designer (Mettez l'adresse IP publique de votre instance à la place de localhost).
Vous avez la possibilité de créer des configurations OCI sur cette interface en faisant du "drag-n-drop" des éléments du menu de gauche.
Voici un exemple avec un VCN, un subnet, des security rules, des instances...
Vous pouvez modifier à tout moment la configuration de chacune des ressources à l'aide du menu "Properties" situé à droite de l'interface.
Une fois votre design terminé, vous pouvez procéder à une étape de validation (menu "Validate") pour afficher les erreurs de configuration :
Une autre fonctionnalité intéressante est de pouvoir récupérer le design de votre tenant actuel (menu "Query") :
Et si vous souhaitez vous former sur Oracle Cloud Infrastructure, découvrez notre offre de formations OCI.
Partage
Gardez un oeil sur tout
Recevez des notifications dès la publication d’un nouvel article et restez informé de l’actualité Cloud !
Pour offrir les meilleures expériences, nous utilisons des technologies telles que les cookies pour stocker et/ou accéder aux informations des appareils. Le fait de consentir à ces technologies nous permettra de traiter des données telles que le comportement de navigation ou les ID uniques sur ce site. Le fait de ne pas consentir ou de retirer son consentement peut avoir un effet négatif sur certaines caractéristiques et fonctions.
Fonctionnel
Toujours activé
L’accès ou le stockage technique est strictement nécessaire dans la finalité d’intérêt légitime de permettre l’utilisation d’un service spécifique explicitement demandé par l’abonné ou l’utilisateur, ou dans le seul but d’effectuer la transmission d’une communication sur un réseau de communications électroniques.
Préférences
L’accès ou le stockage technique est nécessaire dans la finalité d’intérêt légitime de stocker des préférences qui ne sont pas demandées par l’abonné ou l’internaute.
Statistiques
Le stockage ou l’accès technique qui est utilisé exclusivement à des fins statistiques.Le stockage ou l’accès technique qui est utilisé exclusivement dans des finalités statistiques anonymes. En l’absence d’une assignation à comparaître, d’une conformité volontaire de la part de votre fournisseur d’accès à internet ou d’enregistrements supplémentaires provenant d’une tierce partie, les informations stockées ou extraites à cette seule fin ne peuvent généralement pas être utilisées pour vous identifier.
Marketing
L’accès ou le stockage technique est nécessaire pour créer des profils d’internautes afin d’envoyer des publicités, ou pour suivre l’utilisateur sur un site web ou sur plusieurs sites web ayant des finalités marketing similaires.