Observação:

Usar Gateway de Serviço

Introdução

Se você for um cliente típico do Oracle Cloud Infrastructure, poderá ter recursos na sua rede virtual na nuvem (VCN) que precisam acessar o serviço Oracle Cloud Infrastructure Object Storage, que tem pontos finais publicamente endereçáveis. Até o momento, você pode usar sub-redes públicas ou uma instância NAT, com um gateway de internet na sua VCN para acessar o serviço. No entanto, talvez você não queira usar essas opções por causa de privacidade, segurança ou questões operacionais.

O Service Gateway atende às preocupações anteriores, ativando as seguintes funções:

Pontos principais

Recomendamos o uso do Chrome ou Edge como broswer. Defina também o zoom do navegador como 80%.

Observação: As capturas de tela podem ser diferentes da interface do usuário real.

Pré-requisitos

  1. Credenciais da conta do Oracle Cloud Infrastructure (usuário, senha, tenant e compartimento).

  2. Treinamento do OCI

  3. Familiaridade com a console do OCI

  4. Visão Geral do Networking

  5. Familiaridade com o Compartimento

  6. Conexão com uma instância de computação

Acessar a Console do OCI para Criar um Bucket de Armazenamento de Objetos e uma VCN

  1. Acesse a Console do Oracle Cloud Infrastructure usando o nome do tenant na nuvem, o nome do usuário e a senha.

  2. No menu de serviços do OCI, clique em Object Storage.

    Armazenamento de Objetos

  3. Escolha seu compartimento em Escopo da Lista no painel de navegação esquerdo.

  4. Clique em Criar Bucket e preencha a caixa de diálogo:

    • Nome do Bucket: Forneça um nome
    • Camada de Armazenamento: PADRÃO
    • Criptografia: ENCRYPT USING KEYS ORACLE-MANAGED
  5. Clique em Criar Bucket.

  6. Clique no ícone Aplicativos na barra de ferramentas e selecione Git-Bash.

    Git-Bash

    Como alternativa, abra uma janela de terminal para executar comandos Git.

  7. Altere o diretório para a pasta Downloads. Informar comando:

    $ cd /c/Users/PhotonUser/Downloads/
    

    Alterar Comando de Diretório

  8. Crie um arquivo de exemplo. Informar comando:

    touch samplefile
    

    Isso deve criar um arquivo com o nome "samplefile" na pasta Downloads.

  9. Alterne para a janela da Console do OCI e clique no nome do bucket.

    Dica: Você pode trocar entre a janela da Console do OCI e qualquer outro aplicativo (por exemplo, git-bash) clicando em Alternar Janela.

    Ícone Alternar Janela

  10. A janela de detalhes do período deve estar visível. Clique em Carregar Objeto.

    Botão Fazer Upload do Objeto

  11. Clique em Carregar Objeto. Preencha a caixa de diálogo:

    • OBJECT NAME PREFIX: Forneça um prefixo (opcional)
    • OBSERVAÇÕES DO SEU COMPUTADOR: Clique em Selecionar Arquivo e navegue até o local em que o 'Arquivo de Amostra' foi criado
  12. Selecione o arquivo e, em seguida, clique em Fazer Upload de Objeto na caixa de diálogo.

    O arquivo deve estar visível em Objetos.

  13. No menu de serviços do OCI, clique em Redes Virtuais na Nuvem em Rede.

    Selecione seu compartimento no menu drop-down na parte esquerda da tela em Rede e clique em Iniciar Assistente de VCN.

    Observação: Certifique-se de que o compartimento correto esteja selecionado na lista COMPARTMENT.

  14. Clique em VCN com Conectividade de Internet e clique em Start Workflow.

  15. Preencha a caixa de diálogo e clique em Próximo:

    • NOME da VCN: Forneça um nome
    • COMPARTAMENTO: Certifique-se de que seu compartimento esteja selecionado
    • BLOCK CIDR da VCN: Forneça um bloco CIDR (10.0.0.0/16)
    • BLOCK PUBLIC SUBNET CIDR: Forneça um bloco CIDR (10.0.1.0/24)
    • BLOCK PRIVATE SUBNET CIDR: Forneça um bloco CIDR (10.0.2.0/24)
  16. Verifique todas as informações e clique em Criar.

    Isso criará uma VCN com os seguintes componentes: VCN, sub-rede pública, sub-rede privada, IG (Internet gateway), NAT (NAT) e SG (Service Gateway).

  17. Clique em Exibir Rede Virtual na Nuvem para exibir os detalhes da VCN.

  18. Clique em Criar Sub-rede. Preencha a caixa de diálogo:

    • Nome: Digite um nome
    • Tipo de Sub-rede: Regional
    • Bloco CIDR: Digite 10.0.5.0/24
    • Tabela de Roteamento: selecione a Tabela de Roteamento Padrão

    Observação: Para implantação de Produção, é altamente recomendável criar uma tabela de roteamento separada.

    • Acesso à sub-rede: selecione Sub-rede Privada
    • Opções de DHCP: Selecione o padrão
    • Listas de Segurança: selecione a Lista de Segurança Padrão

    Observação: Para implantação de Produção, é altamente recomendável criar uma lista de segurança separada.

  19. Mantenha as outras opções padrão e clique em Criar Sub-rede.

    Criar Sub-rede

