IBM Cloud Docs
Creación de una plantilla de instancia

Creación de una plantilla de instancia

Puede crear una plantilla de instancia para definir detalles de la instancia para suministrar uno o varios servidores virtuales. Cuando se haya creado la plantilla de instancia, puede utilizarla para suministrar instancias de un solo servidor virtual, o puede suministrar varias instancias al mismo tiempo como parte de un grupo de instancias.

Creación de una plantilla de instancia con la interfaz de usuario

La plantilla de instancia define los detalles de las instancias de servidor virtual que se crean a partir de la plantilla. Por ejemplo, especifique el perfil (vCPU y memoria), la imagen, los volúmenes conectados y las interfaces de red de la plantilla de imagen.

Para crear una plantilla de instancia, realice los pasos siguientes.

  1. En la IBM Cloud console, haga clic en Icono del menú de navegación Icono del menú >Infraestructura Icono de VPC >Compute > Plantillas de instancia.
  2. Haga clic en Nueva plantilla de instancia e introduzca la información que aparece en la Tabla 1.
  3. Pulse Crear plantilla de instancia cuando la información esté completa.

Cuando crea una plantilla de instancia, se realizan pasos de validación para asegurarse de que puede utilizar su plantilla para aprovisionar una instancia de servidor virtual.

Selecciones de plantillas de instancia
Campo Valor
Ubicación Las ubicaciones se componen de regiones (áreas geográficas específicas) y de zonas (centros de datos tolerantes a errores dentro de una región). Seleccione la geografía, región y zona donde desea que se cree su instancia de servidor virtual.
Nombre Es obligatorio especificar un nombre para la instancia de servidor virtual.
Grupo de recursos Seleccione un grupo de recursos para la instancia.
Imagen

Pulse Cambiar imagen para seleccionar una imagen. En la página Seleccionar una imagen, puede seleccionar una imagen en stock, una imagen personalizada, una imagen de catálogo, una instantánea o un volumen existente. Si la ubicación geográfica donde está aprovisionando una instancia lo admite, puede seleccionar una* x86* o* s390x* arquitectura. Después de seleccionar la imagen, pulse Guardar.

  • Imágenes en stock: puede seleccionar entre las imágenes en stock disponibles. Para obtener más información, consulte Imágenes de servidor virtualx86 y Imágenes de servidor virtuals390x.
  • Imágenes personalizadas: Una imagen personalizada puede ser una imagen que personalice y cargue en IBM Cloud Object Storage, que puede importar a IBM Cloud VPC. También puede utilizar una imagen personalizada que se ha creado a partir de un volumen de arranque. Para obtener más información sobre las imágenes personalizadas, consulte Iniciación a las imágenes personalizadas.
  • Imágenes de catálogo: una imagen de catálogo es una imagen personalizada que se importa a un catálogo privado. Para obtener más información sobre las imágenes de catálogo, consulte Consideraciones de VPC al utilizar imágenes personalizadas en un catálogo privado.
  • Instantánea: puede seleccionar entre las instantáneas disponibles. Para obtener más información, consulte Acerca de Block Storage Snapshots for VPC.
  • Volumen existente: puede seleccionar entre los volúmenes existentes. El volumen especificado debe estar desconectado y debe tener un sistema operativo con la misma arquitectura que el perfil de instancia.
Perfil Hacer clic Cambiar el perfil para seleccionar entre todos los disponibles vCPU y combinaciones de RAM. Las familias de perfiles son Equilibrado, Cálculo, Memoria y GPU. Para obtener más información, consulte Perfiles.
Clave SSH Debe seleccionar una clave SSH pública existente o pulsar Crear una clave SSH para crear una nueva. Solo puede crear claves SSH RSA. Para ED25519 Claves SSH, debe cargar la información de la clave. Para obtener más información sobre la creación de una clave SSH, consulte Creación de la clave SSH utilizando la interfaz de usuario. Las claves SSH se utilizan para conectarse de forma segura a la instancia una vez se está ejecutando.

Nota:** Las combinaciones alfanuméricas están limitadas a 100 caracteres. Las claves SSH pueden ser RSA o Ed25519. Ed25519 solo se puede utilizar si el sistema operativo admite este tipo de clave. ED25519 no puede utilizarse con imágenes de Windows o VMware.

