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.
Cómputo
Elastic Cloud Server
Bare Metal Server
Auto Scaling
Image Management Service
Dedicated Host
FunctionGraph
Cloud Phone Host
Huawei Cloud EulerOS
Redes
Virtual Private Cloud
Elastic IP
Elastic Load Balance
NAT Gateway
Direct Connect
Virtual Private Network
VPC Endpoint
Cloud Connect
Enterprise Router
Enterprise Switch
Global Accelerator
Gestión y gobernanza
Cloud Eye
Identity and Access Management
Cloud Trace Service
Resource Formation Service
Tag Management Service
Log Tank Service
Config
Resource Access Manager
Simple Message Notification
Application Performance Management
Application Operations Management
Organizations
Optimization Advisor
Cloud Operations Center
Resource Governance Center
Migración
Server Migration Service
Object Storage Migration Service
Cloud Data Migration
Migration Center
Cloud Ecosystem
KooGallery
Partner Center
User Support
My Account
Billing Center
Cost Center
Resource Center
Enterprise Management
Service Tickets
HUAWEI CLOUD (International) FAQs
ICP Filing
Support Plans
My Credentials
Customer Operation Capabilities
Partner Support Plans
Professional Services
Análisis
MapReduce Service
Data Lake Insight
CloudTable Service
Cloud Search Service
Data Lake Visualization
Data Ingestion Service
GaussDB(DWS)
DataArts Studio
IoT
IoT Device Access
Otros
Product Pricing Details
System Permissions
Console Quick Start
Common FAQs
Instructions for Associating with a HUAWEI CLOUD Partner
Message Center
Seguridad y cumplimiento
Security Technologies and Applications
Web Application Firewall
Host Security Service
Cloud Firewall
SecMaster
Data Encryption Workshop
Database Security Service
Cloud Bastion Host
Data Security Center
Cloud Certificate Manager
Blockchain
Blockchain Service
Servicios multimedia
Media Processing Center
Video On Demand
Live
SparkRTC
Almacenamiento
Object Storage Service
Elastic Volume Service
Cloud Backup and Recovery
Storage Disaster Recovery Service
Scalable File Service
Volume Backup Service
Cloud Server Backup Service
Data Express Service
Dedicated Distributed Storage Service
Contenedores
Cloud Container Engine
SoftWare Repository for Container
Application Service Mesh
Ubiquitous Cloud Native Service
Cloud Container Instance
Bases de datos
Relational Database Service
Document Database Service
Data Admin Service
Data Replication Service
GeminiDB
GaussDB
Distributed Database Middleware
Database and Application Migration UGO
TaurusDB
Middleware
Distributed Cache Service
API Gateway
Distributed Message Service for Kafka
Distributed Message Service for RabbitMQ
Distributed Message Service for RocketMQ
Cloud Service Engine
EventGrid
Dedicated Cloud
Dedicated Computing Cluster
Aplicaciones empresariales
ROMA Connect
Message & SMS
Domain Name Service
Edge Data Center Management
Meeting
AI
Face Recognition Service
Graph Engine Service
Content Moderation
Image Recognition
Data Lake Factory
Optical Character Recognition
ModelArts
ImageSearch
Conversational Bot Service
Speech Interaction Service
Huawei HiLens
Developer Tools
SDK Developer Guide
API Request Signing Guide
Terraform
Koo Command Line Interface
Distribución de contenido y cómputo de borde
Content Delivery Network
Intelligent EdgeFabric
CloudPond
Soluciones
SAP Cloud
High Performance Computing
Servicios para desarrolladores
ServiceStage
CodeArts
CodeArts PerfTest
CodeArts Req
CodeArts Pipeline
CodeArts Build
CodeArts Deploy
CodeArts Artifact
CodeArts TestPlan
CodeArts Check
Cloud Application Engine
aPaaS MacroVerse
KooPhone
KooDrive

Instalación de Cloud-Init

Actualización más reciente 2023-10-09 GMT+08:00

Escenarios

Para asegurarse de que puede usar la función de inyección de datos de usuario para inyectar información personalizada inicial en los ECS creados a partir de una imagen privada (como configurar la ECS contraseña de inicio de sesión), instale Cloud-Init en el ECS utilizado para crear la imagen.

  • Es necesario descargar Cloud-Init desde su sitio web oficial. Por lo tanto, debe vincular una EIP a la ECS.
  • Si Cloud-Init no está instalado, no puede configurar una ECS. Como resultado, solo puede usar la contraseña del archivo de imagen para iniciar sesión en los ECSs creados.
  • De forma predeterminada, los ECS creados a partir de una imagen pública tienen Cloud-Init instalado. No es necesario instalar o configurar Cloud-Init en dichos ECS.
  • Para los ECS creados con un archivo de imagen externo, instale y configure Cloud-Init realizando las operaciones de esta sección. Para ver cómo configurar Cloud-Init, consulte Configuración de Cloud-Init.