Crie Chaves SSH. Crie Duas Instâncias de Computação com a CLI do OCI Pré-instalada

  1. Clique no ícone Aplicativos na barra de ferramentas e selecione Git-Bash.

    Ícone Aplicativos

    Como alternativa, abra uma janela de terminal para executar comandos Git.

  2. Informar comando:

    ssh-keygen
    

    Dica: Você pode trocar entre a janela da Console do OCI, sessões git-bash e qualquer outro aplicativo (Notepad etc.) clicando no ícone Alternar Janela.

    Janela Alternar Ícone

  3. Pressione Enter quando for solicitado para 'Informar Arquivo no qual a chave será salva', 'Diretório Criado, 'Informar frase-senha' e 'Informe a Frase-senha novamente.

    Senha

  4. Agora você deve ter as chaves pública e privada:

    /C/Users/ PhotonUser/.ssh/id_rsa (Chave Privada)

    /C/Users/PhotonUser/.ssh/id_rsa.pub (Chave Pública)

    Observação: id_rsa.pub será usado para criar a instância de computação e id_rsa para estabelecer conexão via SSH na instância de computação.

    Dica: Informe o comando:

    cd /C/Users/PhotonUser/.ssh (No Spaces)
    

    e, em seguida:

    ls 
    
    

    para verificar se os dois arquivos existem.

  5. Em git-bash, insira o comando:

    cat /C/Users/PhotonUser/.ssh/id_rsa.pub
    

    Realce a tecla e copie.

    Chave

  6. Clique no ícone Aplicativos, inicie o Bloco de Notas e cole a chave no Bloco de Notas (como backup).

    Bloco de Notas

  7. Alterne para a Console do OCI. No menu de serviços do OCI, clique em Instâncias no serviço Compute.

  8. Clique em Criar Instância. Preencha a caixa de diálogo:

    • Nomear sua instância: Informe um nome

    • Selecione um sistema operacional ou uma origem de imagem: Clique em Alterar Origem da Imagem. Na nova janela, clique em Imagens da Oracle e escolha Imagem do Desenvolvedor do Oracle Cloud. Role para baixo, aceite o acordo e clique em Selecionar Imagem.

      Imagens da Oracle

    • Domínio de Disponibilidade: Selecione o domínio de disponibilidade

    • Tipo de Instância: Selecione a Máquina Virtual

    • Forma da Instância: Selecione a forma da VM

    Em Configurar Rede

    • Compartimento da rede virtual na nuvem: Selecione seu compartimento

    • Rede virtual na nuvem: Escolha a VCN

    • Compartimento de Sub-rede: Escolha seu compartimento

    • Sub-rede: Escolha a Sub-rede Pública em Sub-redes Públicas

    • Usar grupos de segurança de rede para controlar o tráfego: Deixe desmarcado

    • Designar um endereço IP público: Marque esta opção

      Designar um Endereço IP Público

    • Volume de Inicialização: deixe o padrão

    • Adicionar Chaves SSH: Escolha 'Colar Chaves SSH' e cole a Chave Pública salva anteriormente.

  9. Clique em Criar.

  10. Anote o endereço IP Público da instância de computação.

  11. Crie uma segunda instância de computação seguindo as etapas previsivelmente delineadas. Clique em Instâncias no serviço Compute.

  12. Clique em Criar Instância. Preencha a caixa de diálogo:

    • Nome: Digite um nome

    • Sistema Operacional de Imagem: Clique em Alterar Origem da Imagem. Na nova janela, clique em Imagens da Oracle e escolha Imagem do Desenvolvedor do Oracle Cloud. Role para baixo, aceite o acordo e clique em Selecionar Imagem.

      Selecionar Imagem

    • Domínio de Disponibilidade: Selecione o domínio de disponibilidade

    • Tipo de Instância: Selecione a Máquina Virtual

    • Forma da Instância: Selecione a forma da VM

    Em Configurar Rede

    • Compartimento da rede virtual na nuvem: Selecione seu compartimento
    • Rede virtual na nuvem: Escolha a VCN
    • Compartimento de Sub-rede: Escolha seu compartimento
    • Sub-rede: Escolha a Sub-rede Privada em Sub-redes Privadas
    • Usar grupos de segurança de rede para controlar o tráfego: Deixe desmarcado
    • Volume de Inicialização: deixe o padrão
    • Adicionar Chaves SSH: Escolha 'Colar Chaves SSH' e cole a Chave Pública salva anteriormente
  13. Clique em Criar.

    Observação: Se um erro de 'Limite de serviço' for exibido, escolha outra forma, como VM.Standard.E2.2 OU VM.Standard2.2.

  14. Quando a instância estiver no estado de execução, clique em Nome da instância e anote seu Endereço IP Privado.

    Endereço IP Privado

  15. Para usar SSH na instância privada, usaremos o comando proxy SSH. Esse comando nos permite "tunnel" por meio do bastion host para nossa instância privada.

    Não é recomendável armazenar chaves SSH privadas em um servidor público, como um host do Bastion (primeira instância de computação).

  16. Certifique-se de que você tenha o IP Público do primeiro serviço de computação e o IP Privado do segundo serviço. Na janela git-bash, certifique-se de estar no diretório /C/Users/PhotonUser/.ssh. Informar comando:

    bash 
    ssh -t -o ProxyCommand='ssh -i <SSH_Private_Key_Name> opc@<FIRST_COMPUTE_PUBLIC_IP> -W %h:%p %r' -i <SSH_Private_Key_Name> opc@<SECOND_COMPUTE_PRIVATE_IP>   
    

    Comando SSH

  17. Informe Sim no prompt de segurança.

  18. Verifique a versão instalada da CLI do oci. Informar comando:

    oci -v
    

    Observação: A versão deve ser no mínimo 2.4.2X.

    Versão do OCI CLI

  19. Em seguida, configuraremos a CLI do OCI. Informar comando:

    oci setup config
    
  20. Aceite o local do diretório default.

    Para o OCI do usuário, alterne para a janela da Console do OCI. Clique no ícone Humano e em seu nome de usuário. Na página de detalhes do usuário, clique em copiar para copiar o OCID. Observe também o nome da sua região, conforme mostrado na janela da Console do OCI. Cole o OCID na sessão SSH.

    Página de Detalhes do Usuário

  21. Repita a etapa para localizar o OCID da tenancy (ícone Humano seguido de clicar no nome da tenancy). Cole o OCID da Tenancy na sessão SSH para calcular a instância seguida de fornecer o nome da sua região (por exemplo, us-ashburn-1, us-phoneix-1).

  22. Quando solicitado por Deseja gerar um novo par de chaves RSA?, resposta Y. Para o restante da pergunta, aceite o padrão pressionando Enter.

    Prompt do Par de Chaves RSA

Fazer Upload de Chaves de API e Verificar Funcionalidade

  1. A configuração de configuração do oci também gerou uma chave de API. Precisaremos fazer upload dessa chave de API para nossa conta do OCI para autenticação de chamadas de API. Alterne para sessão SSH para instância de computação para exibir o conteúdo da chave de API. Informar comando:

    cat ~/.oci/oci_api_key_public.pem
    
  2. Destaque e copie o conteúdo da sessão SSH. Alterne para a Console do OCI, clique no ícone Humano seguido pelo seu nome de usuário. Na página de detalhes do usuário, clique em Adicionar Chave Pública. Na caixa de diálogo, cole o conteúdo da chave pública e clique em Adicionar.

    Chave Pública

    Botão Adicionar Chave Pública

  3. Será gerada uma nova impressão digital. Alterne para a janela de git-bash e insira o comando:

    cat /home/opc/.oci/config 
    

    Compare a impressão digital na saída do arquivo de configuração com a impressão digital na janela da console do OCI e certifique-se de que eles correspondam.

    Agora vamos fazer upload de um objeto para o armazenamento de objetos e acessá-lo na segunda instância de computação. Esse download usará o IP Público da instância de computação.

  4. Volte para a janela da Console do OCI e navegue até a página de detalhes do bucket de armazenamento de objetos. Anote o espaço de nome e o nome do armazenamento de objetos.

    Name Space

  5. Alterne para a janela git-bash (ssh session para a segunda instância de computação) e faça download do arquivo de amostra. Informar comando:

    `bash oci os object get --namespace <NAME_SPACE> --bucket-name <BUCKET_NAME> --name samplefile --file ./
    

    Dica: Neste exemplo, o comando será: oci os object get --namespace us_training --bucket-name Service-Gateway-Bucket --name samplefile --file ./samplefile

    Comando de Obtenção de Objeto do SO do OCI

  6. Nenhuma saída será exibida e nenhum arquivo será baixado. Digite Ctrl+C para encerrar o comando. Informar comando:

    ls
    

    e verifique se o arquivo de amostra não foi baixado.

    Como não há IP Público na segunda instância de computação, ele não pode acessar o armazenamento de objetos. Em seguida, inicializaremos a tabela de roteamento e faremos download novamente do arquivo.

  7. Alterne para a Console do OCI. No menu de serviços do OCI, clique em Redes Virtuais na Nuvem em Rede. Localize sua VCN e clique no nome da VCN para exibir detalhes da VCN.

  8. Clique em Tabela de roteamento e clique em Tabela de Roteamento Padrão para <VCN_NAME>.

    Tabelas de Rota

  9. Clique em Adicionar Regras de Roteamento. Preencha a caixa de diálogo:

    • TIPO DE ORÇAMENTO: Gateway de Serviço
    • SERVIÇO DE DESTINO: OCI IAD-ObjectStorage
    • COMPARTMENT: Escolha seu compartimento
    • GATEWAY DE SERVIÇO DE ORÇAMENTO: Escolha o Gateway de serviço criado anteriormente
  10. Clique em Adicionar Regras de Roteamento. Uma nova entrada de rota deve ser criada.

    Adicionar Regras de Roteamento

  11. Na Sua VCN, clique em Listas de Segurança e, em seguida, clique em Lista de Segurança Padrão para <VCN_NAME>. Clique em Adicionar Regras de Saída.

  12. Adicione a seguinte regra de Saída; Certifique-se de deixar o indicador STATELESS desmarcado.

    • TIPO DE DESTINO: Serviço
    • SERVIÇO de DESTINO: OCI IAD Object Storage
    • SOURCE PORT RANGE: TODOS
    • PORTA DE DESTINO: TODOS

    Definições de Destino

  13. Clique em Adicionar Regras de Saída.

  14. Alterne para a janela git-bash (com SSH para a segunda instância de computação).

  15. Informe novamente o comando de download:

    bash oci os object get --namespace <NAME_SPACE> --bucket-name <BUCKET_NAME> --name samplefile --file ./
    

    Comando de Obtenção de Objeto do SO do OCI

Usando o Service Gateway, a instância de computação conseguiu acessar o Objeto armazenado no Object Storage. Isso foi feito usando a rede backbone privada do OCI em vez da internet pública.

Excluir os Recursos

Como prática, você precisará descobrir quaisquer erros encontrados durante a exclusão de recursos.

  1. Alterne para a janela da Console do OCI.

  2. Se sua instância de computação não for exibida, no menu de serviços do OCI, clique em Instâncias no serviço Compute.

  3. Localize a instância de computação, clique no ícone Ação e, em seguida, clique em Encerrar.

    Terminar Definição

  4. Certifique-se de que a opção Excluir permanentemente o Volume de Inicialização anexado esteja marcada e clique em Encerrar Instância. Aguarde o encerramento completo da instância.

    Botão Finalizar Instância

  5. Repita essas etapas para excluir a segunda instância de computação.

  6. No menu de serviços do OCI, clique em Redes Virtuais na Nuvem em Rede.

    Uma lista de todas as VCNs será exibida.

  7. Localize sua VCN, clique no ícone Ação e, em seguida, clique em Encerrar. Clique em Excluir Tudo na janela de confirmação. Clique em Fechar depois que a VCN for excluída.

    Encerrar VCN

  8. No menu de serviços do OCI, navegue até OBject Storage. Clique no nome do seu bucket. Em Objetos, seu arquivo deve estar visível. Clique no ícone Ação (3 pontos verticais) e clique em Excluir para excluir o objeto.

  9. Depois que o objeto for excluído, clique em Excluir para excluir o bucket.

Agradecimentos

Mais Recursos de Aprendizagem

Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal YouTube do Oracle Learning. 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.