Para más información, ver Comenzando con las claves SSH.

Volumen de arranque El tamaño de volumen de arranque predeterminado para todos los perfiles es de 100 GB. Puede especificar una capacidad de volumen de arranque mayor, de hasta 250 GB, en función de lo que permita la imagen. También puede especificar etiquetas de usuario.
Los volúmenes de datos Puede añadir uno o más volúmenes de datos secundarios que se incluirán cuando suministre la instancia. Para añadir volúmenes, pulse Crear. Puede especificar el cifrado gestionado por el cliente y las etiquetas de usuario para el volumen.
Virtual Private Cloud Especifique la VPC de IBM Cloud donde desea crear la instancia. Puede utilizar una VPC existente o crear una nueva. Para crear una nueva VPC, pulse Nueva VPC.
Interfaces de red Define la conexión de red en la VPC de IBM Cloud. De forma predeterminada, la nueva opción Conexión de red con una interfaz de red virtual está seleccionada para la plantilla de instancia. De forma alternativa, puede seleccionar la opción heredada Interfaz de red de instancia. Cualquiera que sea el tipo de opción de interfaz de red que seleccione al suministrar el servidor virtual, persiste durante el ciclo de vida del servidor virtual. Después de seleccionar el tipo de interfaz de red, puede hacer clic en el icono Editar icono Editar para actualizar los detalles de la interfaz de red, por ejemplo, la subred o el grupo de seguridad asociado.
Datos de usuario Puede añadir datos de usuario que realizan tareas de configuración comunes o ejecutan scripts automáticamente. Para obtener más información, consulte Datos de usuario.
Metadatos Desactivado por defecto, permite a la instancia que se crea a partir de esta plantilla recopilar metadatos sobre sí misma. Haga clic en el conmutador para activar el servicio de metadatos. Para obtener más información, consulte Acerca de metadatos de instancia para VPC.
Añadir a host dedicado Puede agregar la instancia del servidor virtual a un host dedicado, creando la instancia en un espacio de un solo inquilino. Para suministrar una instancia dedicada, debe tener un host dedicado disponible o crear uno.
Añadir al grupo de colocación Puede seleccionar un grupo de colocación para la instancia. Para habilitar los grupos de colocación, pulse el conmutador. A continuación, seleccione o cree un grupo de colocación para la instancia. Si añade un grupo de colocación, la instancia se coloca de acuerdo con la estrategia del grupo de colocación. Para obtener más información, consulte Acerca de los grupos de colocación.
Reinicio automático de error de host De forma predeterminada, este valor está habilitado. Para inhabilitar el reinicio automático de anomalía de host, pulse el conmutador. Puede obtener información adicional consultando Políticas de recuperación ante errores de host.

Creación de una plantilla de instancia con la CLI

La plantilla de instancia define los detalles de las instancias de servidor virtual que se crean a partir de la plantilla. Por ejemplo, especifique el perfilvCPU y memoria), la imagen, los volúmenes adjuntos y las interfaces de red para la plantilla de instancia. Puede crear una o varias plantillas de instancia en IBM Cloud VPC mediante la interfaz de línea de mandatos (CLI).

Para obtener más información sobre cómo crear una instancia de servidor virtual con una imagen personalizada compartida desde un catálogo privado, consulte Suministrar desde una imagen de catálogo privada.

Antes de empezar

Asegúrese de configurar el entorno de la CLI de IBM Cloud® y la IBM Cloud VPC.

Recopilación de información para crear una plantilla de instancia

¿Preparado para crear una plantilla de instancia? Antes de poder ejecutar el ibmcloud is instance-template-create comando, debe recopilar los detalles que necesita incluir para su plantilla de instancia y opciones de comando. Por ejemplo, necesita el ID o el nombre de la VPC y el nombre de la zona donde se creará la plantilla de instancia. También necesita el nombre del perfil de instancia que desea utilizar y el ID o nombre de la subred donde se creará la plantilla.

Recopile los siguientes detalles necesarios de la plantilla de instancia.

