¿Cómo puedo habilitar la inicialización automática de discos de EVS en las instancias que se han agregado a un grupo de AS durante las acciones de escalado?
Escenarios
Después de crear una instancia de ECS, debe inicializar manualmente los discos de EVS conectados a la instancia antes de usarlos. Si se agregan varias instancias al grupo de AS, debe inicializar los discos de EVS en cada instancia, lo que tarda un tiempo.
Esta sección describe cómo configurar un script para habilitar la inicialización automática de discos de EVS, incluida la partición de disco y la conexión de directorios especificados. El script solo se puede usar para inicializar un disco de EVS.
Esta sección utiliza CentOS 6.5 como ejemplo. Para obtener información sobre cómo configurar la inicialización automática de discos de EVS en otros sistemas operativos, consulte la documentación correspondiente del sistema operativo.
Procedimiento
- Inicie sesión en la instancia como root de usuario.
- Ejecute un comando para cambiar al directorio donde se almacenará el script:
Por ejemplo:
cd /home
- Ejecute el siguiente comando para crear el script:
Por ejemplo:
vi fdisk_mount.sh
- Pulse i para entrar en el modo de edición.
El siguiente script se utiliza como ejemplo para mostrar cómo desplegar la inicialización automática de un disco de datos:
#!/bin/bash bash_scripts_name=fdisk_mount.sh ini_path=/home/fdisk.ini disk= size= mount= partition= function get_disk_from_ini() { disk=`cat $ini_path|grep disk| awk -F '=' '{print $2}'` if [ $disk = "" ] then echo "disk is null in file,exit" exit fi result=`fdisk -l $disk | grep $disk` if [ $result = 1 ] then echo "disk path does not exist in linux,exit" exit fi } function get_size() { size=`cat $ini_path| grep size|awk -F '=' '{print $2}'` if [ $size = "" ] then echo "size is null,exit" exit fi } function make_fs_mount() { mkfs.ext4 -T largefile $partition if [ $? -ne 0 ] then echo "mkfs disk failed,exit" exit fi dir=`cat $ini_path|grep mount |awk -F '=' '{print $2}'` if [ $dir = "" ] then echo "mount dir is null in file,exit" exit fi if [ ! -d $dir ] then mkdir -p $dir fi mount $partition $dir if [ $? -ne 0 ] then echo "mount disk failed,exit" exit fi echo "$partition $dir ext3 defaults 0 0" >> /etc/fstab } function remove_rc() { cat /etc/rc.local | grep $bash_scripts_name if [ $? ne 0 ] then sed -i '/'$bash_scripts_name'/d' /etc/rc.local fi } ################## start ####################### ##1. Check whether the configuration file exists. if [ ! -f $ini_path ] then echo "ini file not exist,exit" exit fi ##2. Obtain the device path for the specified disk from the configuration file. get_disk_from_ini ##3. Obtain the size of the size partition from the configuration file. get_size ##4. Partition the disk. fdisk $disk <<EOF n p 1 1 $size w EOF partition=`fdisk -l $disk 2>/dev/null| grep "^/dev/[xsh].*d" | awk '{print $1}'` ##5. Format the partition and attach the partition to the specified directory. make_fs_mount ##6. Change startup items to prevent re-execution of the scripts. remove_rc echo 'SUCESS'
- Presione Esc, escriba :wq y presione Enter para guardar los cambios y salir.
- Ejecute el siguiente comando para crear el archivo de configuración:
- Pulse i para entrar en el modo de edición.
La letra de unidad, el tamaño y el directorio de montaje del disco de EVS se configuran en el archivo de configuración. Puede cambiar la configuración en función de la siguiente información mostrada.
disk=/dev/xdev size=+100G mount=/opt/test
- Presione Esc, escriba :wq y presione Enter para guardar los cambios y salir.
- Ejecute el siguiente comando para abrir el archivo de configuración rc.local:
vi /etc/rc.local
- Presione i para agregar el siguiente contenido a rc.local:
/home/fdisk_mount.sh
Después de configurar rc.local, el script de inicialización del disco de EVS se ejecutará automáticamente cuando se inicie el ECS.
- Presione Esc, escriba :wq y presione Enter para guardar los cambios y salir.
- Cree una imagen privada usando un ECS.
- Cree una configuración de AS.
Cuando especifique la información de configuración de AS, seleccione la imagen privada creada en el paso anterior y seleccione un disco de EVS.
- Cree un grupo de AS.
Cuando configure el grupo de AS, seleccione la configuración de AS creada en el paso anterior.
Después de crear el grupo de AS, los discos de EVS de las nuevas instancias agregadas a este grupo de AS en las acciones de ajuste se inicializarán automáticamente.