Complete a 3 Question Survey and Earn a re:Post Badge
Help improve AWS Support Official channel in re:Post and share your experience - complete a quick three-question survey to earn a re:Post badge!
¿Cómo creo un patrón de índice en mi clúster de Amazon OpenSearch Service?
Quiero crear un patrón de índice en mi clúster de Amazon OpenSearch Service.
Descripción corta
Para crear un patrón de índice, el clúster debe cumplir los siguientes requisitos previos:
-
El usuario debe tener permisos PUT y POST para crear un patrón de índice similar a la siguiente política de acceso:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "es:ESHttpHead", "es:ESHttpPost", "es:ESHttpGet", "es:ESHttpDelete", "es:ESHttpPut" ], "Resource": "arn:aws:es:<region>:<account-id>:domain/<domain-name>/*" } ] }
-
Su versión de clúster admite el patrón de índice.
Resolución
Siga estas instrucciones para crear un patrón de índice para los clústeres de OpenSearch Service o Elasticsearch con o sin control de acceso detallado (FGAC).
Creación de un patrón de índice para clústeres sin FGAC activado
Clústeres de Elasticsearch
Ejecute un comando similar al siguiente:
curl -X POST https://elasticsearch-end-point/_plugin/kibana/api/saved_objects/index-pattern/ \ -H "kbn-xsrf: true" \ -H "content-type: application/json" \ -d '{ "attributes": { "title": "sample-index*" } }'
Clústeres de OpenSearch Service
Ejecute un comando similar al siguiente:
curl -X POST https://opensearch-end-point/_dashboards/api/saved_objects/index-pattern/ \ -H "kbn-xsrf: true" \ -H "content-type: application/json" \ -d '{ "attributes": { "title": "sample-index*" } }'
Creación de un patrón de índice para clústeres con FGAC activado
Clústeres de Elasticsearch
Ejecuta el siguiente comando curl para generar cookies de autorización en el archivo auth.txt:
curl -X POST https://elasticsearch-end-point/_plugin/kibana/auth/login \ -H "kbn-xsrf: true" \ -H "content-type: application/json" \ -d '{"username":"<username>", "password":"<password>"}' \ -c auth.txt
A continuación, envíe la solicitud de creación del patrón de índice:
curl -X POST https://elasticsearch-end-point/_plugin/kibana/api/saved_objects/index-pattern/test \ -H "kbn-xsrf: true" \ -H "content-type: application/json" \ -d '{ "attributes": { "title": "sample-index*" } }' \ -b auth.txt
Clústeres de OpenSearch Service
Ejecuta el siguiente comando curl para generar cookies de autorización en el archivo auth.txt:
curl -X POST https://opensearch-end-point/_dashboards/auth/login \ -H "kbn-xsrf: true" \ -H "content-type: application/json" \ -d '{"username":"<username>", "password":"<password>"}' \ -c auth.txt
A continuación, envíe la solicitud de creación del patrón de índice:
curl -X POST https://opensearch-end-point/_dashboards/api/saved_objects/index-pattern/ \ -H "kbn-xsrf: true" \ -H "content-type: application/json" \ -d '{ "attributes": { "title": "sample-index*" } }' \ -b auth.txt
(Opcional) Cliente Python
Use el siguiente fragmento de código de Python para crear el patrón de índice:
import boto3 import requests from requests_aws4auth import AWS4Auth host = 'https://domain-endpoint/' # include trailing / region = 'es-region' # example us-west-1 service = 'es' credentials = boto3.Session().get_credentials() awsauth = AWS4Auth(credentials.access_key, credentials.secret_key, region, service, session_token=credentials.token) path = '_dashboards/api/saved_objects/index-pattern' # _plugin/kibana/api/saved_objects/index-pattern for es versions url = host + path payload = {"attributes":{"title":"multi-logs-*","fields":"[]"}} headers = {"Content-Type": "application/json", "osd-xsrf": "true", "security_tenant": "global" } r = requests.post (url, auth=awsauth, json=payload, headers=headers) print(r.status_code) print(r.text)
Nota: Debe tener instaladas las siguientes dependencias:
pip install boto3 pip install opensearch-py pip install requests pip install requests-aws4auth
Nota:
- El rol utilizado para ejecutar el fragmento de código debe asignarse al rol respaldado para los clústeres de FGAC.
- Para los clústeres de Elasticsearch, cambie la ruta a '_plugin/kibana/api/saved_objects/index-pattern'.
Solución de problemas comunes relacionados con la creación de un patrón de índice
Clústeres de FGAC que utilizan la autenticación SAML o de Amazon Cognito
Si el dominio del clúster usa SAML o Amazon Cognito para la autenticación, cree un usuario interno para administrar el patrón de índice.
Nota: El usuario debe tener permisos PUT y POST para crear un patrón de índice. Este requisito no es obligatorio para los clústeres sin FGAC activado.
Creación de un patrón de índice en otros inquilinos
Los patrones de índice se crean en el inquilino global de forma predeterminada. Para crear un patrón de índice fuera del inquilino global, ejecute un comando curl similar al siguiente:
curl -s -X POST https://opensearch-end-point/_dashboards/api/saved_objects/index-pattern/sample-index -d '{"attributes": {"title": "sample-index*"}}' \ -H "osd-xsrf:true" \ -H "securitytenant: private" \ -H "content-type:application/json" \ -b auth.txt
Falta el alias .kibana en el clúster
Compruebe si el alias .kibana existe sin que el FGAC esté activado en el clúster mediante el siguiente comando curl:
curl -XGET https://opensearch-end-point/_cat/aliases
Comprueba si el índice .kibana existe con el FGAC activado en el clúster mediante el siguiente comando curl:
curl -XGET https://opensearch-end-point/_cat/aliases
Si el índice .kibana no existe, omita los pasos 1 y 2 para crear una copia de seguridad y eliminar el índice.
1. Cree una copia de seguridad del índice .kibana:
curl -XPOST "https://domain-end-point/_reindex" -H 'Content-Type: application/json' -d' { "source": { "index": ".kibana" }, "dest": { "index": ".kibana_backup" } }'
2. Elimine el índice .kibana:
curl -XDELETE "https://domain-end-point/.kibana"
3. Cree un alias .kibana y apúntelo al índice .kibana_backup:
curl -XPOST "https://domain-end-point/_aliases" -H 'Content-Type: application/json' -d' { "actions": [ { "add": { "index": ".kibana_backup", "alias": ".kibana" } } ] }'
Nota: Incluya el parámetro authentication (username:password) para los clústeres del FGAC.
Información relacionada
Exportación e importación de paneles de Kibana con Amazon ES
Vídeos relacionados


Contenido relevante
- preguntada hace 2 meseslg...
- preguntada hace 2 meseslg...
- preguntada hace 2 meseslg...
- preguntada hace 5 meseslg...