Detalles necesarios de la plantilla de instancia
Detalles de plantilla de instancia Mandato de lista Documentación de referencia de CLI de VPC
VPC ibmcloud is vpcs Listar todas las VPC
Zona ibmcloud is zones Listar todas las zonas de la región
Perfil ibmcloud is instances Listar todas las instancias de servidor virtual
Subred ibmcloud is subnets Listar todas las subredes
Imagen ibmcloud is image Listar todas las imágenes
Claves ibmcloud is keys Listar todas las claves
Grupos de colocación ibmcloud is placement-groups Listar todos los grupos de colocación

Utilice los siguientes comandos para determinar la información necesaria para crear una plantilla de instancia.

  1. Listar las regiones que están asociadas a su cuenta.

    ibmcloud is regions
    

    Vea el ejemplo siguiente.

    $ ibmcloud is regions
    Listing regions under account Test Account as user test.user@ibm.com...
    Name       Endpoint                              Status
    au-syd     https://au-syd.iaas.cloud.ibm.com     available
    br-sao     https://br-sao.iaas.cloud.ibm.com     available
    ca-tor     https://ca-tor.iaas.cloud.ibm.com     available
    eu-de      https://eu-de.iaas.cloud.ibm.com      available
    eu-es      https://eu-es.iaas.cloud.ibm.com      available
    eu-gb      https://eu-gb.iaas.cloud.ibm.com      available
    jp-osa     https://jp-osa.iaas.cloud.ibm.com     available
    jp-tok     https://jp-tok.iaas.cloud.ibm.com     available
    us-east    https://us-east.iaas.cloud.ibm.com    available
    us-south   https://us-south.iaas.cloud.ibm.com   available
    
  2. Conmute a la región de destino.

    ibmcloud target -r <region-name>
    
  3. Enumera las zonas asociadas a la región de destino.

    ibmcloud is zones
    

    En el ejemplo siguiente, el mandato se ejecuta en la región us-south y la salida muestra las zonas disponibles que están en la región.

    $ ibmcloud is zones
    Listing zones in target region us-south under account Test Account as user test.user@ibm.com...
    Name         Region     Status
    us-south-1   us-south   available
    us-south-2   us-south   available
    us-south-3   us-south   available
    
  4. Obtenga una lista de las IBM Cloud VPC asociadas a su cuenta.

    ibmcloud is vpcs
    

    Para este ejemplo, verá una respuesta similar a la siguiente salida.

    ID                                          Name                         Status      Classic access   Default network ACL                   Default security group                 Resource group
    r006-0d37163a-701d-4ad6-9ece-a3e34cf28935   cdl                          available   false            acl-test-1                            pedicure-budding-providing-excluded    Default
    r006-212def4b-93f0-4b9a-a331-94178b99d474   cli-test-1                   available   false            surprise-pacifier-cubicle-demystify   foyer-alongside-rug-zen                Default
    

    Si no tiene una disponible, puede crear una IBM Cloud VPC utilizando el mandato ibmcloud is vpc-create. Para obtener más información sobre cómo crear una IBM Cloud VPC, consulte Referencia de la CLI de VPC de IBM Cloud.

  5. Liste los perfiles disponibles para crear la plantilla de instancia.

    ibmcloud is instance-profiles
    

    La salida del comando es similar a la del siguiente ejemplo.

    Name               vCPU Manufacturer   Architecture   Family              vCPUs   Memory(GiB)   Bandwidth(Mbps)   Volume bandwidth(Mbps)   GPUs   Storage(GB)
    bx2-2x8            intel               amd64          balanced            2       8             4000              1000                     -      -
    bx2d-2x8           intel               amd64          balanced            2       8             4000              1000                     -      1x75
    bx2-4x16           intel               amd64          balanced            4       16            8000              2000                     -      -
    bx2d-4x16          intel               amd64          balanced            4       16            8000              2000                     -     1x150
    bx2-8x32           intel               amd64          balanced            8       32            16000             4000                     -      -
    bx2d-8x32          intel               amd64          balanced            8       32            16000             4000                     -     1x300
    bx2-16x64          intel               amd64          balanced            16      64            32000             8000                     -      -
    bx2d-16x64         intel               amd64          balanced            16      64            32000             8000                     -      1x600
    
  6. Obtenga una lista de las subredes asociadas a la IBM Cloud VPC.

    ibmcloud is subnets
    

    La salida del comando es similar a la del siguiente ejemplo.

    ID                                          Name                       Status      Subnet CIDR       Addresses   ACL                                   Public Gateway   VPC                     Zone         Resource group
    0717-cd4f74f1-bfae-423a-886b-9163256ec4a9   subnet-south-1             available   10.240.0.0/24     124/256     acl-test-1                            -                cdl                     us-south-1   Default
    0727-9447a2c3-efb8-44d2-a180-115531e0b0d3   cdl                        available   10.240.64.0/24    238/256     acl-test-1                            -                cdl                     us-south-2   Default
    

    Para obtener el mejor rendimiento de un grupo de instancias, asegúrese de utilizar un tamaño de subred de 32 o superior.

    Si no tiene una subred disponible, puede crear una con el mandato ibmcloud is subnet-create. Para obtener más información sobre la creación de una subred, consulte la referencia CLI deIBM Cloud VPC.

  7. Liste las imágenes disponibles para crear la plantilla de instancia.

    ibmcloud is images
    

    La salida del comando es similar a la del siguiente ejemplo.

    ID                                          Name                                                Status       Arch    OS name                              OS version                                               File size(GB)   Visibility   Owner type   Encryption   Resource group
    r006-3fa3bea4-7f9c-4eeb-8248-ab1f6e03185b   ibm-centos-7-9-minimal-amd64-9                      available    amd64   centos-7-amd64                       7.x - Minimal Install                                    1               public       provider     none         Default
    r006-c55167af-ea8c-4c27-871f-ccc9c868753e   ibm-centos-stream-8-amd64-1                         available    amd64   centos-stream-8-amd64                8                                                        2               public       provider     none         Default
    
  8. Obtenga una lista de las claves SSH disponibles que puede asociar a la instancia.

    ibmcloud is keys
    

    La salida del comando es similar a la del siguiente ejemplo.

    ID                                          Name     Type   Length   FingerPrint          Resource group
    r006-89ec781c-9630-4f76-b9c4-a7d204828d61   my-key   rsa    4096     gtnf+pdX2PYI9Ofq..   Default
    

    Si no tienes una clave SSH disponible, puedes crear una clave SSH utilizando el comando ibmcloud is key-create.

    RSA y ED25519 son los dos tipos de claves SSH que puedes usar. Sin embargo, no puedes usar el ED25519 Tipo de clave SSH con Windows o VMware imágenes. Solo puede utilizar claves SSH RSA para estas imágenes. Para obtener más información, consulte Iniciación a las claves SSH.

  9. Genere una lista de todos los grupos de colocación disponibles que puede asociar con la instancia.

    ibmcloud is placement-groups
    

    La salida del comando es similar a la del siguiente ejemplo.

    Listing placement groups for generation 2 compute in all resource groups and region us-east under account vpcdemo as user    yaohaif@cn.ibm.com...
    ID                                            Name                             State    Strategy       Resource Group
    c5f1f366-b92a-4080-991a-aa5c2e33d96b          placement-group-region-us-east   stable   power_spread       5018a8564e8120570150b0764d39ebcc
    placement-group-cccc-cccc-cccc-cccccccccccc   vsi-placementGroup1              stable   host_spread    5018a8564e8120570150b0764d39ebcc
    placement-group-bbbb-bbbb-bbbb-bbbbbbbbbbbb   vsi-placementGroup2              stable   power_spread     5018a8564e8120570150b0764d39ebcc
    placement-group-aaaa-aaaa-aaaa-aaaaaaaaaaaa   vsi-placementGroup3              stable   power_spread   1d18e482b282409e80eff354c919c6a2
    

