Connexion à des noeuds de cluster avec des adresses IP privées

Par défaut, des adresses IP privées sont affectées aux noeuds de cluster. Ces derniers ne sont donc pas disponibles publiquement sur Internet. Vous pouvez les rendre disponibles par le biais de l'une des méthodes décrites dans les rubriques suivantes :

Mise en correspondance d'une adresse IP privée avec une adresse IP publique

Les noeuds Big Data Service se voient affecter par défaut des adresses IP privées, qui ne sont pas accessibles à partir du réseau Internet public. Une façon de rendre un noeud accessible à partir d'Internet consiste à mettre à correspondance son adresse IP privée avec une adresse IP publique.

Les instructions ci-dessous utilisent Oracle Cloud Infrastructure Cloud Shell, un terminal basé sur un navigateur Web accessible à partir de la console Oracle Cloud. Vous devez rassembler des informations sur votre réseau et vos noeuds de cluster, puis les transmettre aux commandes du shell. Pour effectuer cette tâche, vous devez disposer d'un cluster exécuté dans un réseau cloud virtuel de votre location ainsi que d'un sous-réseau public régional.

Pour afficher les informations sur le cluster, reportez-vous à Obtention des détails d'un cluster.

Privilèges IAM requis pour la mise en correspondance d'une adresse IP privée avec une adresse IP publique

Attention

Il s'agit de l'une des méthodes permettant d'attacher une adresse IP publique à un noeud. Cependant, nous ne recommandons pas d'utiliser cette méthode en raison de l'augmentation des risques d'attaque. Nous vous recommandons d'utiliser l'une des autres options :

Vous devez disposer des privilèges Oracle Cloud Infrastructure Identity and Access Management (IAM) appropriés pour mettre en correspondance des adresses IP privées avec des adresses IP publiques.

L'administrateur de location ou un administrateur délégué disposant des privilèges appropriés doit créer une stratégie conformément aux instructions suivantes.

Groupe

Cette stratégie peut affecter des privilèges à n'importe quel groupe Big Data Service afin d'autoriser les membres à mettre en correspondance des adresses IP.

Autorisations

La stratégie doit contenir des instructions de stratégie avec les droits d'accès IAM suivants :
  • vnic_read
  • private_ip_read
  • public_ip_read
  • public_ip_delete
  • public_ip_create
  • public_ip_update
  • private_ip_assign_public_ip
  • private_ip_unassign_public_ip
  • public_ip_assign_private_ip
  • public_ip_unassign_private_ip

Ressource

La stratégie doit indiquer l'élément tenancy ou <compartment_name> du compartiment contenant le sous-réseau utilisé pour les adresses IP.

Exemple

allow group bds_net_admins to vnic_read in tenancy
allow group bds_net_admins to private_ip_read in tenancy
allow group bds_net_admins to public_ip_read in tenancy
allow group bds_net_admins to public_ip_delete in tenancy
allow group bds_net_admins to public_ip_create in tenancy 
allow group bds_net_admins to public_ip_update in tenancy 
allow group bds_net_admins to private_ip_assign_public_ip in tenancy 
allow group bds_net_admins to private_ip_unassign_public_ip in tenancy 
allow group bds_net_admins to public_ip_assign_private_ip in tenancy
allow group bds_net_admins to public_ip_unassign_private_ip in tenancy

