Add checkpoints, overview, and Redis to Seqera AI install guide#1266
Add checkpoints, overview, and Redis to Seqera AI install guide#1266
Conversation
Restructure the enterprise Seqera AI installation doc to be more checkpoint-oriented so CX engineers have clear success indicators at each stage. Adds an overview of what is being installed, sequential numbered steps (MCP first, then DB, Redis, agent backend, verify), permissions section, Redis as a prerequisite, and removes the Helm-only deployment requirement. Made-with: Cursor
✅ Deploy Preview for seqera-docs ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
|
|
||
| ## Overview | ||
|
|
||
| Seqera AI enables users to interact with Seqera Platform through a conversational AI interface, available through both the web (portal) and the CLI. Deploying Seqera AI involves standing up the following components in sequence: |
There was a problem hiding this comment.
@odagayev - what happens if the sequence isn't followed? Can the user expect an error? Is there a way to remediate?
| Seqera AI requires its own MySQL database for session state and conversation history. You can create this database on the same instance that hosts your Platform database (recommended) or on a separate dedicated instance. | ||
|
|
||
| :::tip Recommended: Use the same database instance as Platform | ||
| Creating the Seqera AI database on your existing Platform database instance simplifies infrastructure management, reduces costs, and avoids additional networking configuration. The Seqera AI database is lightweight and does not compete for resources with the Platform database under typical usage. |
There was a problem hiding this comment.
Do we have an idea of "typical usage" parameters? If there are competing resource requirements where can this be managed?
There was a problem hiding this comment.
This should not be a recommendation.
We should not be advising customers on how they do their database techologies.
Seqera AI should be on it's own DB schema separate from platform, it can live on it's own host.
Note recommending infrastructure goes against the persona the installation documentation is intended for which is an experienced system administrator.
There was a problem hiding this comment.
@odagayev - where in the Enterprise docs would this content live? If it's meant as an installation guide, it would go under this section: https://docs.seqera.io/platform-enterprise/enterprise/overview and should follow the same structure and persona.
@gavinelder - I know we have a persona file for this; is there an opportunity to create a template for this/other content that follows the current structure and content guidelines?
|
Thanks, @odagayev! I've added some comments and also wanted to confirm how we can test/validate all the steps provided. Also looping DevOps in here as they have done a lot of work on the Enterprise installation docs and may have feedback on this. |
|
|
||
| - **Seqera Enterprise 26.1+** deployed via [Helm](./platform-helm.md) | ||
| - **Seqera Enterprise 26.1+** deployed and accessible. Platform can be deployed via [Helm](./platform-helm.md), [Kubernetes](./platform-kubernetes.md), or [Docker Compose](./platform-docker-compose.md) — a Helm-based deployment is not required. | ||
| - **MySQL 8.0+ database** |
There was a problem hiding this comment.
Shouldn't kubernetes be a requirement too?
| Connect to your database instance and create the Seqera AI database and user: | ||
|
|
||
| ```sql | ||
| CREATE DATABASE seqera_ai; | ||
| CREATE USER 'seqera_ai'@'%' IDENTIFIED BY '<secure-password>'; | ||
| GRANT ALL PRIVILEGES ON seqera_ai.* TO 'seqera_ai'@'%'; | ||
| FLUSH PRIVILEGES; | ||
| ``` | ||
|
|
There was a problem hiding this comment.
| Connect to your database instance and create the Seqera AI database and user: | |
| ```sql | |
| CREATE DATABASE seqera_ai; | |
| CREATE USER 'seqera_ai'@'%' IDENTIFIED BY '<secure-password>'; | |
| GRANT ALL PRIVILEGES ON seqera_ai.* TO 'seqera_ai'@'%'; | |
| FLUSH PRIVILEGES; | |
| ``` |
do we need to provide instructions on how to set up a mysql db? are these instructions generic to all mysql implementations?
| ### Checkpoint: Verify database connectivity | ||
|
|
||
| Confirm the database is accessible from your cluster: | ||
|
|
||
| ```bash | ||
| kubectl run db-check --rm -it --restart=Never \ | ||
| --image=mysql:8.0 -- \ | ||
| mysql -h <db-hostname> -u seqera_ai -p<secure-password> -e "SELECT 1;" | ||
| ``` | ||
|
|
||
| You should see a result set with the value `1`. If this fails, check security group rules and network connectivity. | ||
|
|
There was a problem hiding this comment.
| ### Checkpoint: Verify database connectivity | |
| Confirm the database is accessible from your cluster: | |
| ```bash | |
| kubectl run db-check --rm -it --restart=Never \ | |
| --image=mysql:8.0 -- \ | |
| mysql -h <db-hostname> -u seqera_ai -p<secure-password> -e "SELECT 1;" | |
| ``` | |
| You should see a result set with the value `1`. If this fails, check security group rules and network connectivity. |
This feels like out of scope for this guide
The helm chart already has an init container that stops until the db is available
|
|
||
| ## Step 3: Provision Redis | ||
|
|
||
| Seqera AI requires a Redis instance for caching and session management. Use a managed Redis service or a self-managed instance, as long as it is accessible from your cluster on port 6379. |
There was a problem hiding this comment.
| Seqera AI requires a Redis instance for caching and session management. Use a managed Redis service or a self-managed instance, as long as it is accessible from your cluster on port 6379. | |
| Seqera AI requires a Redis-compatible instance for caching and session management. Seqera recommends a managed Redis service. |
|
|
||
| Seqera AI requires a Redis instance for caching and session management. Use a managed Redis service or a self-managed instance, as long as it is accessible from your cluster on port 6379. | ||
|
|
||
| - **Engine**: Redis 6.0+ |
There was a problem hiding this comment.
were the apps tested with redis 6?
| Seqera AI requires a Redis instance for caching and session management. Use a managed Redis service or a self-managed instance, as long as it is accessible from your cluster on port 6379. | ||
|
|
||
| - **Engine**: Redis 6.0+ | ||
| - **Security group**: Allow inbound Redis (port 6379) from your cluster |
There was a problem hiding this comment.
| - **Security group**: Allow inbound Redis (port 6379) from your cluster |
this is out of scope for this guide
| Before you begin, you need: | ||
|
|
||
| - **Seqera Enterprise 26.1+** deployed via [Helm](./platform-helm.md) | ||
| - **Seqera Enterprise 26.1+** deployed and accessible. Platform can be deployed via [Helm](./platform-helm.md), [Kubernetes](./platform-kubernetes.md), or [Docker Compose](./platform-docker-compose.md) — a Helm-based deployment is not required. |
There was a problem hiding this comment.
| - **Seqera Enterprise 26.1+** deployed and accessible. Platform can be deployed via [Helm](./platform-helm.md), [Kubernetes](./platform-kubernetes.md), or [Docker Compose](./platform-docker-compose.md) — a Helm-based deployment is not required. | |
| - **Seqera Enterprise 26.1+** deployed and accessible. |
At most we should link back to the front page for the platform install docs, we do not have to rehash or make comment that Helm-Based install is not required.
| - **Seqera Enterprise 26.1+** deployed via [Helm](./platform-helm.md) | ||
| - **Seqera Enterprise 26.1+** deployed and accessible. Platform can be deployed via [Helm](./platform-helm.md), [Kubernetes](./platform-kubernetes.md), or [Docker Compose](./platform-docker-compose.md) — a Helm-based deployment is not required. | ||
| - **MySQL 8.0+ database** | ||
| - **Redis 6.0+** instance accessible from your cluster |
There was a problem hiding this comment.
This does not align to the other language used in the installation documentation.
Redis 6 is no longer supported and EOL and not compatible with other platform components.
| - **Secret management**: Access to create Kubernetes secrets in the target namespace | ||
| - **Helm**: Permission to install and upgrade Helm releases in the target namespace | ||
| - **TLS certificate management**: Access to provision or reference TLS certificates (e.g., via AWS Certificate Manager) | ||
|
|
There was a problem hiding this comment.
This should move up to requirements.
| - **Database administration**: Ability to create databases and users on the MySQL instance | ||
| - **DNS management**: Access to create or update DNS records for the Seqera AI subdomains | ||
| - **AWS IAM** (if using Bedrock): Permissions to invoke Bedrock models in the target AWS account | ||
| - **Secret management**: Access to create Kubernetes secrets in the target namespace |
There was a problem hiding this comment.
Secrets management is a deployment choice and not a requirement.
| | **MCP server** | Model Context Protocol server providing Platform-aware tools (workflows, datasets, compute environments). | | ||
| | **Portal web interface** | Browser-based interface for Seqera AI and related Platform features. | | ||
| | **MySQL database** | Dedicated database for session state and conversation history. **Separate from Platform database**. | | ||
| | **MySQL database** | Database for session state and conversation history. Can share the same instance as Platform (recommended) or use a dedicated instance. | |
There was a problem hiding this comment.
| | **MySQL database** | Database for session state and conversation history. Can share the same instance as Platform (recommended) or use a dedicated instance. | | |
| | MySQL database | Dedicated database for session state and conversation history. |
From claudio
The original wording correctly states the requirement for a dedicated database separate from the Platform database. The proposed change introduces deployment methodology detail which is out of scope for a requirements.
Database = A logically separated, named collection of structured data with its own schema, access controls, and namespace.
Instance = A running deployment of a database engine that may host one or more databases.
| 1. Results stream back to the CLI via Server-Sent Events (SSE). | ||
|
|
||
| ## Configure Helm values | ||
| ## Step 1: Deploy the MCP server |
There was a problem hiding this comment.
We should move this to it's own stand alone install guide. ( Noted for future improvement)
|
|
||
| You should see a result set with the value `1`. If this fails, check security group rules and network connectivity. | ||
|
|
||
| ## Step 3: Provision Redis |
There was a problem hiding this comment.
This is a requirement and not something we specify in documentation.
The target persona should know how to do this.
| Seqera AI requires a Redis instance for caching and session management. Use a managed Redis service or a self-managed instance, as long as it is accessible from your cluster on port 6379. | ||
|
|
||
| - **Engine**: Redis 6.0+ | ||
| - **Security group**: Allow inbound Redis (port 6379) from your cluster |
There was a problem hiding this comment.
Redundant and cloud specific.
Summary
Test plan
Made with Cursor