Creación de una plantilla de instancia desde la CLI

Una vez que conozca estos valores, utilícelos para ejecutar el mandato instance-template-create. Además de la información que ha recopilado, debe especificar un nombre para la instancia.

ibmcloud is instance-template-create INSTANCE_TEMPLATE_NAME VPC ZONE_NAME PROFILE_NAME SUBNET --image IMAGE

Por ejemplo, si crea una plantilla de instancia denominada mi-plantilla-de-instancia en us-south-3 y utiliza el perfil bx2-2x8, su comando instance-template-create sería similar al siguiente ejemplo.

ibmcloud is instance-template-create my-instance-template 0738-xxx1xx23-4xx5-6789-12x3-456xx7xx123x us-south-3 bx2-2x8 0076-2249dabc-8c71-4a54-bxy7-953701ca3999 --image r008-54e9238a-feaa-4f90-9742-7424cb2b9ff1 --placement-group r006-953db18c-068c-4a11-9b07-645684b444b2

Donde

  • INSTANCE_TEMPLATE_NAME es my-instance-template
  • VPC es 0738-xxx1xx23-4xx5-6789-12x3-456xx7xx123x
  • ZONE_NAME es us-south-3
  • PROFILE_NAME es bx2-2x8
  • SUBNET_ID es 0076-2249dabc-8c71-4a54-bxy7-953701ca3999
  • IMAGE es r008-54e9238a-feaa-4f90-9742-7424cb2b9ff1
  • PLACEMENT_GROUP_ID is _r134-953db18c-068c-4a11-9b07-645684b444b2

