Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Puede crear máquinas virtuales (VM) en Azure y conectar varias interfaces de red (NIC) a cada una de las máquinas virtuales. Varias NIC permiten la separación de tipos de tráfico entre NIC. Por ejemplo, una NIC podría comunicarse con Internet, mientras que otra solo se comunica con recursos internos no conectados a Internet. La capacidad de separar el tráfico de red entre varias NIC es necesaria para muchas aplicaciones virtuales de red, como la entrega de aplicaciones y las soluciones de optimización wan.
Importante
Azure tiene dos modelos de implementación diferentes para crear recursos y trabajar con ellos: Resource Manager y el clásico. Este artículo trata del modelo de implementación clásico. Microsoft recomienda que las implementaciones más recientes usen el modelo de Resource Manager. Aprenda a realizar estos pasos mediante el modelo de implementación de Resource Manager.
Escenario
En este documento se explica una implementación que usa varias NIC en máquinas virtuales en un escenario específico. En este escenario, tiene una carga de trabajo iaaS de dos niveles hospedada en Azure. Cada nivel se implementa en su propia subred en una red virtual (VNet). El nivel de front-end se compone de varios servidores web, agrupados juntos en un conjunto de equilibrador de carga para alta disponibilidad. El nivel de back-end se compone de varios servidores de bases de datos. Los servidores de bases de datos se implementan con dos NIC, una para el acceso a la base de datos, la otra para la administración. El escenario también incluye grupos de seguridad de red (NSG) para controlar qué tráfico se permite a cada subred y NIC en la implementación. En la imagen siguiente se muestra la arquitectura básica de este escenario:
En los pasos siguientes se usa un grupo de recursos denominado IaaSStory para los servidores WEB y un grupo de recursos denominado IaaSStory-BackEnd para los servidores de base de datos.
Prerrequisitos
Para poder crear los servidores de bases de datos, debe crear el grupo de recursos de IaaSStory con todos los recursos necesarios para este escenario. Para crear estos recursos, complete los pasos siguientes. Cree una red virtual siguiendo los pasos descritos en el artículo creación de una red virtual .
Requisito previo: Instalación de la CLI de Azure
Para realizar los pasos descritos en este artículo, instale la CLI de Azure y inicie sesión en Azure.
Nota:
Si no tiene una cuenta de Azure, necesita una. Regístrese aquí para una prueba gratuita de . Además, para seguir estos pasos, debe tener jq o alguna otra herramienta de análisis de JSON o biblioteca instalada.
Desplegar las máquinas virtuales de back-end
Las máquinas virtuales de back-end dependen de la creación de los siguientes recursos:
- cuenta de almacenamiento para discos de datos. Para mejorar el rendimiento, los discos de datos de los servidores de bases de datos usarán la tecnología de unidad de estado sólido (SSD), que requiere una cuenta de almacenamiento Premium. Asegúrese de que la ubicación de Azure en la que realice la implementación soporte Premium Storage.
- NICs. Cada máquina virtual tendrá dos NIC, una para el acceso a la base de datos y otra para la administración.
- Conjunto de disponibilidad. Todos los servidores de bases de datos se agregarán a un único conjunto de disponibilidad para asegurarse de que al menos una de las máquinas virtuales está en funcionamiento durante el mantenimiento.
Paso 1: Iniciar el script
Puede descargar el script de Bash completo usado aquí. Complete los pasos siguientes para cambiar el script para que funcione en su entorno:
Cambie los valores de las variables siguientes en función del grupo de recursos existente implementado anteriormente en Requisitos previos.
location="useast2" vnetName="WTestVNet" backendSubnetName="BackEnd"Cambie los valores de las variables siguientes en función de los valores que desea usar para la implementación de back-end.
backendCSName="IaaSStory-Backend" prmStorageAccountName="iaasstoryprmstorage" image="0b11de9248dd4d87b18621318e037d37__RightImage-Ubuntu-14.04-x64-v14.2.1" avSetName="ASDB" vmSize="Standard_DS3" diskSize=127 vmNamePrefix="DB" osDiskName="osdiskdb" dataDiskPrefix="db" dataDiskName="datadisk" ipAddressPrefix="192.168.2." username='adminuser' password='adminP@ssw0rd' numberOfVMs=2
Paso 2: Creación de recursos necesarios para las máquinas virtuales
Cree un nuevo servicio en la nube para todas las máquinas virtuales de back-end. Observe el uso de la variable
$backendCSNamepara el nombre del grupo de recursos y$locationpara la región de Azure.azure service create --serviceName $backendCSName \ --location $locationCree una cuenta de Premium Storage para el sistema operativo y los discos de datos que usarán las máquinas virtuales.
azure storage account create $prmStorageAccountName \ --location $location \ --type PLRS
Paso 3: Creación de máquinas virtuales con varias NIC
Inicie un bucle para crear varias máquinas virtuales, en función de las variables
numberOfVMs.for ((suffixNumber=1;suffixNumber<=numberOfVMs;suffixNumber++)); doPara cada máquina virtual, especifique el nombre y la dirección IP de cada una de las dos NIC.
nic1Name=$vmNamePrefix$suffixNumber-DA x=$((suffixNumber+3)) ipAddress1=$ipAddressPrefix$x nic2Name=$vmNamePrefix$suffixNumber-RA x=$((suffixNumber+53)) ipAddress2=$ipAddressPrefix$xCree la máquina virtual. Observe el uso del parámetro
--nic-config, que contiene una lista de todas las NIC con nombre, subred y dirección IP.azure vm create $backendCSName $image $username $password \ --connect $backendCSName \ --vm-name $vmNamePrefix$suffixNumber \ --vm-size $vmSize \ --availability-set $avSetName \ --blob-url $prmStorageAccountName.blob.core.windows.net/vhds/$osDiskName$suffixNumber.vhd \ --virtual-network-name $vnetName \ --subnet-names $backendSubnetName \ --nic-config $nic1Name:$backendSubnetName:$ipAddress1::,$nic2Name:$backendSubnetName:$ipAddress2::Para cada máquina virtual, cree dos discos de datos.
azure vm disk attach-new $vmNamePrefix$suffixNumber \ $diskSize \ vhds/$dataDiskPrefix$suffixNumber$dataDiskName-1.vhd azure vm disk attach-new $vmNamePrefix$suffixNumber \ $diskSize \ vhds/$dataDiskPrefix$suffixNumber$dataDiskName-2.vhd done
Paso 4: Ejecución del script
Ahora que descargó y cambió el script en función de sus necesidades, ejecute el script para crear las máquinas virtuales de base de datos del back-end con múltiples tarjetas de interfaz de red (NIC).
Guarde el script y ejecútelo desde el terminal de Bash. Verá la salida inicial, como se muestra a continuación.
info: Executing command service create info: Creating cloud service data: Cloud service name IaaSStory-Backend info: service create command OK info: Executing command storage account create info: Creating storage account info: storage account create command OK info: Executing command vm create info: Looking up image 0b11de9248dd4d87b18621318e037d37__RightImage-Ubuntu-14.04-x64-v14.2.1 info: Looking up virtual network info: Looking up cloud service info: Getting cloud service properties info: Looking up deployment info: Creating VMEn unos minutos, la ejecución finalizará y podrás ver el resto de la salida, como se muestra a continuación.
info: OK info: vm create command OK info: Executing command vm disk attach-new info: Getting virtual machines info: Adding Data-Disk info: vm disk attach-new command OK info: Executing command vm disk attach-new info: Getting virtual machines info: Adding Data-Disk info: vm disk attach-new command OK info: Executing command vm create info: Looking up image 0b11de9248dd4d87b18621318e037d37__RightImage-Ubuntu-14.04-x64-v14.2.1 info: Looking up virtual network info: Looking up cloud service info: Getting cloud service properties info: Looking up deployment info: Creating VM info: OK info: vm create command OK info: Executing command vm disk attach-new info: Getting virtual machines info: Adding Data-Disk info: vm disk attach-new command OK info: Executing command vm disk attach-new info: Getting virtual machines info: Adding Data-Disk info: vm disk attach-new command OK
Paso 5: Configuración del enrutamiento en el sistema operativo de la máquina virtual
Azure DHCP asigna una puerta de enlace predeterminada a la primera interfaz de red (principal) conectada a la máquina virtual. Azure no asigna una puerta de enlace predeterminada a las interfaces de red adicionales (secundarias) conectadas a una máquina virtual. Por lo tanto, de manera predeterminada, no es posible comunicarse con recursos externos a la subred en la que se encuentra una interfaz de red secundaria. Sin embargo, las interfaces de red secundarias pueden comunicarse con recursos que están fuera de su subred. Para configurar el enrutamiento para las interfaces de red secundarias, consulte Enrutamiento dentro de un sistema operativo de máquina virtual con varias interfaces de red.