5 outils open source pour développer sur le cloud
Voici quelques IDE qui peuvent améliorer votre expérience de programmation lorsque vous utilisez plusieurs fournisseurs de services cloud.
Lorsque vous développez des logiciels sur le cloud, votre environnement est fondamentalement différent de celui de votre ordinateur portable. C'est un avantage pour le processus de développement car votre code s'adapte à l'environnement sur lequel il s'exécute. Cet article passera en revue cinq environnements de développement intégrés (IDE) différents qui peuvent améliorer votre expérience de programmation.
Ché
Bien qu'il soit parfaitement acceptable de développer sur un IDE local avec une intégration minimale à une plate-forme locale comme OKD ou minikube, il existe une meilleure option. Che est un IDE conçu pour Kubernetes et qui fonctionne sur celui-ci. Pour un développeur, un IDE conscient des particularités du cloud peut être utile.
Certains développeurs n'aiment pas utiliser un IDE, car ils estiment qu'un IDE peut gérer trop de leur code à leur place, ce qui les fait se sentir éloignés de la base de code. Mais lorsque votre code est développé sur le cloud, il y a de nombreux avantages à laisser le cloud rester abstrait. Vous n'avez pas besoin de connaître la plate-forme sur laquelle vous codez, car vous codez pour un conteneur éphémère, mais totalement prévisible. Si vous laissez votre IDE être votre interface principale, vous n'avez pas à vous soucier du système de fichiers que vous utilisez ou de la disposition du système. Vous pouvez vous concentrer sur votre code pendant que votre IDE gère votre environnement.
Espaces de travail CodeReady
Une extension naturelle de l’exécution d’un IDE sur Kubernetes est la possibilité d’exécuter votre choix parmi plusieurs IDE sur Kubernetes. CodeReady Workspaces est une fonctionnalité OpenShift qui lance des IDE populaires dans un conteneur.
Que votre langage de prédilection soit Python, Java, Go, Rust, C ou C++, JavaScript, .Net ou autre, vous pouvez probablement bénéficier d'un bon IDE. CodeReady Workspaces a accès à VS Code, JetBrains, Che, Theia et plus encore. Il existe de nombreux bons arguments en faveur de la standardisation d’une équipe de développement sur le même IDE, et c’est précisément ce que CodeReady Workspaces peut rendre possible.
CodeReady Workspaces fonctionne sur OpenShift, il peut donc être utilisé avec plusieurs fournisseurs de cloud différents, notamment Red Hat OpenShift Service sur la plateforme AWS, mais également Azure, Google Cloud, ainsi que votre propre cloud OpenStack privé.
Plateformes de conteneurs
Il existe des bibliothèques que vous pouvez utiliser dans le monde du développement de logiciels afin que vous n'ayez pas à réinventer une technologie que quelqu'un d'autre a déjà travaillé dur pour comprendre. De même, le cloud dispose de conteneurs qui offrent le même luxe aux développeurs et aux administrateurs système.
Lorsque vous développez une application cloud native et réalisez que vous avez besoin d'un composant standardisé (par exemple, une base de données), vous pouvez importer un conteneur qui fournit ce composant. Tout ce que vous avez à faire est de regarder les entrées et sorties du conteneur, comme s'il s'agissait d'une fonction dans le code, et d'écrire votre logiciel en conséquence.
Il existe de nombreux hubs de conteneurs populaires et fiables.
- Centre Docker
- Registre d'images Fedora
- Registre d'images CentOS
- Bitnami
- Quai.io
Comme les bibliothèques de logiciels, les composants conteneurisés bien pris en charge ont l'avantage d'être gérés par quelqu'un d'autre. Bien que vous puissiez apprendre à créer vos propres conteneurs et à exécuter vos propres applications de support personnalisées, votre premier arrêt devrait être un hub de conteneurs.
Construire
Lorsque vient le temps de créer votre propre conteneur, que ce soit parce qu'un hub de conteneurs ne dispose pas d'un conteneur bien entretenu pour ce dont vous avez besoin, ou parce que le conteneur dont vous avez besoin est le vôtre, il existe des outils pour faciliter le processus. .
Même si vous développez des applications de manière relativement isolée, lorsque vous développez pour le cloud, votre application sera certainement déployée à un moment donné en tant que conteneur. Il existe différentes manières de créer un conteneur. Vous pouvez baser votre travail sur des conteneurs existants, ou si vous avez vraiment besoin de repartir à zéro, vous pouvez créer un conteneur à partir de zéro.
Quelle que soit la tactique que vous utilisez, vous souhaitez que votre solution finisse par être automatisée afin que vous puissiez l'intégrer à votre processus CI/CD ou de construction. Buildah est un outil flexible et facile à apprendre qui vaut la peine d'être utilisé.
Kubectl
Selon le fournisseur de cloud avec lequel vous faites affaire, la commande kubectl
peut être disponible ou non, mais il y a une différence entre utiliser une commande et connaître une commande.
J'ai découvert que l'apprentissage de kubectl
a été important dans ma compréhension des composants sous-jacents de la technologie cloud. En tant que développeur, vous n'aurez peut-être jamais besoin de savoir quels nœuds sont présents dans un cluster, mais il peut être agréable de comprendre qu'ils existent, pourquoi et ce qu'ils font. Vous n'aurez peut-être pas non plus à vous soucier de l'espace de noms dans lequel votre conteneur s'exécute ou du pod dont il est membre, mais il peut être utile de comprendre ce qui est et ce qui n'est pas disponible à l'intérieur et à l'extérieur d'un espace de noms ou d'un pod.
[Télécharger maintenant : Aide-mémoire Kubectl]
Que votre fournisseur de cloud vous donne accès à kubectl
ou que vous deviez l'exécuter pour un projet, si vous êtes le type de développeur qui souhaite comprendre l'ensemble de la pile, vous devriez alors apprendre kubectl
.
Une histoire en développement
Le développement d’applications cloud natives est une histoire en évolution. De nouveaux outils continuent de faire leur apparition et la tâche de développement dans le cloud devient plus facile et plus accessible. Une chose est sûre : vous devez absolument profiter de l'occasion pour vous familiariser avec l'utilisation de différents environnements lors de l'informatique dans le cloud. Avec autant d’outils open source pour que la vie dans le cloud ressemble à votre environnement natif, vous avez le choix entre de nombreuses options.
[ Suivre le cours en ligne gratuit : Déploiement d'applications conteneurisées ]