Para este ejemplo, verá una respuesta similar a la siguiente salida.

La siguiente respuesta varía en función de los valores que utilices.

ID                          0727-0fdac0fb-ad59-4d7b-9f03-604ddc1db002
Name                        my-instance-template
CRN                         crn:v1:bluemix:public:is:us-south-2:a/7f75c7b025e54bc5635f754b2f888665::instance-template:0727-0fdac0fb-ad59-4d7b-9f03-604ddc1db002
Resource group              Default
Image                       r006-3fa3bea4-7f9c-4eeb-8248-ab1f6e03185b
VPC                         r006-212def4b-93f0-4b9a-a331-94178b99d474
Zone                        us-south-2
Profile                     bx2-2x8
Boot volume                 Name   Capacity   Profile           IOPS   Attachment name                      Auto delete   Tags
                            -      100        general-purpose   0      illude-education-spotted-reanalyze   true          -

Primary Network Interface   Name      Subnet ID                                   Security Groups                             Allow source IP spoofing   Reserved IP Address   Reserved IP ID   Reserved IP Name   Reserved IP Auto Delete
                            primary   0727-944126da-e46d-4104-8ba4-ab5a5832864b   r006-2295f00e-8af0-4736-be11-94677955b6b2   false                      -                     -                -                  -

Placement                   ID
                            r006-9994e3ab-18ae-49a7-95cf-25c77e09fa76

Created                     2023-03-29T22:02:59+05:30

Para obtener más ejemplos del mandato ibmcloud is instance-template-create, consulte la Referencia de CLI de VPC.

Cuando crea una plantilla de instancia, se realizan pasos de validación para asegurarse de que puede utilizar su plantilla para aprovisionar una instancia de servidor virtual. ¿Necesita más ayuda? Siempre puede ejecutar ibmcloud is help instance-template-create para visualizar ayuda para crear una plantilla de instancia.

Creación de una plantilla de instancia con la API

La plantilla de instancia define los detalles de las instancias de servidor virtual que se crean a partir de la plantilla. Por ejemplo, especifique el perfilvCPU y memoria), la imagen, los volúmenes adjuntos y las interfaces de red para la plantilla de instancia. Puede crear una o varias plantillas de instancia en su IBM Cloud VPC mediante la interfaz de programación de aplicaciones (API).

Para obtener más información sobre cómo crear una instancia de servidor virtual con una imagen personalizada compartida desde un catálogo privado, consulte Suministrar desde una imagen de catálogo privada.

Antes de empezar

Defina variables correspondientes a señal de IAM, punto final de API y versión de API. Para obtener instrucciones, consulte Configuración del entorno de API y de CLI.

Asegúrese de que dispone del acceso necesario. Para llamar a estos métodos, debe tener asignados uno o más roles de acceso de IAM que incluyan las acciones siguientes, en función de las condiciones listadas. Puede comprobar su acceso yendo a la página Usuarios del panel de control de Cloud Identity and Access Management.

Una buena forma de obtener más información sobre la API es pulsar Obtener llamada de API de ejemplo en las páginas de suministro de la consola de IBM Cloud. Allí encontrará la secuencia correcta de solicitudes de API y podrá comprender mejor las acciones y sus dependencias.

Recopilación de información para crear una plantilla de instancia

¿Preparado para crear una plantilla de instancia? Antes de que puedas hacer el POST solicitud con el /instance/templates método, necesita conocer los detalles que desea incluir en su plantilla de instancia. Por ejemplo, necesita el ID o el nombre de la VPC y el nombre de la zona donde se creará la plantilla de instancia. También necesita el nombre del perfil de instancia que desea utilizar y el ID o nombre de la subred donde se creará la plantilla.

