Observação:
- Este tutorial está disponível em um ambiente de laboratório gratuito fornecido pela Oracle.
- Ele usa valores de exemplo para credenciais, tenancy e compartimentos do Oracle Cloud Infrastructure. Ao concluir seu laboratório, substitua esses valores por valores específicos do seu ambiente de nuvem.
Crie o Oracle Cloud Native Environment a partir da Origem
Introdução
A Interface de Linha de Comando (CLI) do Oracle Cloud Native Environment (Oracle CNE) gerencia o ciclo de vida do cluster do Kubernetes em sua organização. Também é um projeto de Código-Fonte Aberto disponível em GitHub, e este tutorial demonstra como criar você mesmo o executável ocne
.
Para obter mais informações sobre o Oracle Cloud Native Environment 2, consulte o site atual de Documentação da Versão.
Objetivos
Neste tutorial, você aprenderá a:
- Configurar o ambiente de compilação
- Crie o executável
ocne
- Iniciar um cluster do Kubernetes com o executável resultante
Pré-requisitos
-
Mínimo de uma instância do Oracle Linux
-
Cada sistema deve ter o Oracle Linux instalado e configurado com:
- Uma conta de usuário da Oracle (usada durante a instalação) com acesso sudo
- SSH baseado em chave, também conhecido como SSH sem senha, entre os hosts
- Um ambiente libvirt KVM de trabalho.
Configurar o Oracle Cloud Native Environment
Observação: Se estiver em execução em sua própria tenancy, leia o projeto linux-virt-labs
GitHub README.md e conclua os pré-requisitos antes de implantar o ambiente de laboratório.
-
Abra um terminal no Luna Desktop.
-
Clone o projeto
linux-virt-labs
GitHub.git clone https://github.com/oracle-devrel/linux-virt-labs.git
-
Altere para o diretório de trabalho.
cd linux-virt-labs/ocne2
-
Instale as coleções necessárias.
ansible-galaxy collection install -r requirements.yml
-
Implante o ambiente de laboratório.
ansible-playbook create_instance.yml -e localhost_python_interpreter="/usr/bin/python3.6" -e ocne_type=libvirt
O ambiente de laboratório gratuito requer a variável extra
local_python_interpreter
, que defineansible_python_interpreter
para execuções em execução no localhost. Essa variável é necessária porque o ambiente instala o pacote RPM do SDK para Python do Oracle Cloud Infrastructure, localizado nos módulos python3.6.A forma de implantação padrão usa a CPU AMD e o Oracle Linux 8. Para usar uma CPU Intel ou Oracle Linux 9, adicione
-e instance_shape="VM.Standard3.Flex"
ou-e os_version="9"
ao comando de implantação.Importante: Aguarde a execução bem-sucedida do playbook e atinja a tarefa de pausa. Nesta etapa do manual, a instalação do Oracle Cloud Native Environment está concluída e as instâncias estão prontas. Tome nota da reprodução anterior, que imprime os endereços IP públicos e privados dos nós que ele implanta e qualquer outra informação de implantação necessária durante a execução do laboratório.
Instalar os Pré-requisitos
-
Abra um terminal e conecte-se via SSH à instância do ocne.
ssh oracle@<ip_address_of_instance>
-
Instalar o Git.
sudo dnf install git -y
-
Clone o repositório do Oracle CNE.
git clone https://github.com/oracle-cne/ocne.git
-
Altere para o diretório de trabalho.
cd ocne
-
Liste os pacotes disponíveis do Oracle Cloud Native Environment.
sudo dnf search ocne
Exemplo de Saída:
[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 o pacote do repositório.
Oracle Linux 8
sudo dnf install -y oracle-ocne-release-el8
Oracle Linux 9
sudo dnf install -y oracle-ocne-release-el9
-
Ative o repositório.
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
-
Ative o repositório Codeready.
O repositório CodeReady fornece muitos pacotes e ferramentas para desenvolvedores criarem e empacotar aplicativos.
Oracle Linux 8
sudo dnf config-manager --enable ol8_codeready_builder
Oracle Linux 9
sudo dnf config-manager --enable ol9_codeready_builder
-
Confirme se os repositórios estão ativados.
sudo dnf repolist
-
Atualize o requisito do Helm para o Oracle Linux 9.
Oracle Linux 8
Não é obrigatório.
Oracle Linux 9
sed -i 's/3.13.0/3.12.0/' buildrpm/ocne.spec
-
Instale os pré-requisitos.
sudo yum-builddep buildrpm/ocne.spec -y
Exemplo de Saída:
[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
Criar o Executável
-
Verifique as opções disponíveis.
make
Exemplo de Saída:
[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
-
Crie o executável.
make build-cli
Exemplo de Saída:
[oracle@ocne ocne]$ make build-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=be1686eb469d885d293df74d6b5232f576fcdae8' -X 'github.com/oracle-cne/ocne/cmd/info.buildDate=2025-05-20T09:14:21Z' -X 'github.com/oracle-cne/ocne/cmd/info.cliVersion=2.1.2-5.el8'" -o out/linux_amd64 ./...
-
Confirme se o executável está presente.
ls -al out/linux_amd64/
Exemplo de Saída:
[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 se funciona.
out/linux_amd64/ocne info
Exemplo de Saída:
[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 os valores Version e BuildDate. A Versão reflete a versão mais recente em Principal e o BuildDate reflete a Data e a Hora em que você criou o executável
ocne
.
Criar um Cluster de Nós Únicos
-
Crie um cluster do Oracle Cloud Native Environment de nó único.
out/linux_amd64/ocne cluster start
Dependendo dos recursos disponíveis da sua máquina, a criação do cluster pode levar vários minutos para ser concluída enquanto faz download da origem da imagem e a configura.
Depois de concluído, digite
y
para concluir a instalação e retornar ao prompt de comando. Ignore o restante das etapas de pós-instalação e prossiga para a próxima etapa.Exemplo de Saída:
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 a ferramenta de linha de comando do Kubernetes (kubectl)
sudo dnf install -y kubectl
-
Configure kubectl para usar o cluster recém-criado.
export KUBECONFIG=$HOME/.kube/kubeconfig.ocne.local
-
Confirme se o cluster consiste em apenas um nó.
kubectl get nodes --all-namespaces
Exemplo de Saída:
[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 a implantação bem-sucedida do cluster.
kubectl get deployments --all-namespaces
Exemplo de Saída:
[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
-
Liste todos os pods implantados.
kubectl get pods --all-namespaces
Exemplo de Saída:
[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
Essa saída confirma que você criou com sucesso
ocne
com base no código-fonte e criou um novo cluster do Kubernetes.
Próximas etapas
Este tutorial demonstrou como criar a CLI do Oracle CNE com base no código-fonte em GitHub, o que é útil para testes locais. No entanto, este é apenas o começo. Confira a Estação de Treinamento do Oracle Linux para obter tutoriais e conteúdo adicionais.
Links Relacionados
- Documentação do Oracle Cloud Native Environment
- Roteiro do Oracle Cloud Native Environment
- Oracle Linux Training Station
Mais Recursos de Aprendizagem
Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal Oracle Learning YouTube. Além disso, visite education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.
Para obter a documentação do produto, visite o Oracle Help Center.
Build Oracle Cloud Native Environment from Source
G33049-02
Copyright ©2025, Oracle and/or its affiliates.