Inicio rápido: Implementación de Azure AI Search mediante Bicep

Este artículo le guiará por el proceso de uso de un archivo de Bicep para implementar un recurso de Azure AI Search en Azure Portal.

Bicep es un lenguaje específico de dominio (DSL) que usa una sintaxis declarativa para implementar recursos de Azure. Brinda sintaxis concisa, seguridad de tipos confiable y compatibilidad con la reutilización de código. Bicep ofrece la mejor experiencia de creación para sus soluciones de infraestructura como código en Azure.

En la implementación solo se usan las propiedades incluidas en la plantilla. Si se requiere un mayor nivel de personalización, como configurar la seguridad de red, puede actualizar el servicio como una tarea posterior a la implementación. Para personalizar un servicio existente en pocos pasos, use la CLI de Azure o Azure PowerShell. Si va a evaluar características de versión preliminar, use la API REST de administración.

Sugerencia

Para obtener una plantilla de Bicep alternativa que implemente Azure AI Search con un indexador preconfigurado en Cosmos DB for NoSQL, consulte Implementación de Bicep de Azure AI Search. No hay compatibilidad con plantillas de Bicep para las operaciones del plano de datos de Búsqueda de Azure AI, como la creación de un índice, pero puede agregar un módulo que llame a las API de REST. El ejemplo incluye un módulo que crea un índice, un conector de origen de datos y un indexador que se actualiza desde Cosmos DB a intervalos de 5 minutos.

Requisitos previos

Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.

Revisión del archivo de Bicep

El archivo de Bicep usado en este inicio rápido forma parte de las plantillas de inicio rápido de Azure.

@description('Service name must only contain lowercase letters, digits or dashes, cannot use dash as the first two or last one characters, cannot contain consecutive dashes, and is limited between 2 and 60 characters in length.')
@minLength(2)
@maxLength(60)
param name string

@allowed([
  'free'
  'basic'
  'standard'
  'standard2'
  'standard3'
  'storage_optimized_l1'
  'storage_optimized_l2'
])
@description('The pricing tier of the search service you want to create (for example, basic or standard).')
param sku string = 'standard'

@description('Replicas distribute search workloads across the service. You need at least two replicas to support high availability of query workloads (not applicable to the free tier).')
@minValue(1)
@maxValue(12)
param replicaCount int = 1

@description('Partitions allow for scaling of document count as well as faster indexing by sharding your index over multiple search units.')
@allowed([
  1
  2
  3
  4
  6
  12
])
param partitionCount int = 1

@description('Applicable only for SKUs set to standard3. You can set this property to enable a single, high density partition that allows up to 1000 indexes, which is much higher than the maximum indexes allowed for any other SKU.')
@allowed([
  'default'
  'highDensity'
])
param hostingMode string = 'default'

@description('Location for all resources.')
param location string = resourceGroup().location

resource search 'Microsoft.Search/searchServices@2020-08-01' = {
  name: name
  location: location
  sku: {
    name: sku
  }
  properties: {
    replicaCount: replicaCount
    partitionCount: partitionCount
    hostingMode: hostingMode
  }
}

El recurso de Azure definido en este archivo de Bicep:

Implementación del archivo de Bicep

  1. Guarde el archivo de Bicep como main.bicep en el equipo local.

  2. Implemente el archivo de Bicep mediante la CLI de Azure o Azure PowerShell.

    az group create --name exampleRG --location eastus
    az deployment group create --resource-group exampleRG --template-file main.bicep --parameters serviceName=<service-name>
    

    Nota

    Reemplace <service-name> por el nombre del servicio Search. El nombre del servidio solo debe contener letras minúsculas, números o guiones. No se puede usar un guion como los dos primeros o el último carácter. El nombre tiene una longitud mínima de 2 caracteres y una máxima de 60.

    Una vez finalizada la implementación, debería mostrarse un mensaje indicando que la implementación se realizó correctamente.

Revisión de los recursos implementados

Use los Azure Portal, CLI de Azure o Azure PowerShell para enumerar los recursos implementados en el grupo de recursos.

az resource list --resource-group exampleRG

Limpieza de recursos

Azure AI Search es un recurso facturable. Si ya no es necesario, elimínelo de la suscripción para evitar cargos. Puede usar Azure Portal, la CLI de Azure o Azure PowerShell para eliminar el grupo de recursos y sus recursos.

az group delete --name exampleRG

Pasos siguientes

En este inicio rápido, ha creado un servicio Azure AI Search mediante un archivo Bicep y luego ha validado la implementación. Para obtener más información sobre Azure AI Search y Azure Resource Manager, continúe con los artículos.