Recopile los siguientes detalles de plantilla de instancia necesarios realizando las siguientes llamadas de API:

Detalles necesarios de la plantilla de instancia de API
Detalles de la instancia Métodos de listado Documentación de especificación de API
VPC GET /vpcs Listar todas las VPC
Zona GET /regions/<region>/zones Listar todas las zonas de una región
Perfil GET /instance/profiles Listar todos los perfiles de instancia
Subred GET /subnets Listar todas las subredes
Imagen GET /images Listar todas las imágenes
Clave GET /keys Listar todas las claves
Grupos de colocación GET /placement_groups Listar todos los grupos de colocación

Utilice los mandatos siguientes para determinar la información necesaria para crear una nueva plantilla de instancia.

  1. Obtenga una lista de las IBM Cloud VPC asociadas a su cuenta.

    curl -X GET "$vpc_api_endpoint/v1/vpcs?version=2023-07-13&generation=2" -H "Authorization: Bearer $iam_token"
    

    Si no dispone de uno, puede crear un IBM Cloud VPC utilizando el método POST /vpcs. Para obtener más información sobre la creación de una IBM Cloud VPC, consulte Documentos de API deIBM Cloud-Crear una VPC.

  2. Obtenga una lista de las regiones asociadas a su cuenta.

    curl -X GET "$vpc_api_endpoint/v1/regions?version=2023-07-13&generation=2" -H "Authorization: Bearer $iam_token"
    
  3. Listar las zonas que están asociadas a la región.

    curl -X GET "$vpc_api_endpoint/v1/regions/$region_name/zones?version=2023-07-13&generation=2" -H "Authorization: Bearer $iam_token"
    
  4. Liste los perfiles disponibles para crear la plantilla de instancia.

    curl -X GET "$vpc_api_endpoint/v1/instance/profiles?version=2023-07-13&generation=2" -H "Authorization: Bearer $iam_token"
    
  5. Obtenga una lista de las subredes asociadas a la IBM Cloud VPC.

    curl -X GET "$vpc_api_endpoint/v1/subnets?version=2023-07-13&generation=2" -H "Authorization: Bearer $iam_token"
    

    Para obtener el mejor rendimiento de un grupo de instancias, asegúrese de utilizar un tamaño de subred de 32 o superior.

    Si no dispone de una subred, puede crear una utilizando el método POST /subnets. Para obtener más información sobre cómo crear una IBM Cloud VPC, consulte Documentos de API deIBM Cloud-Crear una subred.

  6. Liste las imágenes disponibles para crear la plantilla de instancia.

    curl -X GET "$vpc_api_endpoint/v1/images?version=2023-07-13&generation=2" -H "Authorization: Bearer $iam_token"
    
  7. Obtenga una lista de las claves SSH disponibles que puede asociar a la instancia.

    curl -X GET "$vpc_api_endpoint/v1/keys?version=2023-07-13&generation=2" -H "Authorization: Bearer $iam_token"
    

    Si no tienes una clave SSH disponible, puedes crear una clave SSH utilizando el comando ibmcloud is key-create.

    Si no tiene una clave SSH disponible, puede crear una utilizando el método POST /keys. Para obtener más información sobre cómo crear una IBM Cloud VPC, consulte Documentos de API deIBM Cloud-Crear una clave.

    RSA y ED25519 son los dos tipos de claves SSH que puedes usar. Sin embargo, no puedes usar el ED25519 Tipo de clave SSH con Windows o VMware imágenes. Solo puede utilizar claves SSH RSA para estas imágenes. Para obtener más información, consulte Iniciación a las claves SSH.

  8. Genere una lista de todos los grupos de colocación disponibles que puede asociar con la instancia.

    curl -X GET "$vpc_api_endpoint/v1/placement_groups?version=2023-07-13&generation=2" -H "Authorization: Bearer $iam_token"
    

Creación de la plantilla de instancia con la API

Después de conocer estos valores, úselos para hacer una POST solicitud con el /instance/templates método. Además de la información que ha recopilado, debe especificar un nombre para la instancia.