Mise en correspondance de l'adresse IP privée avec une adresse IP publique

  1. Dans la console cloud, sélectionnez l'icône Cloud Shell Cloud Shell en haut de la page. La connexion et l'authentification risquent de prendre quelques instants.
    1. export DISPLAY_NAME=<display-name>

      export SUBNET_OCID=<subnet-ocid>

      export PRIVATE_IP=<ip-address>

      oci network public-ip create --display-name $DISPLAY_NAME --compartment-id `oci network private-ip list --subnet-id $SUBNET_OCID --ip-address $PRIVATE_IP | jq -r '.data[] | ."compartment-id"'` --lifetime "RESERVED" --private-ip-id `oci network private-ip list --subnet-id $SUBNET_OCID --ip-address $PRIVATE_IP | jq -r '.data[] | ."id"'`

      Les instructions export définissent les variables utilisées dans la commande oci network qui suit. Les variables sont les suivantes :

      • <display-name> (facultatif) est un nom convivial associé à l'adresse IP publique réservée. Ce nom n'est pas préexistant, il est créé lors de l'exécution de cette commande.

        Pour plus de commodité, vous pouvez utiliser le nom du noeud dont vous voulez mettre en correspondance l'adresse IP privée, par exemple myclusun0, qui correspond au nom du premier noeud utilitaire d'un cluster nommé mycluster.

      • <subnet-ocid> est l'OCID du sous-réseau public client utilisé par le cluster, par exemple ocid1.subnet.oc1.iad....

      • <ip-address> est l'adresse IP privée affectée au noeud à mettre en correspondance, par exemple 192.0.2.1.

      Entrez la commande commençant par oci network public-ip create --compartment-id..., exactement comme indiqué ci-dessus, sans saut de ligne.

      Exemple :

      $ export DISPLAY_NAME="myclustun0"
      $ export SUBNET_OCID="ocid1.subnet.oc1.…"
      $ export PRIVATE_IP="192.0.2.1"
      $ oci network public-ip create --display-name $DISPLAY_NAME --
      compartment-id `oci network private-ip list --subnet-id $SUBNET_OCID --ip-
      address $PRIVATE_IP | jq -r '.data[] | ."compartment-id"'` --lifetime 
      "RESERVED" - private-ip-id `oci network private-ip list --subnet-id 
      $SUBNET_OCID --ip-address $PRIVATE_IP | jq -r '.data[] | ."id"'`
      Ce code renvoie la sortie suivante :
      { "data": {
          "assigned-entity-id": "ocid1.privateip.oc1...",
          "assigned-entity-type": "PRIVATE_IP",
          "availability-domain": null,
          "compartment-id": "ocid1.compartment.oc1...",
          "defined-tags": {},
          "display-name": "publicip...",
          "freeform-tags": {},
          "id": "ocid1.publicip.oc1....",
          "ip-address": "203.0.113.1",
          "lifecycle-state": "ASSIGNED",
          "lifetime": "RESERVED",
          "private-ip-id": "ocid1.privateip....",
          "scope": "REGION",
          "time-created": "2020-04-13..."
         },
         "etag": "1234abcd" 
      }
  2. Dans la sortie renvoyée, recherchez la valeur de ip-address. Dans l'exemple ci-dessus, elle correspond à 203.0.113.1. Il s'agit de la nouvelle adresse IP publique réservée mise en correspondance avec l'adresse IP privée du noeud.
  3. Pour afficher l'adresse IP publique réservée dans la console, sélectionnez le menu menu de navigation de navigation.
  4. Sous Fonctions de réseau, sélectionnez Réseaux cloud virtuels.
  5. Dans la liste de navigation de gauche, sous Fonctions de réseau, sélectionnez Gestion d'IP.
    La nouvelle adresse IP publique réservée figure dans la liste Adresses IP publiques réservées. Si vous disposez d'un nom d'affichage dans la commande que vous venez d'exécuter, ce nom figure dans la colonne Nom. Dans le cas contraire, le nom publicipnnnnnnnnn est généré.

Suppression d'une adresse IP publique

  1. Dans la console cloud, sélectionnez l'icône Cloud Shell Cloud Shell en haut de la page. La connexion et l'authentification risquent de prendre quelques instants.
  2. Exécutez oci network public-ip delete --public-ip-id ocid1.publicip.oc1.....

    La valeur de --public-ip-id apparaît dans la sortie renvoyée par la commande précédente, comme indiqué ci-dessus : "id": "ocid1.publicip.oc1....",.

  3. (Facultatif) Vous pouvez également accéder à la page Adresses IP publiques réservées dans la console cloud pour y supprimer des adresses IP publiques réservées.

Ouverture des ports pour rendre les services disponibles

Il ne suffit pas de rendre le noeud public pour qu'un service comme Apache Ambari soit disponible à partir d'Internet. Vous devez également ouvrir le port du service en ajoutant une règle entrante à une liste de sécurité. Reportez-vous à Définition de règles de sécurité.

Utilisation d'un bastion pour la connexion à Big Data Service

Vous pouvez utiliser un bastion pour autoriser l'accès au réseau privé d'un cluster à partir du réseau Internet public.

Un bastion est une instance de calcul qui sert de point d'entrée public pour l'accès à un réseau privé à partir de réseaux externes comme Internet. Le trafic doit transiter par le bastion pour pouvoir accéder au réseau privé. Vous pouvez donc configurer des mécanismes de sécurité sur le bastion pour gérer ce trafic. Pour plus d'informations, reportez-vous à Bastion.

Utiliser un VPN site à site Oracle Cloud Infrastructure pour se connecter à Big Data Service

Un VPN site à site fournit un VPN IPSec site à site entre votre réseau sur site et votre réseau cloud virtuel (VCN). La suite de protocoles IPSec crypte le trafic IP avant le transfert des paquets de la source vers la destination. Elle décrypte ensuite le trafic à son arrivée.

Pour plus d'informations sur la connexion à Big Data Service via un VPN, reportez-vous à VPN site à site.

Utilisation d'Oracle Cloud Infrastructure FastConnect pour la connexion à Big Data Service

Utilisez FastConnect afin d'accéder aux services publics dans Oracle Cloud Infrastructure sans passer par Internet, par exemple pour accéder à Object Storage, ou à la console et aux API Oracle Cloud. Sans FastConnect, le trafic destiné aux adresses IP publiques serait acheminé via Internet. Avec FastConnect, le trafic passe par votre connexion physique privée.

Pour plus d'informations sur la connexion à Big Data Service via Oracle Cloud Infrastructure FastConnect, reportez-vous à Présentation de FastConnect.