Prerrequisitos

  • Una EIP ha estado vinculada a la ECS.
  • Usted ha iniciado sesión en el ECS.
  • El modo de obtención de la dirección IP ECS es DHCP.

Procedimiento

  1. Revise si se instaló Cloud-Init.

    Para más detalles, consulte Comprobar si se ha instalado Cloud-Init.

  2. Instale Cloud-Init.

    Puede instalar Cloud-Init de cualquiera de las siguientes maneras: (Recomendado) Instalar Cloud-Init usando el paquete de instalación oficial, Instalar Cloud-Init usando el paquete oficial de código fuente y pip, y Instalar Cloud-Init usando el código fuente oficial de GitHub.

Comprobar si se ha instalado Cloud-Init

Realice las operaciones proporcionadas aquí para comprobar si se ha instalado Cloud-Init.

Los métodos para comprobar si Cloud-Init está instalado varían en función de los sistemas operativos. Tome CentOS 6 como ejemplo. Ejecute el siguiente comando para comprobar si Cloud-Init está instalado:

rpm -qa |grep cloud-init

Si se muestra información similar a la siguiente, se ha instalado Cloud-Init:

cloud-init-0.7.5-10.el6.centos.2.x86_64
Si se ha instalado Cloud-Init, realice las siguientes operaciones:
  • Compruebe si desea utilizar el certificado en el ECS sistema operativo. Si el certificado ya no se utiliza, elimínelo.
    • Si el certificado se almacena en un directorio de usuario root, por ejemplo, /$path/$to/$root/.ssh/autorized_keys, ejecute los siguientes comandos:

      cd /root/.ssh

      rm authorized_keys

    • Si el certificado no está almacenado en un directorio de usuario root, por ejemplo, /$path/$to/$none-root/.ssh/autorized_keys, ejecute los siguientes comandos:

      cd /home/centos/.ssh

      rm authorized_keys

  • Ejecute el siguiente comando para eliminar la caché generada por Cloud-Init y asegúrese de que la ECS creada a partir de la imagen privada se puede iniciar con el certificado:

    sudo rm -rf /var/lib/cloud/*

NOTA:

No reinicie el ECS después de realizar la configuración. De lo contrario, necesita configurarlo de nuevo.

(Recomendado) Instalar Cloud-Init usando el paquete de instalación oficial

El método de instalación de Cloud-Init en un ECS varía dependiendo del sistema operativo. Realice las operaciones de instalación como usuario root.

A continuación se describe cómo instalar Cloud-Init en un ECS que ejecute SUSE Linux, CentOS, Fedora, Debian y Ubuntu. Para otros tipos de sistemas operativos, instale el tipo requerido de Cloud-Init. Por ejemplo, necesita instalar coreos-cloudinit en ECSs que ejecutan CoreOS.

  • SUSE Linux

    Rutas de acceso para obtener el paquete de instalación de Cloud-Init para SUSE Linux

    https://ftp5.gwdg.de/pub/opensuse/repositories/Cloud:/Tools/

    http://download.opensuse.org/repositories/Cloud:/Tools/

    NOTA:

    Seleccione el paquete de instalación de repositorio necesario en las rutas proporcionadas.

    Tome SUSE Enterprise Linux Server 12 como ejemplo. Realice los siguientes pasos para instalar Cloud-Init:

    1. Inicie sesión en el ECS usado para crear una imagen privada de Linux.
    2. Ejecute el siguiente comando para instalar el origen de instalación de red para SUSE Enterprise Linux Server 12:

      zypper ar https://ftp5.gwdg.de/pub/opensuse/repositories/Cloud:/Tools/SLE_12_SP3/Cloud:Tools.repo

    3. Ejecute el siguiente comando para actualizar el origen de instalación de red:

      zypper refresh

    4. Ejecute el siguiente comando para instalar Cloud-Init:

      zypper install cloud-init

    5. Ejecute los siguientes comandos para habilitar Cloud-Init para que se inicie automáticamente al iniciar el sistema:
      • SUSE 11

        chkconfig cloud-init-local on; chkconfig cloud-init on; chkconfig cloud-config on; chkconfig cloud-final on

        service cloud-init-local status; service cloud-init status; service cloud-config status; service cloud-final status

      • SUSE 12 y openSUSE 12/13/42

        systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service

        systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service

      ATENCIóN:

      Para SUSE y openSUSE, realice los siguientes pasos para deshabilitar el cambio dinámico del ECS nombre:

      1. Ejecute el siguiente comando para abrir el archivo dhcp usando el editor vi:

        vi etc/sysconfig/network/dhcp

      2. Cambie el valor de DHCLIENT_SET_HOSTNAME en el archivo dhcp a no.
  • CentOS

    Tabla 1 enumera las rutas de instalación de Cloud-Init para CentOS. Seleccione el paquete de instalación requerido en las siguientes direcciones.

    Tabla 1 Direcciones del paquete de instalación de Cloud-Init

    Tipo de sistema operativo

    Versión

    Cómo obtener

    CentOS

    6 32-bit

    https://archives.fedoraproject.org/pub/archive/epel/6/i386/

    6 64-bit

    https://archives.fedoraproject.org/pub/archive/epel/6/x86_64/

    7 64-bit

    https://archives.fedoraproject.org/pub/epel/7/x86_64/Packages/e/

    Ejecute los siguientes comandos para instalar Cloud-Init:

    yum install Cloud-Init installation package address/epel-release-x-y.noarch.rpm

    yum install cloud-init

    NOTA:

    La dirección del paquete de instalación de Cloud-Init indica la dirección del paquete de instalación de Cloud-Init epel-release, y x-y indica la versión de Cloud-Init epel-release requerida por el sistema operativo actual. Reemplazarlos con los valores reales según Tabla 1.

    • Tome CentOS 6 de 64 bits como ejemplo. Si la versión es 6.8, el comando es el siguiente:

      yum install https://archives.fedoraproject.org/pub/archive/epel/6/x86_64/epel-release-6-8.noarch.rpm

    • Tome CentOS 7 de 64 bits como ejemplo. Si la versión es 7.14, el comando es el siguiente:

      yum install https://archives.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-14.noarch.rpm

  • Fedora

    Antes de instalar Cloud-Init, asegúrese de que la dirección de origen de instalación de red se ha configurado para el sistema operativo comprobando si el archivo /etc/yum.repo.d/fedora.repo contiene la dirección de origen de instalación del paquete de software. Si el archivo no contiene la dirección, configure la dirección siguiendo las instrucciones en el sitio web oficial de Fedora.

    Ejecute el siguiente comando para instalar Cloud-Init:

    yum install cloud-init

  • Debian y Ubuntu

    Antes de instalar Cloud-Init, asegúrese de que la dirección de origen de instalación de red se ha configurado para el sistema operativo comprobando si el archivo /etc/apt/sources.list contiene la dirección de origen de instalación del paquete de software. Si el archivo no contiene la dirección, configure la dirección siguiendo las instrucciones en el sitio web oficial de Debian o Ubuntu.

    Ejecute los siguientes comandos para instalar Cloud-Init:

    apt-get update

    apt-get install cloud-init

Instalar Cloud-Init usando el paquete oficial de código fuente y pip

Las siguientes operaciones usan Cloud-Init 0.7.9 como ejemplo para describir cómo instalar Cloud-Init.

  1. Descargue el paquete de código fuente cloud-init-0.7.9.tar.gz (se recomienda la versión 0.7.9) y súbalo al directorio /home/ de la ECS.

    Descargue cloud-init-0.7.9.tar.gz desde la siguiente ruta:

    https://launchpad.net/cloud-init/trunk/0.7.9/+download/cloud-init-0.7.9.tar.gz

  2. Cree un archivo pip.conf en el directorio ~/.pip/ y edite el siguiente contenido:
    NOTA:

    Si el directorio ~/.pip/ no existe, ejecute el comando mkdir ~/.pip para crearlo.

    [global]
    index-url  = https://<$mirror>/simple/
    trusted-host = <$mirror>
    NOTA:

    Reemplace <$mirror> con un origen PyPI de red pública.

    Fuente de PyPI de la red pública https://pypi.python.org/

  3. Ejecute el siguiente comando para instalar el paquete de código fuente de Cloud-Init descargado (seleccione --upgrade según sea necesario durante la instalación):

    pip install [--upgrade] /home/cloud-init-0.7.9.tar.gz

  4. Ejecute el comando cloud-init -v. Cloud-Init se instala correctamente si se muestra la siguiente información:
    cloud-init 0.7.9
  5. Habilite Cloud-Init para que se inicie automáticamente al iniciar el sistema.
    • Si el sistema operativo utiliza SysVinit para gestionar el inicio automático de los servicios, ejecute los siguientes comandos:

      chkconfig --add cloud-init-local; chkconfig --add cloud-init; chkconfig --add cloud-config; chkconfig --add cloud-final

      chkconfig cloud-init-local on; chkconfig cloud-init on; chkconfig cloud-config on; chkconfig cloud-final on

      service cloud-init-local status; service cloud-init status; service cloud-config status; service cloud-final status

    • Si el sistema operativo utiliza Systemd para gestionar el inicio automático de servicios, ejecute los siguientes comandos:

      systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service

      systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service

ATENCIóN:

Si instalas Cloud-Init usando el paquete de código fuente oficial y pip, preste atención a lo siguiente:

  1. Agregar usuario de syslog al grupo adm durante la instalación. Si existe usuario de syslog, agréguelo al grupo adm. Para algunos sistemas operativos (como CentOS y SUSE), es posible que el usuario de syslog no exista. Ejecute los siguientes comandos para crear usuario de syslog y agregarlo al grupo adm:

    useradd syslog

    groupadd adm

    usermod -g adm syslog

  2. Cambie el valor de distro en system_info en el archivo /etc/cloud/cloud.cfg basado en la versión de lanzamiento del sistema operativo, como distro: ubuntu, distro: sles, distro: debian, and distro: fedora.

Instalar Cloud-Init usando el código fuente oficial de GitHub

Puede obtener el código fuente de Cloud-Init de GitHub en https://github.com/canonical/cloud-init/

  1. Ejecute los siguientes comandos para descargar el paquete de código fuente y copiarlo a la carpeta /tmp/CLOUD-INIT :

    wget https://github.com/canonical/cloud-init/archive/refs/tags/0.7.6.zip

    mkdir /tmp/CLOUD-INIT

    cp cloud-init-0.7.6.zip /tmp/CLOUD-INIT

    cd /tmp/CLOUD-INIT

  2. Ejecute el siguiente comando para descomprimir el paquete:

    unzip cloud-init-0.7.6.zip

  3. Ejecute el siguiente comando para ingresar a la carpeta cloud-init-0.7.6:

    cd cloud-init-0.7.6

  4. Instale Cloud-Init. Los comandos varían según el tipo de sistema operativo.
    • Para CentOS 6.x o SUSE 11.x, ejecute los siguientes comandos:

      python setup.py build

      python setup.py install --init-system sysvinit

    • Para CentOS 7.x o SUSE 12.x, ejecute los siguientes comandos:

      python setup.py build

      python setup.py install --init-system systemd

    NOTA:

    Agregar usuario de syslog al grupo adm durante la instalación. Si existe usuario de syslog, agréguelo al grupo adm. Para algunos sistemas operativos (como CentOS y SUSE), es posible que el usuario de syslog no exista. Ejecute los siguientes comandos para crear usuario de syslog y agregarlo al grupo adm:

    useradd syslog

    groupadd adm

    usermod -g adm syslog

  5. Habilite Cloud-Init para que se inicie automáticamente al iniciar el sistema.
    • Si el sistema operativo utiliza SysVinit para gestionar el inicio automático de los servicios, ejecute los siguientes comandos:

      chkconfig --add cloud-init-local; chkconfig --add cloud-init; chkconfig --add cloud-config; chkconfig --add cloud-final

      chkconfig cloud-init-local on; chkconfig cloud-init on; chkconfig cloud-config on; chkconfig cloud-final on

      service cloud-init-local status; service cloud-init status; service cloud-config status; service cloud-final status

    • Si el sistema operativo utiliza Systemd para gestionar el inicio automático de servicios, ejecute los siguientes comandos:

      systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service

      systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service

  6. Ejecute los siguientes comandos para comprobar si se ha instalado Cloud-Init:

    cloud-init -v

    cloud-init init --local

    Cloud-Init se instala correctamente si se muestra la siguiente información:

    cloud-init 0.7.6

Utilizamos cookies para mejorar nuestro sitio y tu experiencia. Al continuar navegando en nuestro sitio, tú aceptas nuestra política de cookies. Descubre más

Comentarios

Comentarios

Comentarios

0/500

Seleccionar contenido

Enviar el contenido seleccionado con los comentarios