Pour accéder à distance à une machine que Cloud Assembly a déployée, vous ajoutez des propriétés, avant le déploiement, au modèle de cloud de cette machine.

Pour l'accès à distance, vous pouvez configurer l'une des options d'authentification suivantes.

Note : Dans les cas où des clés doivent être copiées, vous pouvez également créer une section cloudConfig dans le modèle de cloud pour copier automatiquement les clés lors du provisionnement. Les détails ne sont pas documentés ici, mais Initialisation de machine dans Cloud Assembly fournit des informations générales sur cloudConfig.

Génération d'une paire de clés au moment du provisionnement

Si vous ne disposez pas de votre propre paire de clés publique/privée pour l'authentification d'accès à distance, Cloud Assembly peut en générer une.

Utilisez le code suivant comme une indication.

  1. Dans Cloud Assembly, avant le provisionnement, ajoutez des propriétés remoteAccess au modèle de cloud, comme indiqué dans l'exemple.

    Le nom d'utilisateur est facultatif. Si vous ne l'indiquez pas, le système génère un ID aléatoire comme nom d'utilisateur.

    Exemple :

    type: Cloud.Machine
    properties:
      name: our-vm2
      image: Linux18
      flavor: small
      remoteAccess:
        authentication: generatedPublicPrivatekey
        username: testuser
    
  2. Dans Cloud Assembly, provisionnez la machine à partir de son modèle de cloud et mettez-la à l'état Démarré.

    Le processus de provisionnement génère les clés.

  3. Recherchez le nom de la clé dans les propriétés Ressources > Déploiements > Topologie.
  4. Utilisez l'interface du fournisseur de cloud, comme vSphere Client, pour accéder à la ligne de commande de la machine provisionnée.
  5. Accordez l'autorisation de lecture à la clé privée.

    chmod 600 key-name

  6. Accédez au déploiement de Cloud Assembly, sélectionnez la machine, puis cliquez sur Actions > Obtenir la clé privée.
  7. Copiez le fichier de clé privée sur votre machine locale.

    Un chemin de fichier local type est /home/username/.ssh/key-name.

  8. Ouvrez une session SSH distante et connectez-vous à la machine provisionnée.

    ssh -i key-name user-name@machine-ip

Fourniture de votre propre paire de clés publique et privée

De nombreuses entreprises créent et distribuent leurs propres paires de clés publiques et privées pour l'authentification.

Utilisez le code suivant comme une indication.

  1. Dans votre environnement local, obtenez votre paire de clés publique et privée ou générez-la.

    Si vous en avez besoin, voici quelques informations de base sur la génération de paires de clés sous Linux et Windows.

    Pour le moment, il vous suffit de générer et d'enregistrer les clés localement.

  2. Dans Cloud Assembly, avant le provisionnement, ajoutez des propriétés remoteAccess au modèle de cloud, comme indiqué dans l'exemple.

    sshKey inclut la longue chaîne alphanumérique trouvée dans le fichier de clé publique key-name.pub.

    Le nom d'utilisateur est facultatif et il est créé pour la connexion. Si vous ne l'indiquez pas, le système génère un ID aléatoire comme nom d'utilisateur.

    Exemple :

    type: Cloud.Machine
    properties:
      name: our-vm1
      image: Linux18
      flavor: small
      remoteAccess:
        authentication: publicPrivateKey
        sshKey: ssh-rsa Iq+5aQgBP3ZNT4o1baP5Ii+dstIcowRRkyobbfpA1mj9tslf qGxvU66PX9IeZax5hZvNWFgjw6ag+ZlzndOLhVdVoW49f274/mIRild7UUW... 
        username: testuser
    
  3. Dans Cloud Assembly, provisionnez la machine à partir de son modèle de cloud et mettez-la à l'état Démarré.
  4. À l'aide du client du fournisseur de cloud, accédez à la machine provisionnée.
  5. Ajoutez le fichier de clé publique au dossier de base de la machine. Utilisez la clé que vous avez indiquée dans remoteAccess.sshKey.
  6. Vérifiez que la contrepartie du fichier de clé privée est présente sur votre machine locale.

    La clé est généralement /home/username/.ssh/key-name sans l'extension .pub.

  7. Ouvrez une session SSH distante et connectez-vous à la machine provisionnée.

    ssh -i key-name user-name@machine-ip

Fourniture d'une paire de clés AWS

En ajoutant un nom de paire de clés AWS au modèle de cloud, vous pouvez accéder à distance à une machine que Cloud Assembly déploie sur AWS.

Sachez que les paires de clés AWS sont spécifiques à la région. Si vous provisionnez des charges de travail dans us-east-1, la paire de clés doit exister dans us-east-1.

Utilisez le code suivant comme une indication. Cette option fonctionne uniquement pour les zones de cloud AWS.

type: Cloud.Machine
properties:
  image: Ubuntu
  flavor: small
  remoteAccess:
    authentication: keyPairName
    keyPair: cas-test
constraints:
  - tag: 'cloud:aws'

Fournir un nom d'utilisateur et un mot de passe

En ajoutant un nom d'utilisateur et un mot de passe au modèle de cloud, vous pouvez disposer d'un accès distant simple à une machine que Cloud Assembly déploie.

Bien qu'elle soit moins sécurisée, la connexion à distance avec un nom d'utilisateur et un mot de passe peut être la seule requise par votre situation. Sachez que certains fournisseurs ou configurations de cloud peuvent ne pas prendre en charge cette option moins sécurisée.

  1. Dans Cloud Assembly, avant le provisionnement, ajoutez des propriétés remoteAccess au modèle de cloud, comme indiqué dans l'exemple.

    Définissez le nom d'utilisateur et le mot de passe sur le compte avec lequel vous prévoyez de vous connecter.

    Exemple :

    type: Cloud.Machine
    properties:
      name: our-vm3
      image: Linux18
      flavor: small
      remoteAccess:
        authentication: usernamePassword
        username: testuser
        password: admin123
    
  2. Dans Cloud Assembly, provisionnez la machine à partir de son modèle de cloud et mettez-la à l'état Démarré.
  3. Accédez à l'interface de votre fournisseur de cloud et accédez à la machine provisionnée.
  4. Sur la machine provisionnée, créez ou activez le compte.
  5. Depuis votre machine locale, ouvrez une session distante avec l'adresse IP ou le nom de domaine complet de la machine provisionnée et connectez-vous comme d'habitude avec le nom d'utilisateur et le mot de passe.