Remarques :
- Ce tutoriel est disponible dans un environnement d'atelier gratuit fourni par Oracle.
- Il utilise des exemples de valeurs pour les informations d'identification, la location et les compartiments Oracle Cloud Infrastructure. Lorsque vous terminez votre atelier, remplacez ces valeurs par celles propres à votre environnement cloud.
Utiliser un catalogue d'applications avec Oracle Cloud Native Environment
Introduction
Un catalogue d'applications est un référentiel de logiciels pouvant faire l'objet d'une recherche et que vous pouvez installer sur un cluster Kubernetes Oracle Cloud Native Environment (Oracle CNE). Oracle CNE prend en charge deux catalogues d'applications : le catalogue Oracle livré avec Oracle CNE et le catalogue externe compatible avec Artifact Hub.
Le catalogue Oracle fournit une sélection organisée de logiciels fournis par Oracle. Oracle CNE est livré avec un catalogue intégré appelé embedded. Vous pouvez utiliser le catalogue embedded sans déployer de cluster Kubernetes. Le catalogue embedded est mis à jour lorsque vous mettez à jour l'interface de ligne de commande ocne
.
L'autre catalogue fourni avec Oracle CNE est appelé Catalogue d'applications Oracle Cloud Native Environment. Ce catalogue est déployé sur votre cluster Kubernetes en tant que pod ocne-catalog dans l'espace de noms ocne-system.
Le catalogue embedded est mis à jour lorsque vous mettez à jour l'interface de ligne de commande ocne
, et le catalogue Oracle est mis à jour lorsque vous mettez à jour la version de Kubernetes. Ce comportement signifie que le contenu des deux catalogues fournis par Oracle peut être différent.
Objectifs
Dans ce tutoriel, vous allez apprendre :
- Comment gérer un catalogue fourni par Oracle ?
- Installation d'une application à partir d'un catalogue fourni par Oracle
Prérequis
- Installation d'Oracle Cloud Native Environment
- un noeud de contrôle unique et un noeud de processus actif
Configurer Oracle CNE
Remarque : en cas d'exécution dans votre propre location, lisez le projet linux-virt-labs
GitHub README.md et respectez les prérequis avant de déployer l'environnement d'atelier.
-
Ouvrez un terminal sur le bureau Luna.
-
Clonez le projet
linux-virt-labs
GitHub.git clone https://github.com/oracle-devrel/linux-virt-labs.git
-
Accédez au répertoire de travail.
cd linux-virt-labs/ocne2
-
Installez les collections requises.
ansible-galaxy collection install -r requirements.yml
-
Déployez l'environnement d'exercice.
ansible-playbook create_instance.yml -e localhost_python_interpreter="/usr/bin/python3.6" -e install_ocne_rpm=true -e create_ocne_cluster=true -e "ocne_cluster_node_options='-n 1 -w 1'"
L'environnement d'exercice gratuit nécessite la variable supplémentaire
local_python_interpreter
, qui définitansible_python_interpreter
pour les lectures exécutées sur localhost. Cette variable est nécessaire car l'environnement installe le package RPM pour le kit SDK Oracle Cloud Infrastructure pour Python, situé sous les modules python3.6.La forme de déploiement par défaut utilise la CPU AMD et Oracle Linux 8. Pour utiliser une CPU Intel ou Oracle Linux 9, ajoutez
-e instance_shape="VM.Standard3.Flex"
ou-e os_version="9"
à la commande de déploiement.Important : attendez que le playbook s'exécute correctement et atteignez la tâche de pause. A ce stade du manuel, l'installation du CNE Oracle est terminée et les instances sont prêtes. Notez la lecture précédente, qui imprime les adresses IP publiques et privées des noeuds qu'elle déploie, ainsi que toute autre information de déploiement nécessaire lors de l'exécution de l'exercice.
Accéder au cluster Kubernetes
-
Ouvrez un terminal et connectez-vous via SSH à l'instance
ocne
.ssh oracle@<ip_address_of_instance>
-
Attendez que le cluster se stabilise et que tous les pods génèrent un rapport en cours d'exécution.
watch kubectl get pods -A
Une fois que tous les pods ont le statut STATUS Running, saisissez
ctrl-c
pour quitter la commandewatch
. -
Vérifiez le nombre de noeuds présents.
kubectl get nodes
Gestion d'un catalogue
-
Répertoriez les catalogues disponibles.
ocne catalog list
-
Affichez les détails du catalogue Oracle.
ocne catalog get --name 'Oracle Cloud Native Environment Application Catalog'
Exemple de sortie :
[oracle@ocne ~]$ ocne catalog get --name 'Oracle Cloud Native Environment Application Catalog' Catalog -------- apiVersion: v1 entries: bootstrap-capi: - apiVersion: v2 appVersion: 1.9.4 created: "2025-02-24T01:37:20.540493324Z" description: A Helm chart for Cluster API bootstrap providers ... ... name: ui sources: - https://github.com/headlamp-k8s/headlamp/tree/main/charts/headlamp - https://github.com/headlamp-k8s/headlamp type: application urls: - ui-2.0.0.tgz version: 2.0.0
-
Répertoriez toutes les applications du catalogue Oracle.
ocne catalog search
Exemple de sortie :
[oracle@ocne ~]$ ocne catalog search APPLICATION VERSION bootstrap-capi 1.9.4 bootstrap-capi 1.7.1 cert-manager 1.14.5 ... ... tigera-operator 1.29.3 ui 2.0.0
-
Recherchez un élément spécifique dans le catalogue Oracle.
ocne catalog search --pattern 'prom*'
Exemple de sortie :
[oracle@ocne ~]$ ocne catalog search --pattern 'prom*' APPLICATION VERSION kube-prometheus-stack 0.63.0 kube-proxy 2.0.0 prometheus 2.31.1 prometheus-adapter 0.10.0 prometheus-node-exporter 1.6.1
Consulter les applications installées
-
Répertoriez les applications installées dans le cluster.
ocne application list -A
Exemple de sortie :
[oracle@ocne ~]$ ocne application list -A Releases NAME NAMESPACE CHART STATUS REVISION APPVERSION core-dns kube-system coredns deployed 1 2.0.0 flannel kube-flannel flannel deployed 1 2.0.0 kube-proxy kube-system kube-proxy deployed 1 2.0.0 kubernetes-gateway-api-crds kube-system kubernetes-gateway-api-crds deployed 1 1.2.1 oci-ccm kube-system oci-ccm deployed 1 1.30.0 ocne-catalog ocne-system ocne-catalog deployed 1 2.0.0 ui ocne-system ui deployed 1 2.0.0
Remarque : il s'agit d'un moyen utile de vérifier les applications d'un catalogue que vous avez déployées sur votre cluster.
-
Consultez les détails de l'application installée.
ocne application show --namespace ocne-system --release ui
Où :
--namespace
: espace de noms dans lequel l'application est déployée.--release
: nom de l'application--computed
: non utilisé dans cet exemple, mais renvoie les détails du déploiement YAML utilisé par l'application déployée.
Exemple de sortie :
[oracle@ocne ~]$ ocne application show --namespace ocne-system --release ui image: tag: current ---------------- NAME: ui NAMESPACE: ocne-system CHART: ui STATUS: deployed REVISION: 1 APPVERSION: 2.0.0
Installer une application
-
Installez l'application kube-prometheus-stack.
ocne application install --release kube-prometheus-stack --namespace default --name kube-prometheus-stack
Exemple de sortie :
[oracle@ocne ~]$ ocne application install --release kube-prometheus-stack --namespace default --name kube-prometheus-stack INFO[2025-03-21T16:24:58Z] Application installed successfully
-
Vérifiez l'installation de l'application.
ocne application list -A
Exemple de sortie :
[oracle@ocne ~]$ ocne application list -A Releases NAME NAMESPACE CHART STATUS REVISION APPVERSION core-dns kube-system coredns deployed 1 2.0.0 flannel kube-flannel flannel deployed 1 2.0.0 kube-prometheus-stack default kube-prometheus-stack deployed 1 0.63.0 kube-proxy kube-system kube-proxy deployed 1 2.0.0 kubernetes-gateway-api-crds kube-system kubernetes-gateway-api-crds deployed 1 1.2.1 oci-ccm kube-system oci-ccm deployed 1 1.30.0 ocne-catalog ocne-system ocne-catalog deployed 1 2.0.0 ui ocne-system ui deployed 1 2.0.0
-
Vérifiez que tous les pods sont en cours d'exécution.
kubectl get pods -n default
Exemple de sortie :
[oracle@ocne ~]$ kubectl get pods -n default NAME READY STATUS RESTARTS AGE alertmanager-kube-prometheus-stack-alertmanager-0 2/2 Running 0 2m30s kube-prometheus-stack-kube-state-metrics-f5869c58f-fnncf 1/1 Running 0 2m37s kube-prometheus-stack-operator-76b9d6954f-7rnqc 1/1 Running 0 2m37s kube-prometheus-stack-prometheus-node-exporter-g6b6n 1/1 Running 0 2m37s kube-prometheus-stack-prometheus-node-exporter-prqxd 1/1 Running 0 2m37s kube-prometheus-stack-prometheus-node-exporter-sppst 1/1 Running 0 2m37s kube-prometheus-stack-prometheus-node-exporter-vw797 1/1 Running 0 2m37s prometheus-kube-prometheus-stack-prometheus-0 2/2 Running 0 2m30s
-
Redirigez le trafic local vers le service Prometheus de votre cluster.
kubectl port-forward -n default svc/kube-prometheus-stack-prometheus 9091:9090
Exemple de sortie :
[oracle@ocne ~]$ kubectl port-forward -n default svc/kube-prometheus-stack-prometheus 9091:9090 Forwarding from 127.0.0.1:9091 -> 9090 Forwarding from [::1]:9091 -> 9090
Accéder à l'interface utilisateur de Prometheus
-
Ouvrez une nouvelle fenêtre de terminal et configurez un tunnel SSH vers l'instance
ocne
.ssh -L 9093:localhost:9091 oracle@<ip_address_of_node>
-
Ouvrez un navigateur Web et saisissez l'URL.
http://localhost:9093/metrics
Cette sortie confirme que les kube-state-metrics, les exportateurs de noeuds et le gestionnaire d'alertes, qui sont des composants de la pile kube-prometheus-stack, transforment activement les mesures en Prométhée.
-
Fermez le navigateur et quittez la fenêtre de terminal avec le tunnel SSH, car ils ne sont plus nécessaires.
-
Basculez vers la session de terminal qui exécute le transfert de port.
-
Arrêtez le port en avant en saisissant
ctrl-c
.
Désinstallation d'une application
-
Désinstallez l'application kube-prometheus-stack.
Cette étape enlève les composants Kubernetes associés à l'application et supprime l'instance.
ocne application uninstall --release kube-prometheus-stack --namespace default
Exemple de sortie :
[oracle@ocne ~]$ ocne application uninstall --release kube-prometheus-stack --namespace default INFO[2025-03-21T18:52:59Z] Uninstalling release kube-prometheus-stack INFO[2025-03-21T18:53:01Z] kube-prometheus-stack uninstalled successfully
-
Confirmez sa désinstallation.
ocne application list -A
-
Enlevez les définitions de ressource personnalisées (CRD) Kubernetes associées à kube-prometheus-stack.
Certaines applications nécessitent que vous effectuiez des étapes manuelles après avoir désinstallé l'application à l'aide de la commande
ocne application uninstall
. Vous trouverez les détails de chaque application dans le répertoire charts du projet GitHub Oracle CNE.kubectl delete crd alertmanagerconfigs.monitoring.coreos.com kubectl delete crd alertmanagers.monitoring.coreos.com kubectl delete crd podmonitors.monitoring.coreos.com kubectl delete crd probes.monitoring.coreos.com kubectl delete crd prometheuses.monitoring.coreos.com kubectl delete crd prometheusrules.monitoring.coreos.com kubectl delete crd servicemonitors.monitoring.coreos.com kubectl delete crd thanosrulers.monitoring.coreos.com
Exemple de sortie :
[oracle@ocne ~]$ kubectl delete crd alertmanagerconfigs.monitoring.coreos.com customresourcedefinition.apiextensions.k8s.io "alertmanagerconfigs.monitoring.coreos.com" deleted [oracle@ocne ~]$ kubectl delete crd alertmanagers.monitoring.coreos.com customresourcedefinition.apiextensions.k8s.io "alertmanagers.monitoring.coreos.com" deleted [oracle@ocne ~]$ kubectl delete crd podmonitors.monitoring.coreos.com customresourcedefinition.apiextensions.k8s.io "podmonitors.monitoring.coreos.com" deleted [oracle@ocne ~]$ kubectl delete crd probes.monitoring.coreos.com customresourcedefinition.apiextensions.k8s.io "probes.monitoring.coreos.com" deleted [oracle@ocne ~]$ kubectl delete crd prometheuses.monitoring.coreos.com customresourcedefinition.apiextensions.k8s.io "prometheuses.monitoring.coreos.com" deleted [oracle@ocne ~]$ kubectl delete crd prometheusrules.monitoring.coreos.com customresourcedefinition.apiextensions.k8s.io "prometheusrules.monitoring.coreos.com" deleted [oracle@ocne ~]$ kubectl delete crd servicemonitors.monitoring.coreos.com customresourcedefinition.apiextensions.k8s.io "servicemonitors.monitoring.coreos.com" deleted
L'application, dans cet exemple,
kube-prometheus-stack
, est maintenant complètement enlevée de votre cluster Kubernetes.
Etapes suivantes
Ce tutoriel vous présente l'utilisation d'un catalogue. Ensuite, comment installer, exécuter et enlever une application d'un catalogue sur votre cluster Kubernetes Oracle CNE. Pour plus de détails, reportez-vous à la documentation Oracle CNE.
Liens connexes
- Documentation Oracle Cloud Native Environment
- Parcours Oracle Cloud Native Environment
- Centre de formation Oracle Linux
Ressources de formation supplémentaires
Explorez d'autres ateliers sur docs.oracle.com/learn ou accédez à d'autres contenus de formation gratuits sur le canal Oracle Learning YouTube. De plus, visitez le site education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour obtenir la documentation produit, consultez le site Oracle Help Center.
Use an Application Catalog with Oracle Cloud Native Environment
G30878-01
Copyright ©2025, Oracle and/or its affiliates.