All operations will be executed on VM1, unless an alternative is explicitly designated.
To configure the Aipix platform deployment, follow these steps:
-
Go to the working directory:
Bash
cd ~/aipix-deploy/kubernetes
-
Create the
sources.shfile fromsources.sh.sample:
Bash
./generate-sources.sh
-
Configure your Aipix platform deployment:
Bash
vim ./sources.sh
Bash
#!/bin/bash -e
### Beginning of the VSaaS base configuration ###
export DOCKER_USERNAME=aipix # Username for logging in to the Nexus Docker registry
export DOCKER_PASSWORD=aipix # Password for logging in to the Nexus Docker registry
export TRAEFIK_DOMAIN=traefik-dashboard.example.com # Domain name for the Traefik dashboard
export TRAEFIK_NAMESPACE=traefik-v2 # Kubernetes namespace for the Traefik application
export VMS_DOMAIN=vms.example.com # Domain name for VMS
export ANALYTICS_DOMAIN=orch.example.com # Domain name for the orchestrator
export NS_VMS=vsaas-vms # Kubernetes namespace for the VMS application
export NS_MS=vsaas-ms # Kubernetes namespace for media servers
export NS_A=vsaas-analytics # Kubernetes namespace for analytics
export NS_MINIO=minio-single # Kubernetes namespace for MinIO S3
# Use "minio-single" for a demo installation or "minio-ha" for a production installation
export RWO_STORAGE=local-storage # Storage class for ReadWriteOnce
# Use standard-rwo for GKE
export RWX_STORAGE=openebs-kernel-nfs # Storage class for ReadWriteMany
# Use standard-rwx for GKE
export ANALYTICS=no # Whether to deploy analytics ("yes" or "no")
export TYPE=single ## Installation options
# 1) "single" - Single-node demo installation plus one node for analytics if enabled
# 2) "prod" - Multinode production installation with high availability (HA)
export VMS_LIC_OFFLINE=no # Whether to use an offline VMS license ("yes" or "no")
export MS_LIC_OFFLINE=no # Whether to use an offline media server license ("yes" or "no")
export A_LIC_OFFLINE=no # Whether to use an offline analytics license ("yes" or "no")
# Basic MinIO S3 deployment parameters:
export MINIO_CONSOLE_DOMAIN=minio-console.example.com # MinIO console domain name for a single-node installation
export MINIO_CONSOLE_DOMAIN_1=minio-console-1.example.com # MinIO console domain name for a redundant installation
export MINIO_CONSOLE_DOMAIN_2=minio-console-2.example.com # MinIO console domain name for a redundant installation
export MINIO_USR=minioadmin # MinIO administrator username
export MINIO_PSW=miniopassword # MinIO administrator password
export MINIO_BACKEND_BUCKET_NAME=vms-store # Public MinIO bucket name for the VMS backend
export MINIO_BACKEND_ACCESS_KEY=P30F6ONUEH7CZ8513H4S # MinIO access key for the VMS backend public bucket (use letters and numbers only)
export MINIO_BACKEND_SECRET_KEY=gZ6s6WCmTVfvJ062q4U4VeJOGnEcyfYYHPKD0Lr6 # MinIO secret key for the VMS backend public bucket (use letters and numbers only)
export MINIO_BACKEND_BUCKET_NAME_PRIV=vms-store-priv # Private MinIO bucket name for the VMS backend
export MINIO_BACKEND_ACCESS_KEY_PRIV=O30F6ONUEH7CZ8R13H49 # MinIO access key for the VMS backend private bucket (use letters and numbers only)
export MINIO_BACKEND_SECRET_KEY_PRIV=lZ4d6RCmTVfvJ062q4U1VesOGnEcyfYYHPKD0Ye3 # MinIO secret key for the VMS backend private bucket (use letters and numbers only)
export MINIO_PORTAL_BUCKET_NAME=portal-store # Public MinIO bucket name for the portal
export MINIO_PORTAL_ACCESS_KEY=X4076ONYEH7CZ8D13H73 # MinIO access key for the portal public bucket (use letters and numbers only)
export MINIO_PORTAL_SECRET_KEY=eC6d6WCmTsfvJ03lq4U1VeJOGnEcyfYYHPKD0es9 # MinIO secret key for the portal public bucket (use letters and numbers only)
export MINIO_PORTAL_BUCKET_NAME_PRIV=portal-store-priv # Private MinIO bucket name for the portal
export MINIO_PORTAL_ACCESS_KEY_PRIV=T30d8OSUEH7CZ8R1HS6A # MinIO access key for the portal private bucket (use letters and numbers only)
export MINIO_PORTAL_SECRET_KEY_PRIV=pA6d6RsmTVfvJ066q4U1VeJOGnEdyf4YHPKD0gsT # MinIO secret key for the portal private bucket (use letters and numbers only)
export MINIO_ANALYTICS_BUCKET_NAME=analytics-store # MinIO bucket name for analytics
export MINIO_ANALYTICS_ACCESS_KEY=Y4RJU1RNFGK48LGO9I2S # MinIO access key for the analytics bucket (use letters and numbers only)
export MINIO_ANALYTICS_SECRET_KEY=qV6drWCmTV0vJ0Q2q921VeJOGnEcyfYYHPKD0k7R # MinIO secret key for the analytics bucket (use letters and numbers only)
export MINIO_LOGS_BUCKET_NAME=logs # Bucket name for logs
export MINIO_LOGS_ACCESS_KEY=TW2N577S01BDXSSRCJB2 # MinIO access key for the logs bucket
export MINIO_LOGS_SECRET_KEY=uTgCH2La9fH749uE5v2RqpaCOsxfRUmGLktyN2dn # MinIO secret key for the logs bucket
export MINIO_GRAFANA_BUCKET_NAME=grafana # Bucket name for Grafana
export MINIO_GRAFANA_ACCESS_KEY=YGSTBZ1FKPPRJCOV8X3L # MinIO access key for the Grafana dashboards bucket
export MINIO_GRAFANA_SECRET_KEY=ka2LGfUfYOy0ACBxQvqxbvjpn18KZ5w6XMbM1zAL # MinIO secret key for the Grafana dashboards bucket
# Monitoring parameters
export MONITORING=no # Whether to deploy monitoring ("yes" or "no")
export NS_MONITORING=monitoring # Kubernetes namespace for monitoring
export INFLUX_USR=admin # InfluxDB administrator username
export INFLUX_PSW=0hmSYYaRci6yJblARc6aHbHZ4YelTXTo # InfluxDB administrator password (use letters and numbers only)
export INFLUX_TOKEN=2pORp9tDo40Lm32oGUKFLL8r1UuNbgUT # InfluxDB API token (use letters and numbers only)
export CONTACT_POINT=Telegram # Default notification contact point (Telegram or Slack)
export TELEGRAM_BOT_TOKEN=temporary-telegram-token # Telegram bot token for notifications
export TELEGRAM_CHAT_ID=temporary-telegram-chat-id # Telegram chat ID for notifications
export SLACK_BOT_TOKEN=temporary-slack-token # Slack bot token for notifications
export SLACK_CHANNEL_ID=temporary-slack-channel-id # Slack channel ID for notifications
# Portal parameters
export PORTAL=no # Whether to deploy the portal ("yes" or "no")
export PORTAL_STUB_DOMAIN=portal-stub.example.com # Portal stub domain name
# VGW parameters
export VGW=no # Whether to deploy VGW ("yes" or "no")
# WB parameters
export WB=no # Whether to deploy the WB integration ("yes" or "no")
# Embed player parameters
export EMBED_PLAYER=no # Whether to deploy the Embed player ("yes" or "no")
# Location parameters
export CITY= # City name
# BLE parameters
export BLE=no # Whether to deploy the BLE service ("yes" or "no")
export BLE_DOMAIN=ble.example.com # Domain name for BLE
export MINIO_BLE_BUCKET_NAME=ble-service # Bucket name for BLE
export MINIO_BLE_ACCESS_KEY=SF2GI0WH6XBM59MH3SDC # MinIO access key for the BLE bucket
export MINIO_BLE_SECRET_KEY=wQh8SUmGuf7HDPn7wqvZq3qJxyIxVsqIXP9Ew6dw # MinIO secret key for the BLE bucket
export BLE_JWT_SECRET=eVU6RcFWlC4lR4pE9dHwipmKLFeASbCE # JWT secret for BLE
### End of the VSaaS base configuration ###