Creación de una plantilla de instancia
Puedes crear una plantilla de instancia para definir los detalles de la misma con el fin de aprovisionar 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.
- En la IBM Cloud console, haga clic en Icono del menú de navegación
>Infraestructura
>Compute > Plantillas de instancia.
- Haz clic en « Nueva plantilla de instancia » e introduce la información que figura en la Tabla 1.
- Pulse Crear plantilla de instancia cuando la información esté completa.
Al crear una plantilla de instancia, se llevan a cabo una serie de pasos de validación para garantizar que puedas utilizar dicha plantilla para aprovisionar una instancia de servidor virtual.
| 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). Selecciona la zona geográfica, la región y la zona en las que deseas que se cree tu 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 en la que está aprovisionando una instancia lo admite, puede seleccionar una de las siguientes:
Una vez seleccionada la imagen, haga clic en Guardar.
|
| Perfil | Haga clic en Cambiar perfil para seleccionar entre todas las combinaciones disponibles de vCPU y RAM. Las familias de perfiles son: Equilibrado, Computación, Memoria, Memoria ultraalta, Memoria muy alta, Optimizado para
almacenamiento, GPU, Flex, Computación confidencial y Alta frecuencia.
Comprueba que el perfil que utilizas esté disponible en la zona en la que tienes previsto crear la instancia. Para obtener más información, consulte Perfiles. Es posible que algunos perfiles no estén disponibles porque el número de interfaces de red del servidor virtual supera los límites del perfil. Puede eliminar interfaces de red para seleccionar entre más perfiles. Para obtener más información, consulta Cambiar el tamaño de un servidor virtual. Es posible que algunos perfiles no estén disponibles porque la imagen seleccionada contiene una expresión de uso permitido que no es compatible con el perfil. En estos casos, seleccione una imagen con una expresión de uso permitido compatible con el perfil deseado. Para obtener más información, consulte Adición de expresiones de uso permitido a imágenes personalizadas. |
| Hebras por núcleo | El número de subprocesos por núcleo te ofrece la flexibilidad necesaria para optimizar tu carga de trabajo. Aunque el número de subprocesos por núcleo se muestra para todos los perfiles, solo se puede modificar en la familia de perfiles de alta frecuencia. En el caso de los perfiles de alta frecuencia, el valor por defecto es 2, pero se puede ajustar a 1. |
| 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 tienen un límite de 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 se puede utilizar con imágenes de Windows o VMware. Para obtener más información, consulta Introducción a las claves SSH. |
| Volumen de arranque | El tamaño de volumen de arranque predeterminado para todos los perfiles es de 100 GB. Puedes especificar una mayor capacidad de volumen de arranque, hasta 250 GB cuando utilices perfiles de volumen de primera generación, y hasta 32.000
GB cuando utilices el perfil sdp, en función de lo que necesite 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 |
| 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 | Desactivada por defecto, permite que la instancia creada a partir de esta plantilla recopile metadatos sobre sí misma. Haz clic en el botón para activar el servicio de metadatos. Para obtener más información, consulte Acerca de los metadatos 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 ubicació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. |
| Asignación dinámica de ancho de banda por volumen | Haga clic en el conmutador para activar la asignación de ancho de banda de volumen agrupado para los volúmenes de datos adjuntos. Esta función es compatible con determinados perfiles de cálculo. |
| 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, especifica el perfil ( vCPU y memoria), la imagen, los volúmenes asociados 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 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 |
Compruebe que el perfil que desea utilizar está disponible en la zona en la que tiene previsto crear la instancia.
Utilice los siguientes comandos para determinar la información necesaria para crear una plantilla de instancia.
-
Listar las regiones que están asociadas a su cuenta.
ibmcloud is regionsVea 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 -
Conmute a la región de destino.
ibmcloud target -r <region-name> -
Enumera las zonas asociadas a la región de destino.
ibmcloud is zonesEn el siguiente ejemplo, el comando se ejecuta en la
us-southregión y el resultado muestra las zonas disponibles que se encuentran 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 -
Obtenga una lista de las IBM Cloud VPC asociadas a su cuenta.
ibmcloud is vpcsPara 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 DefaultSi 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. -
Liste los perfiles disponibles para crear la plantilla de instancia.
ibmcloud is instance-profilesEl resultado comando es similar al 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 -
Obtenga una lista de las subredes asociadas a la IBM Cloud VPC.
ibmcloud is subnetsEl resultado comando es similar al 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 DefaultPara obtener el mejor rendimiento de un grupo de instancias, asegúrate de utilizar una subred de tamaño 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 cómo crear una subred, consulta la referencia de la CLI de IBM Cloud VPC. -
Liste las imágenes disponibles para crear la plantilla de instancia.
ibmcloud is imagesEl resultado comando es similar al del siguiente ejemplo.
ID Name Status Arch OS name OS version File size(GB) Visibility Encryption Resource group Catalog Offering User Data Format Remote Account ID r006-3fa3bea4-7f9c-4eeb-8248-ab1f6e03185b my-test-image available amd64 centos-7-amd64 7.x - Minimal Install 1 private none Default - cloud_init r006-c55167af-ea8c-4c27-871f-ccc9c868753e ibm-centos-stream-8-amd64-1 available amd64 centos-stream-8-amd64 8 2 public none Default - cloud_init 811f8abfbd32425597dc7ba40da98fa6 -
Obtenga una lista de las claves SSH disponibles que puede asociar a la instancia.
ibmcloud is keysEl resultado comando es similar al del siguiente ejemplo.
ID Name Type Length FingerPrint Resource group r006-89ec781c-9630-4f76-b9c4-a7d204828d61 my-key rsa 4096 gtnf+pdX2PYI9Ofq.. DefaultSi no dispones de una clave SSH, puedes crear una utilizando el comando « ibmcloud is key-create ».
RSA y ED25519 son los dos tipos de claves SSH que puede utilizar. Sin embargo, no se puede utilizar el tipo de ED25519 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.
-
Genere una lista de todos los grupos de colocación disponibles que puede asociar con la instancia.
ibmcloud is placement-groupsEl resultado comando es similar al 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. También debe especificar un nombre para la instancia.
ibmcloud is instance-template-create INSTANCE_TEMPLATE_NAME VPC ZONE_NAME PROFILE_NAME SUBNET --image IMAGE
El siguiente comando ejemplo crea una plantilla de instancia llamada my-instance-template en la VPC especificada por el ID r006-6e8fb140-5668-45b8-b98a-d5cb0e0bf39b. La plantilla se crea en la us-south-3 ZONA y utiliza el bx2-2x8 PERFIL. La SUBRED se define por su ID 0726-298acd6c-e71e-4204-a04f-fe4a4dd89805. La IMAGEN se especifica mediante su ID r006-534ef2ac-6158-45b3-9657-57629fa85305.
ibmcloud is instance-template-create my-instance-template r006-6e8fb140-5668-45b8-b98a-d5cb0e0bf39b us-south-3 bx2-2x8 0076-2249dabc-8c71-4a54-bxy7-953701ca3999 --image r006-534ef2ac-6158-45b3-9657-57629fa85305 --placement-group r006-953db18c-068c-4a11-9b07-645684b444b2
Creating instance template my-instance-template under account Test Account as user test-user@ibm.com...
ID 0727-0fdac0fb-ad59-4d7b-9f03-604ddc1db002
Name my-instance-template
CRN crn:v1:bluemix:public:is:us-south-2:a/a1234567::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
El siguiente ejemplo crea una plantilla de instancia que se denomina my-gen3-instance-template en la VPC especificada por el ID r006-6e8fb140-5668-45b8-b98a-d5cb0e0bf39b. La plantilla se crea en la ZONA us-south-3_ y utiliza
el cx3d-8x20 PERFIL. La SUBRED se define por su ID 00726-298acd6c-e71e-4204-a04f-fe4a4dd89805. La IMAGEN se especifica mediante su ID r006-534ef2ac-6158-45b3-9657-57629fa85305. Cuando el perfil de computación seleccionado admite la asignación de ancho de banda agrupado para volúmenes de datos, también puede incluir la --storage_qos_modes opción.
ibmcloud is instance-template-create my-gen3-instance-template r006-6e8fb140-5668-45b8-b98a-d5cb0e0bf39b us-south-3 cx3d-8x20 00726-298acd6c-e71e-4204-a04f-fe4a4dd89805 --image r006-534ef2ac-6158-45b3-9657-57629fa85305 --storage_qos_modes pooled
Para obtener más ejemplos del mandato ibmcloud is instance-template-create, consulte la Referencia de CLI de VPC.
Al crear una plantilla de instancia, se llevan a cabo una serie de pasos de validación para garantizar que puedas utilizar dicha plantilla para aprovisionar una instancia de servidor virtual. ¿Necesita más ayuda? Puede ejecutar el ibmcloud is help instance-template-create comando para mostrar la ayuda.
Creación de una plantilla de instancia mediante 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, especifica el perfil ( vCPU y memoria), la imagen, los volúmenes asociados y las interfaces de red para la plantilla de instancia. Puedes crear una o varias plantillas de instancia en tu 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úrate de que dispones de los permisos necesarios. 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 en la que desea crear la instancia. También necesita el nombre del perfil de instancia que desea utilizar y el ID o nombre de la subred donde desea crear la plantilla. Recopile
los siguientes detalles de plantilla de instancia necesarios realizando las siguientes llamadas 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 |
Compruebe que el perfil que desea utilizar está disponible en la zona en la que tiene previsto crear la instancia.
Utilice los siguientes comandos para determinar la información necesaria para crear una plantilla de instancia.
-
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 tienes ninguno disponible, puedes crear un objeto
IBM Cloud VPCutilizando el métodoPOST /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. -
Listar las regiones que están asociadas a su cuenta.
curl -X GET "$vpc_api_endpoint/v1/regions?version=2023-07-13&generation=2" -H "Authorization: Bearer $iam_token" -
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" -
Enumera los perfiles que están disponibles para crear tu plantilla de instancia.
curl -X GET "$vpc_api_endpoint/v1/instance/profiles?version=2023-07-13&generation=2" -H "Authorization: Bearer $iam_token" -
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úrate de utilizar una subred de tamaño 32 o superior.
Si no dispones de una subred, puedes 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. -
Enumere las imágenes que están disponibles para crear su plantilla de instancia.
curl -X GET "$vpc_api_endpoint/v1/images?version=2023-07-13&generation=2" -H "Authorization: Bearer $iam_token" -
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 dispones de una clave SSH, puedes crear una 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 puede utilizar. Sin embargo, no se puede utilizar el tipo de ED25519 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.
-
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. También debe especificar un nombre para la instancia.
El siguiente ejemplo crea una plantilla de instancia denominada mi-plantilla-de-instancia en us-south-1 y utiliza el perfil bx2-2x8 perfil.
curl -X POST "$vpc_api_endpoint/v1/instance/templates?version=2023-07-13&generation=2"
-H "Authorization: Bearer $iam_token"
-d '{
"zone": {"name": "us-south-1"},
"resource_group": {"id": "db8e8d865a83e0aae03f25a492c5b39e"},
"name": "my-instance-template",
"vpc": {"id": "r006-6e8fb140-5668-45b8-b98a-d5cb0e0bf39b"},
"user_data": "",
"profile": {"name": "bx2-2x8"},
"keys": [{"id": "r006-68f8333a-1169-42da-ba01-75268bac8362"}],
"volume_attachments": [],
"boot_volume_attachment": {
"volume": {
"name": "my-instance-template-boot-1720804230000",
"capacity": 100,
"profile": {"name": "general-purpose"}},
"delete_volume_on_instance_delete": true
},
"metadata_service": {
"enabled": true,
"protocol": "https",
"response_hop_limit": 1},
"primary_network_attachment": {
"name": "eth0",
"virtual_network_interface": {
"allow_ip_spoofing": false,
"auto_delete": true,
"enable_infrastructure_nat": true,
"primary_ip": {"auto_delete": true,
"subnet": {"id": "0726-298acd6c-e71e-4204-a04f-fe4a4dd89805"},
"security_groups": [{"id": "r006-ccdd1f58-f0f2-4ea0-8774-a24bbe61b5d9"}],
"protocol_state_filtering_mode": "auto"}
},
"network_attachments": [],
"image": {"id": "r006-534ef2ac-6158-45b3-9657-57629fa85305"}}`
El siguiente ejemplo crea una plantilla de instancia denominada my-gen3-instance-template en us-south-3 y utiliza el perfil cx3d-8x20 perfil. Cuando el perfil informático seleccionado admite la asignación de ancho de banda agrupada para volúmenes de datos, también se puede incluir la propiedad --storage_qos_modes.
curl -X POST "$vpc_api_endpoint/v1/instance/templates?version=2024-07-12&generation=2"
-H "Authorization: Bearer $iam_token"
-H "Content-Type: application/json" \
-H "accept: application/json" \
-d '{
"zone": {"name": "us-south-3"},
"resource_group": {"id": "db8e8d865a83e0aae03f25a492c5b39e"},
"name": "my-gen3-instance-template",
"vpc": {"id": "r006-6e8fb140-5668-45b8-b98a-d5cb0e0bf39b"},
"user_data": "",
"profile": {"name": "cx3d-8x20"},
"keys": [{"id": "r006-68f8333a-1169-42da-ba01-75268bac8362"},
"volume_attachments": [
{"volume": {
"name": "my-data-volume-1",
"capacity": 3000,
"profile": {"name": "5iops-tier"}},
"delete_volume_on_instance_delete": false},
{"volume": {
"name": "my-data-volume-2",
"capacity": 3000,
"profile": {"name": "5iops-tier"}},
"delete_volume_on_instance_delete": false},
{"volume": {
"name": "my-data-volume-3",
"capacity": 3000,
"profile": {"name": "5iops-tier"}},
"delete_volume_on_instance_delete": false}
],
"boot_volume_attachment": {
"volume": {
"name": "my-gen3-instance-template-boot-1720803726000",
"capacity": 100,
"profile": {"name": "general-purpose"}
},
"delete_volume_on_instance_delete": true
},
"metadata_service": {
"enabled": false,
"response_hop_limit": 1},
"primary_network_attachment": {
"name": "eth0",
"virtual_network_interface": {
"allow_ip_spoofing": false,
"auto_delete": true,
"enable_infrastructure_nat": true,
"primary_ip": {"auto_delete": true},
"subnet": {"id": "0726-298acd6c-e71e-4204-a04f-fe4a4dd89805"},
"security_groups": [
{"id": "r006-ccdd1f58-f0f2-4ea0-8774-a24bbe61b5d9"}],
"protocol_state_filtering_mode": "auto"}
},
"network_attachments": [],
"image": {"id": "r006-534ef2ac-6158-45b3-9657-57629fa85305"},
"enable_secure_boot": false
"storage_qos_modes": "pooled"
}'
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 en la que desea 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 desea crear la plantilla.
Recopila los siguientes datos necesarios sobre la plantilla de la 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_es_perfiles_de_instancia |
| Imagen | ibm_is_images |
ibm_is_imágenes |
| VPC | ibm_is_vpc |
ibm_es_vpc |
| Subred | ibm_is_subnets |
ibm_es_subredes |
| Zona | ibm_is_zone |
ibm_es_zona |
| Claves | ibm_is_ssh_keys |
ibm_es_claves_ssh |
| Grupos de colocación | ibm_is_placement_groups |
ibm_es_grupos_de_colocación |
Utilice la siguiente guía para determinar la información necesaria para crear una plantilla de instancia.
Recopile la información siguiente utilizando el bloque DataSource.
-
Recopilar detalles de perfil de instancia. Ejecute el siguiente bloque para el perfil que ha seleccionado. Consulte Perfiles de instancia dex86 para obtener una lista de los perfiles disponibles. Para obtener más información, consulta la documentación de Terraform sobre « ibm_is_instance_profiles ». Para utilizar un perfil de instancia, consulte la fuente de datos del perfil de instancia. Para obtener más información, consulta la documentación de Terraform sobre
[ibm_is_instance_profile](https://registry.terraform.io/providers/IBM-Cloud/ibm/latest/docs/data-sources/is_instance_profile).data "ibm_is_instance_profile" "example_profile" { name = "bx2-2x8" } -
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, consulta 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, consulta 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.
-
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" } -
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" } -
Para utilizar una clave ssh existente, consulte la fuente de datos de claves 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 puede utilizar. Sin embargo, no se puede utilizar el tipo de ED25519 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" }
Creación de la plantilla de instancia con Terraform
Después de conocer estos valores, úselos para escribir el ibm_is_instance_template bloque de recursos. También debe especificar un nombre para la instancia.
El siguiente ejemplo crea una plantilla de instancia denominada mi-plantilla-de-instancia en la región us-south-1 y utiliza el perfil bx2-8x32 perfil.
resource "ibm_is_instance_template" "my-instance-template" {
name = "my-instance-template"
image = r006-3fa3bea4-7f9c-4eeb-8248-ab1f6e03185b
profile = "bx2-8x32"
primary_network_interface {
subnet = 0727-944126da-e46d-4104-8ba4-ab5a5832864b
allow_ip_spoofing = true
}
placement_group = r006-9994e3ab-18ae-49a7-95cf-25c77e
vpc = r006-212def4b-93f0-4b9a-a331-94178b99d474
zone = "us-south-1"
keys = [363f6d70-0000-0001-0000-00000013b96c]
boot_volume {
name = "example-boot-volume"
delete_volume_on_instance_delete = true
}
}
El siguiente ejemplo crea una plantilla de instancia denominada my-gen3-instance-template en us-south-3 y utiliza el perfil cx3d-8x20 perfil. Cuando el perfil informático seleccionado admite la asignación de ancho de banda agrupada para volúmenes de datos, también se puede incluir la opción storage_qos_modes.
resource "ibm_is_instance_template" "example" {
name = "my-gen3-instance-template"
image = r006-534ef2ac-6158-45b3-9657-57629fa85305
profile = "cx3d-8x20"
primary_network_interface {
subnet = 0d933c75-492a-4756-9832-1200585dfa79
allow_ip_spoofing = true
}
vpc = r006-6e8fb140-5668-45b8-b98a-d5cb0e0bf39b
zone = "us-south-3"
keys = [363f6d70-0000-0001-0000-00000013b96c]
storage_qos_modes = [pooled]
boot_volume {
name = "example-boot-volume"
delete_volume_on_instance_delete = true
}
volume_attachments {
delete_volume_on_instance_delete = false
name = "example-data-vol-01"
volume_prototype {
profile = "5iops-tier"
capacity = 3000
}
}
volume_attachments {
delete_volume_on_instance_delete = false
name = "example-data-vol-02"
volume_prototype {
profile = "5iops-tier"
capacity = 3000
}
}
}
Para obtener más ejemplos de ibm_is_instance_template, consulte la referencia de Terraform ibm_is_instance_template.
Próximos pasos
Una vez creada una plantilla de instancia, puedes aprovisionar una sola instancia de servidor virtual o 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 temas siguientes: