Configuration de l'hôte pour exécuter des commandes d'interface de ligne de commande sur des instances hébergées sur un appareil

Configurez votre ordinateur hôte pour exécuter l'interface de ligne de commande OCI sur ses instances de calcul.

Suivez ces directives pour exécuter des interfaces de ligne de commande sur des instances de calcul hébergées par des appareils du service d'infrastructure en périphérie de réseau Rover.

Note

Les instructions de cette rubrique concernent les ordinateurs hôtes Oracle Linux.

  • Demandez à l'instance de passer par l'adresse IP locale suivante :

    169.254.169.254

    Demandez à l'instance de se référer à l'appareil en périphérie de réseau Rover en tant que otec-console-local.

    Par exemple, ajoutez l'entrée suivante au fichier /etc/hosts de l'instance :

    169.254.169.254 otec-console-local
  • Utilisez les règles suivantes relatives aux tables IP :

    { for i in 19060 8019 12050 21060 22060 23060 22060 12060;do iptables -I 
    BareMetalInstanceServices -d 169.254.169.254/32 -p tcp -m tcp --dport $i -m 
    comment --comment "Rover service access port" -j ACCEPT;done }

    Voir Ports de service pour obtenir la liste des ports disponibles.

    Enregistrez la valeur iptable afin que les règles persistent après un redémarrage :

    iptables save

Commandes d'interface de ligne de commande non prises en charge

Les commandes d'interface de ligne de commande suivantes ne sont actuellement pas prises en charge. Des solutions de rechange sont fournies lorsqu'elles sont disponibles.

  • Interfaces de ligne de commande du service de stockage d'objets : oci os list

    Vous ne pouvez utiliser la commande oci os list que lorsque vous incluez l'option --fields. Par exemple :

    # oci os object list --bucket-name generic-image --fields name,size,timeCreated,md5,etag
    {
    "data": [
    {
    "archival-state": null,
    "etag": "b2c123ff0f1231c4c7f41ff92294e4a0-32",
    "md5": "ssYx/w8SUcTH9B/5IpTkoA==-32",
    "name": "exported-image",
    "size": 2132357120,
    "storage-tier": null,
    "time-created": "2022-03-01T19:50:03.076000+00:00",
    "time-modified": null
    },    {
          "archival-state": null,
          "etag": "fe5e3c12e12e31de65b86722a6fe29e7-32",
          "md5": "/l48AOleMd5luGcipv4p5w==-32",
          "name": "imported-image-20210830-1542_ocid1.image.oc1.iad..uniqueID.oci",
          "size": 2132224000,
          "storage-tier": null,
          "time-created": "2022-03-01T19:50:59.968000+00:00",
          "time-modified": null
        }
      ],
      "prefixes": []
    }
  • Interfaces de ligne de commande du service de calcul : oci compute instance list-vnics

    La commande oci compute instance list-vnics liste les cartes vNIC attachées à l'instance spécifiée et est souvent utilisée pour obtenir l'adresse IP publique d'un noeud de calcul. Cette interface de ligne de commande n'est pas prise en charge actuellement dans le service d'infrastructure en périphérie de réseau Rover. Vous pouvez obtenir des informations sur la carte VNIC, notamment l'adresse IP associée à une carte VNIC associée à un noeud de calcul, au moyen de l'une des méthodes suivantes :

    • Console d'appareil : Allez à l'emplacement suivant :

      Compute > Instances > Détails de l'instance > Cartes vNIC attachées

      Les adresses IP des cartes vNIC sont listées dans la boîte de dialogue qui s'affiche.

    • Interface de ligne de commande : oci compute instance list-vnics

      Commencez par exécuter la commande suivante pour lister tous les attachements de la carte vNIC :

      oci compute vnic-attachment list --instance-id <> --all

      Ensuite, exécutez la commande suivante pour la carte VNIC spécifique pour laquelle vous voulez obtenir des détails :

      oci network vnic get --vnic-id <>

      L'exemple suivant montre ces deux commandes exécutées avec leurs retours respectifs :

      # oci compute vnic-attachment list --instance-id ocid1.instance.orei.orei-1..uniqueID --all
      {
        "data": [
          {
            "availability-domain": "orei-1-ad-1",
            "compartment-id": "ocid1.tenancy.orei..uniqueID",
            "display-name": null,
            "id": "ocid1.vnicattachment.orei.orei-1..uniqueID",
            "instance-id": "ocid1.instance.orei.orei-1..uniqueID",
            "lifecycle-state": "ATTACHED",
            "nic-index": 0,
            "subnet-id": "ocid1.subnet.orei.orei-1..uniqueID",
            "time-created": "2022-03-01T21:07:00.937000+00:00",
            "vlan-id": null,
            "vlan-tag": 1,
            "vnic-id": "ocid1.vnic.orei.orei-1..uniqueID"
          }
        ]
      }
      
      # oci network vnic get --vnic-id ocid1.vnic.orei.orei-1..uniqueID
      {
        "data": {
          "availability-domain": "orei-1-ad-1",
          "compartment-id": "ocid1.tenancy.orei..uniqueID",
          "defined-tags": {},
          "display-name": "test-instance",
          "freeform-tags": {},
          "hostname-label": "test-instance",
          "id": "ocid1.vnic.orei.orei-1..uniqueID",
          "is-primary": true,
          "lifecycle-state": "AVAILABLE",
          "mac-address": "02:00:17:00:04:00",
          "nsg-ids": [],
          "private-ip": "10.0.0.2",
          "public-ip": "10.145.142.128",
          "skip-source-dest-check": false,
          "subnet-id": "ocid1.subnet.orei.orei-1..",
          "time-created": "2022-03-01T21:07:00.155000+00:00",
          "vlan-id": null
        },
        "etag": "2c082d1c"
      }

      Si une seule carte VNIC est attachée, vous pouvez combiner ces commandes d'interface de ligne de commande avec d'autres outils Linux pour limiter la sortie à l'adresse IP publique à l'aide de la commande suivante :

      oci compute vnic-attachment list --instance-id <> --all|grep -m 1 vnic-id|awk -F'"' '{print $4}'|xargs -I{} oci network vnic get --vnic-id {}|grep public-ip|awk -F'"' '{print $4}'
      

      Par exemple :

      # oci compute vnic-attachment list --instance-id ocid1.instance.orei.orei-1..uniqueID --all|grep -m 1 vnic-id|awk -F'"' '{print $4}'|xargs -I{} oci network vnic get --vnic-id {}|grep public-ip|awk -F'"' '{print $4}'
      10.145.142.128