Skip to main content

Deploying on Other Platforms

This page covers deployment options for ECS and generic Kubernetes clusters.

Deploying on Amazon ECS

Coming Soon

Detailed ECS deployment documentation is under development. Contact LimePoint Support for assistance with ECS deployments.

General ECS Guidelines

The consumer can be deployed on Amazon ECS using similar principles as Docker deployment:

  1. Create an ECS Cluster - Set up your ECS cluster in AWS
  2. Create a Task Definition - Define the container configuration
  3. Configure Secrets - Use AWS Secrets Manager for sensitive data
  4. Set up Service - Create an ECS service to manage the containers

Task Definition Example

{
"family": "solifi-consumer",
"containerDefinitions": [
{
"name": "solifi-consumer",
"image": "limepoint/solifi-consumer:2.2.4",
"memory": 2048,
"cpu": 1024,
"essential": true,
"portMappings": [
{
"containerPort": 8080,
"hostPort": 8080
}
],
"environment": [
{
"name": "spring.config.additional-location",
"value": "/config/application.yml"
}
],
"mountPoints": [
{
"sourceVolume": "config",
"containerPath": "/config"
}
]
}
]
}

Deploying on Generic Kubernetes

For non-Azure Kubernetes clusters (GKE, EKS, on-premises), the deployment process is similar to AKS deployment.

Key Steps

  1. Create namespace (optional but recommended):

    kubectl create namespace solifi
  2. Create Docker registry secret:

    kubectl create secret docker-registry regcred \
    --docker-server=https://index.docker.io/v1/ \
    --docker-username=<limepoint_username> \
    --docker-password=<limepoint_password> \
    -n solifi
  3. Create ConfigMap:

    kubectl create configmap consumer-config \
    --from-file=application.yml \
    --from-file=license.license \
    --from-file=sign256.sign \
    -n solifi
  4. Apply deployment:

    kubectl apply -f deployment.yml -n solifi

Deployment YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: solifi-consumer
namespace: solifi
spec:
replicas: 1
selector:
matchLabels:
app: solifi-consumer
template:
metadata:
labels:
app: solifi-consumer
spec:
containers:
- name: solifi-consumer
image: limepoint/solifi-consumer:2.2.4
env:
- name: spring.config.additional-location
value: "/config/application.yml"
volumeMounts:
- name: config-volume
mountPath: /config
readOnly: true
ports:
- containerPort: 8080
resources:
requests:
memory: "2Gi"
cpu: "1"
limits:
memory: "4Gi"
cpu: "2"
imagePullSecrets:
- name: regcred
volumes:
- name: config-volume
configMap:
name: consumer-config

Platform-Specific Considerations

Google Kubernetes Engine (GKE)

  • Use Google Secret Manager for sensitive configuration
  • Consider using Workload Identity for service accounts
  • Use Cloud SQL for managed database

Amazon EKS

  • Use AWS Secrets Manager for sensitive configuration
  • Consider using IAM Roles for Service Accounts (IRSA)
  • Use RDS for managed database

On-Premises Kubernetes

  • Ensure proper network connectivity to Kafka brokers
  • Consider using persistent volumes for logging
  • Set up proper ingress for health endpoints

Need Help?

For platform-specific deployment assistance, contact LimePoint Support.

Next Steps