Por ejemplo, si crea una plantilla de instancia llamada mi-plantilla-de-instancia en us-south-1 y utiliza el perfil bx2-2x8, su comando POST /instance/templates sería similar al siguiente ejemplo.

curl -X POST "$vpc_api_endpoint/v1/instance/templates?version=2023-07-13&generation=2" -H "Authorization: Bearer $iam_token" -d '{
      "primary_network_interface": {
        "subnet": {
          "id": "0d933c75-492a-4756-9832-1200585dfa79"
        }
      },
      "name": "my-instance-template",
      "zone": {
        "name": "us-south-1"
      },
      "vpc": {
        "id": "dc201ab2-8536-4904-86a8-084d84582133"
      },
      "profile": {
        "name": "bx2-2x8"
      },
      "image": {
        "id": "3f9a2d96-830e-4100-9b4c-663225a3f872"
      },
      "placement_group": {
          "id": "363f6d70-0000-0001-0000-00000013b96c"
      },
      "keys": [
        {
          "id": "363f6d70-0000-0001-0000-00000013b96c"
         }
      ]
    }'

Donde

  • instance_template_name es my-instance-template
  • vpc es dc201ab2-8536-4904-86a8-084d84582133
  • zone_name es us-south-1
  • profile_name es bx2-2x8
  • subnet_id es 0d933c75-492a-4756-9832-1200585dfa79
  • image es 3f9a2d96-830e-4100-9b4c-663225a3f872
  • keys es 363f6d70-0000-0001-0000-00000013b96c
  • placement_group es 363f6d70-0000-0001-0000-00000013b96c

Para obtener más ejemplos del método /instance/templates, consulte la documentación de la API Crear una plantilla de instancia.

Creación de una plantilla de instancia con Terraform

Puede crear una o más plantillas de instancia en IBM Cloud VPC utilizando Terraform.

Para obtener más información sobre cómo crear una instancia de servidor virtual con una imagen personalizada compartida desde un catálogo privado, consulte Creación de una instancia utilizando Terraform.

Antes de empezar

Asegúrese de haber configurado Terraform for VPC.

Recopilación de información para crear una plantilla de instancia

¿Preparado para crear una plantilla de instancia? Antes de incluir el ibm_is_instance_template recurso en su configuración, necesita conocer los detalles que desea incluir en su plantilla de instancia. Por ejemplo, necesita el ID o el nombre de la VPC y el nombre de la zona donde se creará la plantilla de instancia. También necesita el nombre del perfil de instancia que desea utilizar y el ID o nombre de la subred donde se creará la plantilla.

Reúna los siguientes detalles necesarios de la plantilla de instancia de Terraform.

Detalles necesarios de la plantilla de instancia de Terraform
Detalles de plantilla de instancia Bloque de listado Documentación de referencia de la fuente de datos de VPC Terraform
Perfil de instancia ibm_is_instance_profiles ibm_is_instance_profiles
Imagen ibm_is_images ibm_is_images
VPC ibm_is_vpc ibm_is_vpc
Subred ibm_is_subnets ibm_is_subnets
Zona ibm_is_zone ibm_is_zone
Claves ibm_is_ssh_keys ibm_is_ssh_keys
Grupos de colocación ibm_is_placement_groups ibm_is_placement_groups

Utilice la siguiente guía para determinar la información necesaria para crear una nueva plantilla de instancia.

