InfluxDB: Automatice con la CLI

Inicie InfluxDB, recupere sus credenciales y modifique su configuración de forma programática con la CLI de Stackhero

👋 ¡Bienvenido a la documentación de Stackhero!

Stackhero ofrece una solución InfluxDB cloud lista para usar que proporciona una serie de beneficios, incluyendo:

  • Escrituras, consultas, paneles, tareas y buckets ilimitados.
  • Tiempo de retención de datos ilimitado.
  • Transferencias de red y disco ilimitadas.
  • Actualizaciones sin esfuerzo con solo un clic.
  • Rendimiento óptimo y seguridad robusta impulsada por una VM privada y dedicada.

Ahorre tiempo y simplifique su vida: solo toma 5 minutos probar la solución de InfluxDB cloud hosting de Stackhero!

Esta guía muestra cómo crear un servicio InfluxDB, leer sus credenciales y actualizar su configuración completamente desde la línea de comandos, sin necesidad de hacer clic en el panel de control. Es ideal para scripts, pipelines de CI y agentes de IA.

Utilizaremos la CLI de Stackhero para todas las tareas. Si aún no la ha instalado, puede hacerlo con:

curl -fsSL https://www.stackhero.io/install.sh | sh

La forma más sencilla de empezar es iniciar sesión a través de su navegador. Cuando ejecuta el comando de login, la CLI abre una página web donde puede aprobar el acceso. No se introducen contraseñas ni códigos 2FA en la propia CLI.

stackhero login

Después de iniciar sesión, sus credenciales se almacenan localmente y se utilizarán automáticamente en los siguientes comandos de la CLI.

Para entornos completamente automatizados como scripts o pipelines de CI, puede preferir un token de acceso no interactivo. Puede crearlo desde su panel de control (Cuenta > Access tokens) y exportarlo como una variable de entorno. La CLI, y cualquier script que ejecute, lo detectará automáticamente.

export STACKHERO_TOKEN="usr-xxxxxx:your-token"

A continuación, querrá listar los stores de servicio InfluxDB disponibles en su cuenta. La CLI acepta directamente el nombre del store (influxdb), por lo que no es necesario buscar ni copiar ningún ID.

# Listar los stores de servicio InfluxDB (añada --organization si gestiona más de uno)
stackhero services-store-list --name="influxdb"

Puede referirse al nombre del store influxdb en los siguientes comandos, o elegir un ID específico svs-xxxxxx de la lista si lo prefiere.

# Listar los tamaños de instancia para su store de servicio (utilice la columna NAME para --instance)
stackhero instances-store-list --service-store=influxdb

# Listar las regiones disponibles (nombres como "europe")
stackhero regions-list

Aquí tiene un ejemplo de script que crea un stack, añade su servicio InfluxDB, espera a que se inicie, recupera su configuración (incluyendo las credenciales generadas) y luego aplica una nueva configuración.

#!/bin/bash
set -e

export STACKHERO_TOKEN="usr-xxxxxx:your-token"

serviceStore="influxdb"   # El nombre del store de servicio InfluxDB (ver paso 2)
instance="..."                # Un tamaño de instancia del paso 3
region="europe"               # Un nombre de región del paso 3

# Crear un stack para su servicio (usa su organización por defecto; añada --organization si es necesario)
stackId=$(stackhero --format=script stack-create \
  --name="My InfluxDB stack")
echo "Stack creado: ${stackId}"

# Añadir InfluxDB al stack (los nombres se resuelven automáticamente)
serviceId=$(stackhero --format=script service-add \
  --stack="My InfluxDB stack" \
  --service-store="${serviceStore}" \
  --instance="${instance}" \
  --region="${region}")
echo "Servicio añadido: influxdb"

# Esperar a que el servicio esté completamente en funcionamiento (esto puede tardar un par de minutos)
stackhero service-wait-for --service="influxdb"

# Recuperar la configuración del servicio, incluidas las credenciales generadas
stackhero service-configuration-get --service="influxdb" --format=json

El comando service-configuration-get devuelve la configuración completa de su servicio, incluidas las contraseñas generadas automáticamente y los datos de conexión. El resultado está en formato JSON, lo que facilita su uso en scripts y automatizaciones.

stackhero service-configuration-get --service=svc-xxxxxx --format=json

Puede consultar un ejemplo de esquema de configuración y luego aplicar sus propios ajustes. Al actualizar la configuración, el servicio puede reiniciarse para aplicar los cambios.

# Ver el esquema de configuración y un ejemplo para su servicio
stackhero service-configuration-example --service=svc-xxxxxx

# Aplicar una configuración personalizada (el servicio se reinicia si es necesario)
stackhero service-configuration-set \
  --service=svc-xxxxxx \
  --configuration='{ "...": "..." }'

# Esperar a que se aplique la nueva configuración
stackhero service-wait-for --service=svc-xxxxxx

Eso es todo. Ahora ha visto el ciclo completo: iniciar un servicio, recuperar sus credenciales y reconfigurarlo, todo de forma automatizada y mediante scripts. Para profundizar más, consulte la documentación completa de la CLI, que también cubre la autenticación no interactiva con STACKHERO_TOKEN mostrada aquí.