Documentation
#Using Mach5 via AWS Marketplace
This guide will help you install, configure, and start using Mach5 Search, an OpenSearch-compatible analytics engine designed to help you quickly search, visualize, and query structured and unstructured data. With a few simple steps, you can deploy Mach5 on AWS, ingest sample or real data, and start running powerful queries, all without managing infrastructure manually. By the end of this guide, you'll be able to:
- Launch Mach5 Search on your own AWS infrastructure.
- Use pre-built dashboards and OpenSearch-compatible APIs.
- Add and query sample datasets using Mach5 Dev Tools.
Prerequisites
- An active AWS account with necessary IAM permissions to deploy resources.
- AWS CLI configured on your machine.
- Kubectl configured on your machine.
- Terraform installed.
Subscribe to Mach5 Search on AWS Marketplace
- Go to AWS Marketplace.
- Search for "Mach5 Search".
- Review the product details, pricing, and click Continue to Subscribe or view purchase options.
Clone the Setup Repository or Download the Files
Once subscribed, head to the resources section and download the required files—or clone the setup repo:
git clone https://github.com/mach5-io/cloud-deployment-scripts cd cloud-deployment-scripts/aws
Deploy Mach5 with Terraform Script
Run the pre-configured deployment script:
bash setup-mach5-cluster.sh
- Sets up the required infrastructure (EKS, VPC, etc.).
- Deploys Mach5 Search using Helm charts.
Access the Mach5 Search Interface
- Mach5 Dashboards: http://<local-host>:8888/dashboards
- OpenSearch APIs: http://<local-host>:8888/opensearch
Explore the Preconfigured Setup
- You will see a pre-configured store, which includes:
- Bucket Name
- AWS region
- Store Routing setup
- A "Getting Started" warehouse, which shows:
- Warehouse Details
- Links to Dashboard and OpenSearch APIs
Use Dev Tools to Run Queries
You can run queries directly from the browser using Mach5's Dev Tools.
1. Navigate to Dashboards
2. Click on "Interact with OpenSearch API" or "Dev Tools" from the sidebar
Example Dev Tool Walkthrough:
- Check Cluster Health
GET /_cluster/health Expected Output: {"status":"green"}
- Create an Index
PUT /products { "mappings": { "properties": { "name": { "type": "text" }, "category": { "type": "keyword" }, "price": { "type": "float" }, "stock": { "type": "boolean" } } } }
- Add Data via Bulk API
POST /_bulk { "index": { "_index": "products", "_id": 1 }} { "name": "Smartphone", "category": "electronics", "price": 999.99, "stock": true } { "index": { "_index": "products", "_id": 2 }} { "name": "Laptop", "category": "electronics", "price": 1299.00, "stock": false } { "index": { "_index": "products", "_id": 3 }} { "name": "Shoes", "category": "apparel", "price": 299.00, "stock": true }
- Count Documents
GET /products/_count
- Query all Documents
GET /products/_search { "query": { "match_all": {} } }
- Filter by Category
GET /products/_search { "query": { "term": { "category": "electronics" } } }
- Aggregate (eg- Average Price)
GET /products/_search { "size": 0, "aggs": { "average_price": { "avg": { "field": "price" } } } }
- Deletion of Index
DELETE /products
Need help?
If you have any questions about setting up Mach5 Search and need live help, please email us at:info@mach5.io
Just getting started or exploring on your own? Join the conversation in the Mach5 Discord Community - a space to ask questions, share ideas, and learn from other engineers building with Mach5.