Recopile la información siguiente utilizando el bloque DataSource.

  1. Recopilar detalles de perfil de instancia. Ejecute el bloque siguiente para el perfil que seleccione. Consulte Perfiles de instancia dex86 para obtener una lista de los perfiles disponibles. Para obtener más información, consulte la documentación de Terraform sobre ibm_is_instance_profiles. Utilice un perfil de instancia haciendo referencia al origen de datos del perfil de instancia. Para obtener más información, consulte la documentación de Terraform sobre ibm_is_instance_profile.

    data "ibm_is_instance_profile" "example_profile" {
       name = "bx2-2x8"
    }
    
  2. Obtenga una lista de las imágenes disponibles para crear la instancia. Puede utilizar una imagen en stock, una imagen personalizada de su cuenta o una imagen que se ha compartido con su cuenta desde un catálogo privado. Para obtener más información, consulte la documentación de Terraform sobre ibm_is_image. Si planea utilizar una imagen que se compartió desde un catálogo privado, consulte la documentación de Terraform en versión_ibm_cm o ibm_cm_offering_instance.

    • Seleccione una imagen en stock o una imagen personalizada de su cuenta para la instancia.
    data "ibm_is_image" "example_image" {
       name = "ibm-centos-7-6-minimal-amd64-2"
    }
    
    • Seleccione una imagen que se comparta desde un catálogo privado para la instancia. Para obtener más información, consulte la documentación de Terraform sobre ibm_is_images.
    data "ibm_is_images" "example_images" {
       catalog_managed = true
    }
    

    Si selecciona una imagen de catálogo que pertenece a una cuenta diferente, tiene más consideraciones y limitaciones que revisar. Consulte Utilización de referencias de imagen entre cuentas en un catálogo privado en Terraform.

  3. Cree un recurso de VPC o utilice una VPC existente haciendo referencia al origen de datos de VPC. Para obtener más información, consulte la documentación de Terraform sobre el origen de datos ibm_is_vpc o el recurso ibm_is_vpc.

    data "ibm_is_vpc" "example_vpc" {
       name = "example-vpc"
    }
    
  4. Cree un recurso de subred o utilice una subred existente haciendo referencia al origen de datos de subred. Para obtener más información, consulte la documentación de Terraform sobre el origen de datos ibm_is_subnet o el recurso ibm_is_subnet.

    data "ibm_is_subnet" "example_subnet" {
       name            = "example-subnet"
       vpc             = ibm_is_vpc.example_vpc.id
       zone            = "us-south-1"
       ipv4_cidr_block = "10.240.0.0/24"
    }
    
  5. Utilice una clave ssh existente consultando la fuente de datos de la clave ssh ibm_is_ssh_key. Si no tiene ninguna clave SSH disponible, utilice el recurso ibm_is_ssh_key para crear una.

    RSA y ED25519 son los dos tipos de claves SSH que puedes usar. Sin embargo, no puedes usar el ED25519 Tipo de clave SSH con Windows o VMware imágenes. Solo puede utilizar claves SSH RSA para estas imágenes. Para obtener más información, consulte Iniciación a las claves SSH.

    resource "ibm_is_ssh_key" "example_sshkey" {
       name       = "example-sshkey"
       public_key = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCKVmnMOlHKcZK8tpt3MP1lqOLAcqcJzhsvJcjscgVERRN7/9484SOBJ3HSKxxNG5JN8owAjy5f9yYwcUg+JaUVuytn5Pv3aeYROHGGg+5G346xaq3DAwX6Y5ykr2fvjObgncQBnuU5KHWCECO/4h8uWuwh/kfniXPVjFToc+gnkqA+3RKpAecZhFXwfalQ9mMuYGFxn+fwn8cYEApsJbsEmb0iJwPiZ5hjFC8wREuiTlhPHDgkBLOiycd20op2nXzDbHfCHInquEe/gYxEitALONxm0swBOwJZwlTDOB7C6y2dzlrtxr1L59m7pCkWI4EtTRLvleehBoj3u7jB4usR"
    }
    

Ejemplo de creación de una plantilla de instancia utilizando Terraform

Después de conocer estos valores, úselos para escribir el ibm_is_instance_template bloque de recursos. Además de la información que ha recopilado, debe especificar un nombre para la instancia.


resource "ibm_is_instance_template" "my-template" {
  name    = "my-template"
  image   = ibm_is_image.example_image.id
  profile = "bx2-8x32"

  primary_network_interface {
    subnet            = ibm_is_subnet.example_subnet.id
  }

  vpc                  = ibm_is_vpc.example_vpc.id
  zone                 = "us-south-2"
  keys                 = [ibm_is_ssh_key.example_sshkey.id]

}

Para obtener más ejemplos de ibm_is_instance_template, consulte la referencia de Terraform ibm_is_instance_template.

Próximos pasos

Después de crear una plantilla de instancia, puede aprovisionar una única instancia de servidor virtual, o puede aprovisionar varias instancias al mismo tiempo como parte de un grupo de instancias. Si lo desea, puede establecer políticas de escalado automático para el grupo de instancias para añadir o eliminar de forma dinámica instancias de servidor virtual del grupo. Para obtener más información, consulte los siguientes temas: