Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda/ Elastic Cloud Server/ Referencia de la API/ API (recomendado)/ Gestión de estado/ Reinstalación de un SO de ECS (Uso de una imagen con Cloud-Init instalado)
Actualización más reciente 2022-11-08 GMT+08:00

Reinstalación de un SO de ECS (Uso de una imagen con Cloud-Init instalado)

Función

Esta API se utiliza para reinstalar un SO de ECS. Durante la reinstalación del disco del sistema utilizando la imagen original, los discos de datos de ECS permanece sin cambios.

Después de llamar a esta API, el sistema desinstala el disco del sistema, utiliza la imagen original para crear un disco del sistema y lo conecta al ECS. De esta manera, se reinstala el SO.

Restricciones

  • Solo puedes usar una imagen con Cloud-Init o Cloudbase-Init instalados. Si la imagen no tiene Cloudbase-Init ni Cloudbase-init instalados, utilice la API descrita en Reinstalación de un SO de ECS (Uso de una imagen sin Cloud-Init instalado).
  • No se le permite reinstalar el SO de un ECS que no tiene el disco del sistema.
  • No se le permite realizar otras operaciones al reinstalar el SO. De lo contrario, se producirá un error al reinstalar el SO.

URI

POST /v2/{project_id}/cloudservers/{server_id}/reinstallos

Tabla 1 describe los parámetros en el URI.
Tabla 1 Descripción del parámetro

Parámetro

Obligatorio

Descripción

project_id

Especifica el ID del proyecto.

Para obtener más información sobre cómo obtener el ID, consulte Obtención de un ID de proyecto.

server_id

Especifica el ID de ECS.

Solicitud

Tabla 2 describe los parámetros de solicitud.
Tabla 2 Parámetros de solicitud

Parámetro

Obligatorio

Tipo

Description

os-reinstall

Object

Reinstala un SO de ECS. Para más detalles, consulte Tabla 3.

Tabla 3 Descripción del campo os-reinstall

Parámetro

Obligatorio

Tipo

Description

adminpass

No

String

Especifica la contraseña inicial del administrador de ECS.

El nombre de usuario del administrador de Windows es Administrator y el nombre de usuario del administrador de Linux es root.

Requerimientos de complejidad de la contraseña:

  • 8 a 26 caracteres
  • La contraseña debe contener al menos tres de los siguientes tipos de caracteres: letras mayúsculas, minúsculas, dígitos y caracteres especiales (!@$%^-_=+[{}]:,./?~#*).
NOTA:
  • La contraseña de ECS Windows no puede contener el nombre de usuario, el nombre de usuario al revés o más de dos caracteres en la misma secuencia que aparecen en el nombre de usuario.
  • Los ECS de Linux pueden usar user_data para inyectar contraseñas. En tal caso, adminpass no está disponible.
  • Se establece adminpass o keyname.
  • Si tanto adminpass como keyname están vacíos, se debe establecer user_data en metadatos.

keyname

No

String

Especifica el nombre del par de claves.

Las claves se pueden crear usando la API de creación de claves (Creación e importación de un par de claves SSH) u obtener usando la API de consulta de claves SSH (Consulta de pares de claves de SSH).

userid

No

String

Especifica el ID de usuario.

metadata

No

Object

Especifica los metadatos de los ECS reinstalados.

Para obtener más información, consulte Tabla 4.

mode

No

String

Especifica si el ECS admite la reinstalación SO cuando se está ejecutando elECS.

Si el valor del parámetro es withStopServer, ECS admite la reinstalación SO cuando se está ejecutando ECS. En tal caso, el sistema detiene automáticamente el ECS antes de volver a instalar su SO.

Tabla 4 Descripción del campo metadata

Parámetro

Obligatorio

Tipo

Description

user_data

No

String

Especifica los datos de usuario que se inyectarán en el ECS durante la creación. Se pueden inyectar archivos de texto y texto.

NOTA:
  • El contenido de user_data debe estar codificado con base64.
  • El tamaño máximo del contenido a inyectar (antes de la codificación) es de 32 KB.

Para obtener más información, consulte Inyección de datos de usuario en ECS.

Ejemplos

Antes de la codificación base64:

  • Linux
    #! /bin/bash
    echo user_test >> /home/user.txt
  • Windows
    rem cmd
    echo 111 > c:\aaa.txt

Después de la codificación base64:

  • Linux
    IyEgL2Jpbi9iYXNoDQplY2hvIHVzZXJfdGVzdCAmZ3Q7Jmd0OyAvaG9tZS91c2VyLnR4dA==
  • Windows
    cmVtIGNtZAplY2hvIDExMSA+IGM6XGFhYS50eHQ=

Respuesta

Consulte Respuestas (tarea)

Ejemplo de la solicitud

  • Ejemplo de solicitud de URL
    POST https://{endpoint}/v2/{project_id}/cloudservers/{server_id}/reinstallos
  • Ejemplo de solicitud 1 (usar una contraseña para iniciar sesión remotamente en un ECS con SO reinstalado)
    {
        "os-reinstall": {
            "adminpass": "!QAZxsw2", 
            "userid": "7e25b1da389f4697a79df3a0e5bd494e",
            "mode": "withStopServer"
        }
    }
  • Ejemplo de solicitud 2 (usar una clave para iniciar sesión remotamente en un ECS con SO reinstalado)
    {
        "os-reinstall": {
            "keyname": "KeyPair-350b", 
            "userid": "7e25b1da389f4697a79df3a0e5bd494e"
        }
    }

Ejemplo de la respuesta

Consulte Respuestas (tarea)

Códigos de error

Consulte Códigos de error