Note:
- Este tutorial está disponible en un entorno de prácticas gratuito proporcionado por Oracle.
- Utiliza valores de ejemplo para credenciales, arrendamiento y compartimentos de Oracle Cloud Infrastructure. Al finalizar la práctica, sustituya estos valores por otros específicos de su entorno en la nube.
Creación de Oracle Cloud Native Environment desde el origen
Introducción
La interfaz de línea de comandos (CLI) de Oracle Cloud Native Environment (Oracle CNE) gestiona el ciclo de vida del cluster de Kubernetes en su organización. También es un proyecto de código abierto disponible en GitHub, y en este tutorial se muestra cómo crear el ejecutable ocne
usted mismo.
Para obtener más información sobre Oracle Cloud Native Environment 2, consulte el sitio actual de documentación de versión.
Objetivos
En este tutorial, aprenderá a:
- Configurar el entorno de creación
- Crear el ejecutable
ocne
- Iniciar un cluster de Kubernetes con el ejecutable resultante
Requisitos
-
Mínimo de una instancia de Oracle Linux
-
Cada sistema debe tener Oracle Linux instalado y configurado con:
- Cuenta de usuario de Oracle (utilizada durante la instalación) con acceso sudo
- SSH basado en claves, también conocido como SSH sin contraseña, entre los hosts
- Un entorno libvirt de KVM en funcionamiento.
Configuración de Oracle Cloud Native Environment
Nota: Si se ejecuta en su propio arrendamiento, lea el proyecto linux-virt-labs
GitHub README.md y complete los requisitos antes de desplegar el entorno de prácticas.
-
Abra un terminal en el escritorio Luna.
-
Clone el proyecto
linux-virt-labs
GitHub.git clone https://github.com/oracle-devrel/linux-virt-labs.git
-
Cambie al directorio de trabajo.
cd linux-virt-labs/ocne2
-
Instale las recopilaciones necesarias.
ansible-galaxy collection install -r requirements.yml
-
Despliegue el entorno de prácticas.
ansible-playbook create_instance.yml -e localhost_python_interpreter="/usr/bin/python3.6" -e ocne_type=libvirt
El entorno de prácticas gratuito necesita la variable adicional
local_python_interpreter
, que defineansible_python_interpreter
para las reproducciones que se ejecutan en localhost. Esta variable es necesaria porque el entorno instala el paquete de RPM para el SDK para Python de Oracle Cloud Infrastructure, ubicado en los módulos python3.6.La unidad de despliegue por defecto utiliza la CPU AMD y Oracle Linux 8. Para utilizar una CPU de Intel u Oracle Linux 9, agregue
-e instance_shape="VM.Standard3.Flex"
o-e os_version="9"
al comando de despliegue.Importante: Espere a que el cuaderno de estrategias se ejecute correctamente y alcance la tarea de pausa. En esta etapa del manual, se ha completado la instalación de Oracle Cloud Native Environment y las instancias están listas. Tome nota de la reproducción anterior, que imprime las direcciones IP públicas y privadas de los nodos que despliega y cualquier otra información de despliegue necesaria durante la ejecución del laboratorio.
Instalación de los requisitos previos
-
Abra un terminal y conéctese mediante SSH a la instancia ocne.
ssh oracle@<ip_address_of_instance>
-
Instalación de Git.
sudo dnf install git -y
-
Clone el repositorio de CNE de Oracle.
git clone https://github.com/oracle-cne/ocne.git
-
Cambie al directorio de trabajo.
cd ocne
-
Muestre los paquetes de Oracle Cloud Native Environment disponibles.
sudo dnf search ocne
Salida de ejemplo:
[oracle@ocne ~]$ sudo dnf search ocne Last metadata expiration check: 0:01:00 ago on Fri 28 Mar 2025 11:48:50 AM GMT. ========================================================== Name Matched: ocne =========================================================== oracle-ocne-release-el8.src : Oracle Cloud Native Environment yum repository configuration oracle-ocne-release-el8.x86_64 : Oracle Cloud Native Environment yum repository configuration
-
Instale el paquete del repositorio.
Oracle Linux 8
sudo dnf install -y oracle-ocne-release-el8
Oracle Linux 9
sudo dnf install -y oracle-ocne-release-el9
-
Active el repositorio.
Oracle Linux 8
sudo dnf config-manager --enable ol8_ocne
Oracle Linux 9
sudo dnf config-manager --enable ol9_ocne sudo dnf config-manager --enable ol9_olcne19
-
Active el repositorio Codeready.
El repositorio CodeReady proporciona muchos paquetes y herramientas para que los desarrolladores creen y empaqueten aplicaciones.
Oracle Linux 8
sudo dnf config-manager --enable ol8_codeready_builder
Oracle Linux 9
sudo dnf config-manager --enable ol9_codeready_builder
-
Confirme que los repositorios estén activados.
sudo dnf repolist
-
Actualice el requisito de Helm para Oracle Linux 9.
Oracle Linux 8
No necesario.
Oracle Linux 9
sed -i 's/3.13.0/3.12.0/' buildrpm/ocne.spec
-
Instale los requisitos.
sudo yum-builddep buildrpm/ocne.spec -y
Salida de ejemplo:
[oracle@ocne ocne]$ sudo yum-builddep buildrpm/ocne.spec Oracle Linux 8 BaseOS Latest (x86_64) 317 kB/s | 4.3 kB 00:00 Oracle Linux 8 Application Stream (x86_64) 69 kB/s | 4.5 kB 00:00 Oracle Linux 8 CodeReady Builder (x86_64) - Unsupported 39 MB/s | 12 MB 00:00 Oracle Linux 8 Addons (x86_64) 184 kB/s | 3.5 kB 00:00 Oracle Cloud Native Environment version 2.0 (x86_64) 30 MB/s | 6.1 MB 00:00 Dependencies resolved. ========================================================================================================================================= Package Architecture Version Repository Size ========================================================================================================================================= Installing: btrfs-progs-devel x86_64 5.15.1-2.el8 ol8_UEKR7 49 k device-mapper-devel x86_64 8:1.02.181-15.0.1.el8_10 ol8_codeready_builder 284 k golang x86_64 1.22.9-1.module+el8.10.0+90476+bb48cc15 ol8_appstream 759 k gpgme-devel x86_64 1.13.1-12.el8 ol8_codeready_builder 166 k helm x86_64 3.17.1-2.el8 ol8_ocne 12 M libassuan-devel x86_64 2.5.1-3.el8 ol8_codeready_builder 69 k rpm-build x86_64 4.14.3-32.0.1.el8_10 ol8_appstream 174 k yq x86_64 4.45.1-1.el8 ol8_ocne 3.4 M Upgrading: btrfs-progs x86_64 5.15.1-2.el8 ol8_UEKR7 864 k ... ... python3-rpm-macros-3-45.el8.noarch qt5-srpm-macros-5.15.3-1.el8.noarch redhat-rpm-config-131-1.0.1.el8.noarch rpm-build-4.14.3-32.0.1.el8_10.x86_64 rust-srpm-macros-5-2.el8.noarch systemd-devel-239-82.0.3.el8_10.3.x86_64 yq-4.45.1-1.el8.x86_64 zstd-1.4.4-1.0.1.el8.x86_64
Creación del ejecutable
-
Compruebe las opciones disponibles.
make
Salida de ejemplo:
[oracle@ocne ocne]$ make Usage: make <target> help Display this help. build-cli Build CLI for the current system and architecture cli Build and install the CLI clean Delete output from prior builds Linting and coverage check Run all linters check-golangci-lint Run Go linters install-golangci-lint Install golangci-lint word-linter Check for use of 'bad' words
-
Cree el ejecutable.
make build-cli
Salida de ejemplo:
[oracle@ocne ocne]$ make cli ... ... cd repo && helm repo index . make[1]: Leaving directory '/home/oracle/ocne/build/catalog' mkdir -p pkg/catalog/embedded/charts cp build/catalog/repo/* pkg/catalog/embedded/charts mkdir -p out/linux_amd64 GOTOOLCHAIN=local GO111MODULE=on GOPRIVATE=github.com/oracle-cne/ocne go build -trimpath -ldflags "-X 'github.com/oracle-cne/ocne/cmd/info.gitCommit=1101a5b5fb72e9812aa14cf68613d28440f1bc57' -X 'github.com/oracle-cne/ocne/cmd/info.buildDate=2025-04-02T09:54:53Z' -X 'github.com/oracle-cne/ocne/cmd/info.cliVersion=2.1.2-3.el8'" -tags developer -o out/linux_amd64 ./...
-
Confirme que el ejecutable está presente.
ls -al out/linux_amd64/
Salida de ejemplo:
[oracle@ocne ocne]$ ls -al out/linux_amd64/ total 194744 drwxrwxr-x. 2 oracle oracle 18 Mar 28 12:35 . drwxrwxr-x. 3 oracle oracle 25 Mar 28 12:30 .. -rwxrwxr-x. 1 oracle oracle 199415168 Mar 28 12:35 ocne
-
Confirme que funciona.
out/linux_amd64/ocne info
Salida de ejemplo:
[oracle@ocne ocne]$ out/linux_amd64/ocne info CLI Info Name Value Version 2.1.2-3.el8 BuildDate 2025-04-02T09:54:53Z GitCommit 1101a5b5fb72e9812aa14cf68613d28440f1bc57 Environment Variables Name Description Current Value OCNE_DEFAULTS Sets the location of the default configuration file. KUBECONFIG Sets the location of the kubeconfig file. This behaves the same way as the --kubeconfig option for most ocne commands. EDITOR Sets the default document editor.
Observe los valores Version y BuildDate. La versión refleja la última versión en Principal, y la BuildDate refleja la fecha y la hora de creación del ejecutable
ocne
.
Creación de un único cluster de nodo
-
Crear un cluster de Oracle Cloud Native Environment de nodo único.
out/linux_amd64/ocne cluster start
En función de los recursos disponibles de la máquina, la creación del cluster puede tardar varios minutos en completarse mientras descarga el origen de imagen y lo configura.
Una vez completado, introduzca
y
para completar la instalación y volver al símbolo del sistema. Ignore el resto de los pasos posteriores a la instalación y continúe con el siguiente paso.Salida de ejemplo:
Run the following command to create an authentication token to access the UI: KUBECONFIG='/home/oracle/.kube/kubeconfig.ocne.local' kubectl create token ui -n ocne-system Browser window opened, enter 'y' when ready to exit: y INFO[2025-03-28T13:10:04Z] Post install information: To access the cluster from the VM host: copy /home/oracle/.kube/kubeconfig.ocne.vm to that host and run kubectl there To access the cluster from this system: use /home/oracle/.kube/kubeconfig.ocne.local To access the UI, first do kubectl port-forward to allow the browser to access the UI. Run the following command, then access the UI from the browser using via https://localhost:8443 kubectl port-forward -n ocne-system service/ui 8443:443 Run the following command to create an authentication token to access the UI: kubectl create token ui -n ocne-system
-
Instale la herramienta de línea de comandos de Kubernetes (kubectl)
sudo dnf install -y kubectl
-
Configure kubectl para utilizar el cluster recién creado.
export KUBECONFIG=$HOME/.kube/kubeconfig.ocne.local
-
Confirme que el cluster consta de un solo nodo.
kubectl get nodes --all-namespaces
Salida de ejemplo:
[oracle@ocne ~]$ kubectl get nodes --all-namespaces NAME STATUS ROLES AGE VERSION ocne-control-plane-1 Ready control-plane 2m23s v1.31.6+1.el8
-
Confirme el despliegue correcto del cluster.
kubectl get deployments --all-namespaces
Salida de ejemplo:
[oracle@ocne ~]$ kubectl get deployments --all-namespaces NAMESPACE NAME READY UP-TO-DATE AVAILABLE AGE kube-system coredns 2/2 2 2 15m ocne-system ocne-catalog 1/1 1 1 15m ocne-system ui 1/1 1 1 15m
-
Muestre todos los pods desplegados.
kubectl get pods --all-namespaces
Salida de ejemplo:
[oracle@ocne ~]$ kubectl get pods --all-namespaces NAMESPACE NAME READY STATUS RESTARTS AGE kube-flannel kube-flannel-ds-8fbm2 1/1 Running 0. 13m kube-system coredns-f7d444b54-njk46 1/1 Running 0 13m kube-system coredns-f7d444b54-xn975 1/1 Running 0 13m kube-system etcd-ocne-control-plane-1 1/1 Running 0 13m kube-system kube-apiserver-ocne-control-plane-1 1/1 Running 0 13m kube-system kube-controller-manager-ocne-control-plane-1 1/1 Running 0 13m kube-system kube-proxy-jsfqs 1/1 Running 0 13m kube-system kube-scheduler-ocne-control-plane-1 1/1 Running 0 13m ocne-system ocne-catalog-578c959566-75rr5 1/1 Running 0 13m ocne-system ui-84dd57ff69-grxlk 1/1 Running 0 13m
Esta salida confirma que ha creado correctamente
ocne
a partir del código fuente y ha creado un nuevo cluster de Kubernetes.
Pasos siguientes
En este tutorial se ha demostrado cómo crear la CLI de CNE de Oracle a partir del código fuente en GitHub, lo que resulta útil para las pruebas locales. Sin embargo, esto es solo el comienzo. Consulte Oracle Linux Training Station para obtener tutoriales y contenido adicionales.
Enlaces relacionados
- Documentación de Oracle Cloud Native Environment
- Circuito de Oracle Cloud Native Environment
- Oracle Linux Training Station
Más recursos de aprendizaje
Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de formación gratuita en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en un explorador de Oracle Learning.
Para obtener documentación sobre el producto, visite Oracle Help Center.
Build Oracle Cloud Native Environment from Source
G33043-01
Copyright ©2025, Oracle and/or its affiliates.