Ponemos los recursos para ejecutar proyectos de implementación en la nube: escritorios remotos para los empleados, servidores virtuales para su operación y plataformas PaaS o IaaS que lo llevan de una infraestructura totalmente pública a una huella híbrida, con las opciones de interconexión disponibles en Equinix IBX.
Centros de datos en regiones interconectadas le dan la disponibilidad y los tiempos de respuesta que necesitan sus aplicaciones, sin que usted tenga que ser dueño del piso.
Las tres formas
Nube privada Para organizaciones que mueven sus propios centros de datos, donde el control y el perímetro de cumplimiento tienen que quedarse en sus manos.
Nube pública Para organizaciones que quieren operar sobre Microsoft, Amazon o Google y prefieren comprar la capacidad antes que construirla.
Nube híbrida La respuesta habitual: la elasticidad de la capacidad pública con el control de la infraestructura privada para lo que no puede salir. Infraestructura como Código Los entornos que entregamos quedan escritos como código de Terraform. Cada cambio queda versionado y se revisa antes de aplicarse, el mismo código puede volver a levantar el entorno y, al terminar el proyecto, el código se queda con usted.
main.tf resource "azurerm_resource_group" "app" { location = var.location } resource "azurerm_virtual_network" "app" { address_space = ["10.0.0.0/16" ] } locals { subnets = { fw = "AzureFirewallSubnet" web = "web" app = "app" data = "data" infra = "infra" } } resource "azurerm_subnet" "s" { for_each = local.subnets name = each.value } resource "azurerm_public_ip" "fw" { sku = "Standard" } resource "azurerm_firewall" "edge" { sku_tier = "Standard" } resource "azurerm_route_table" "core" { route { address_prefix = "0.0.0.0/0" # -> firewall } } resource "azurerm_subnet_route_table_association" "r" { for_each = toset(["web" , "app" , "data" , "infra" ]) } resource "azurerm_lb" "lb" { for_each = toset(["web" , "app" ]) # internal } resource "azurerm_firewall_nat_rule_collection" "web" { action = "Dnat" # 443 -> lb web } locals { servers = { iis1 = "web" , iis2 = "web" app = "app" , db = "data" dc = "infra" , file = "infra" } } resource "azurerm_windows_virtual_machine" "srv" { for_each = local.servers } Terminal $ terraform planPlan: 23 to add, 0 to change, 0 to destroy. $ terraform applyazurerm_resource_group.app: Creating... azurerm_resource_group.app: Creation complete azurerm_virtual_network.app: Creating... azurerm_virtual_network.app: Creation complete azurerm_subnet.s["fw"]: Creating... azurerm_subnet.s["fw"]: Creation complete azurerm_subnet.s["web"]: Creating... azurerm_subnet.s["web"]: Creation complete azurerm_subnet.s["app"]: Creating... azurerm_subnet.s["app"]: Creation complete azurerm_subnet.s["data"]: Creating... azurerm_subnet.s["data"]: Creation complete azurerm_subnet.s["infra"]: Creating... azurerm_subnet.s["infra"]: Creation complete azurerm_public_ip.fw: Creating... azurerm_public_ip.fw: Creation complete azurerm_firewall.edge: Creating... azurerm_firewall.edge: Creation complete azurerm_route_table.core: Creating... azurerm_route_table.core: Creation complete azurerm_subnet_route_table_association.r["web"]: Creating... azurerm_subnet_route_table_association.r["web"]: Creation complete azurerm_subnet_route_table_association.r["app"]: Creating... azurerm_subnet_route_table_association.r["app"]: Creation complete azurerm_subnet_route_table_association.r["data"]: Creating... azurerm_subnet_route_table_association.r["data"]: Creation complete azurerm_subnet_route_table_association.r["infra"]: Creating... azurerm_subnet_route_table_association.r["infra"]: Creation complete azurerm_lb.lb["web"]: Creating... azurerm_lb.lb["web"]: Creation complete azurerm_lb.lb["app"]: Creating... azurerm_lb.lb["app"]: Creation complete azurerm_firewall_nat_rule_collection.web: Creating... azurerm_firewall_nat_rule_collection.web: Creation complete azurerm_windows_virtual_machine.srv["iis1"]: Creating... azurerm_windows_virtual_machine.srv["iis1"]: Creation complete azurerm_windows_virtual_machine.srv["iis2"]: Creating... azurerm_windows_virtual_machine.srv["iis2"]: Creation complete azurerm_windows_virtual_machine.srv["app"]: Creating... azurerm_windows_virtual_machine.srv["app"]: Creation complete azurerm_windows_virtual_machine.srv["db"]: Creating... azurerm_windows_virtual_machine.srv["db"]: Creation complete azurerm_windows_virtual_machine.srv["dc"]: Creating... azurerm_windows_virtual_machine.srv["dc"]: Creation complete azurerm_windows_virtual_machine.srv["file"]: Creating... azurerm_windows_virtual_machine.srv["file"]: Creation complete Apply complete! Resources: 23 added, 0 changed, 0 destroyed. INTERNET GRUPO DE RECURSOS RED VIRTUAL 10.0.0.0/16 SW AzureFirewallSubnet SW subred web SW subred app SW subred data SW subred infra IP PÚBLICA FW Azure Firewall ROUTER tabla de rutas LB web · interno LB app · interno DNAT 443 IIS Servidor web 1 IIS Servidor web 2 APP Aplicaciones DB SQL Server DC Active Directory FILE Archivos main.tf resource "azurerm_resource_group" "app" { location = var.location } resource "azurerm_virtual_network" "app" { address_space = ["10.0.0.0/16" ] } locals { subnets = { fw = "AzureFirewallSubnet" web = "web" app = "app" data = "data" infra = "infra" } } resource "azurerm_subnet" "s" { for_each = local.subnets name = each.value } resource "azurerm_public_ip" "fw" { sku = "Standard" } resource "azurerm_firewall" "edge" { sku_tier = "Standard" } resource "azurerm_route_table" "core" { route { address_prefix = "0.0.0.0/0" # -> firewall } } resource "azurerm_subnet_route_table_associatio n" " r" { for_each = toset(["web" , "app" , "data" , "infra" ]) } resource "azurerm_lb" "lb" { for_each = toset(["web" , "app" ]) # internal } resource "azurerm_firewall_nat_rule_collection" "web" { action = "Dnat" # 443 -> lb web } locals { servers = { iis1 = "web" , iis2 = "web" app = "app" , db = "data" dc = "infra" , file = "infra" } } resource "azurerm_windows_virtual_machine" "srv" { for_each = local.servers } Terminal $ terraform planPlan: 23 to add, 0 to change, 0 to destroy. $ terraform applyazurerm_resource_group.app: Creating... azurerm_resource_group.app: Creation complete azurerm_virtual_network.app: Creating... azurerm_virtual_network.app: Creation complete azurerm_subnet.s["fw"]: Creating... azurerm_subnet.s["fw"]: Creation complete azurerm_subnet.s["web"]: Creating... azurerm_subnet.s["web"]: Creation complete azurerm_subnet.s["app"]: Creating... azurerm_subnet.s["app"]: Creation complete azurerm_subnet.s["data"]: Creating... azurerm_subnet.s["data"]: Creation complete azurerm_subnet.s["infra"]: Creating... azurerm_subnet.s["infra"]: Creation complete azurerm_public_ip.fw: Creating... azurerm_public_ip.fw: Creation complete azurerm_firewall.edge: Creating... azurerm_firewall.edge: Creation complete azurerm_route_table.core: Creating... azurerm_route_table.core: Creation complete azurerm_subnet_route_table_association.r[" web"]: Creating... azurerm_subnet_route_table_association.r[" web"]: Creation complete azurerm_subnet_route_table_association.r[" app"]: Creating... azurerm_subnet_route_table_association.r[" app"]: Creation complete azurerm_subnet_route_table_association.r[" data"]: Creating... azurerm_subnet_route_table_association.r[" data"]: Creation complete azurerm_subnet_route_table_association.r[" infra"]: Creating... azurerm_subnet_route_table_association.r[" infra"]: Creation complete azurerm_lb.lb["web"]: Creating... azurerm_lb.lb["web"]: Creation complete azurerm_lb.lb["app"]: Creating... azurerm_lb.lb["app"]: Creation complete azurerm_firewall_nat_rule_collection.web: Creating... azurerm_firewall_nat_rule_collection.web: Creation complete azurerm_windows_virtual_machine.srv["iis1" ]: Creating... azurerm_windows_virtual_machine.srv["iis1" ]: Creation complete azurerm_windows_virtual_machine.srv["iis2" ]: Creating... azurerm_windows_virtual_machine.srv["iis2" ]: Creation complete azurerm_windows_virtual_machine.srv["app"] : Creating... azurerm_windows_virtual_machine.srv["app"] : Creation complete azurerm_windows_virtual_machine.srv["db"]: Creating... azurerm_windows_virtual_machine.srv["db"]: Creation complete azurerm_windows_virtual_machine.srv["dc"]: Creating... azurerm_windows_virtual_machine.srv["dc"]: Creation complete azurerm_windows_virtual_machine.srv["file" ]: Creating... azurerm_windows_virtual_machine.srv["file" ]: Creation complete Apply complete! Resources: 23 added, 0 changed, 0 destroyed. INTERNET GRUPO DE RECURSOS RED VIRTUAL · 10.0.0.0/16 SW AzureFirewallSubnet SW subred web SW subred app SW subred data SW subred infra IP PÚBLICA FW Azure Firewall ROUTER tabla de rutas LB web · interno LB app · interno DNAT 443 IIS Servidor web 1 IIS Servidor web 2 APP Aplicaciones DB SQL Server DC Active Directory FILE Archivos Ejemplo simplificado. Una configuración real declara más recursos, como las interfaces de red de las máquinas, los grupos de back-end de los balanceadores y los grupos de seguridad de red. Pausar animación Repetir
Qué firma Un solo contrato con VirtualNet Cloud que cubre diseño, migración y operación en régimen. Si además contrata Operation o Support, es el mismo contrato y la misma factura.
Cuánto cuesta
Desde $1,800 / mes, con facturación mensual.
Es un punto de partida, no una cotización: el alcance final y la cifra final salen de una conversación corta y le llegan por escrito antes de que empiece cualquier trabajo.
Pedir cotización
Llamar al +1 954 681 2566