{ "id": "00000000-0000-0000-0000-000000000000", "name": "Kratos.ai", "schemaVersion": "designs.meshery.io/v1beta1", "version": "0.0.2", "components": [ { "id": "00000000-0000-0000-0000-000000000000", "schemaVersion": "", "version": "", "displayName": "kratos-node-gateway", "description": "", "format": "", "model": null, "modelReference": { "displayName": "", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "" }, "name": "", "registrant": { "kind": "" }, "version": "" }, "styles": null, "capabilities": null, "status": null, "metadata": { "configurationUISchema": "", "genealogy": "", "instanceDetails": null, "isAnnotation": false, "isNamespaced": false, "published": false }, "configuration": { "apiVersion": "apps/v1", "kind": "Deployment", "metadata": { "labels": { "app": "kratos-ai", "tier": "gateway" }, "name": "kratos-node-gateway" }, "spec": { "replicas": 2, "selector": { "matchLabels": { "app": "kratos-ai", "tier": "gateway" } }, "template": { "metadata": { "labels": { "app": "kratos-ai", "tier": "gateway" } }, "spec": { "containers": [ { "env": [ { "name": "FASTAPI_SERVICE_URL", "value": "http://kratos-fastapi-service:8000" }, { "name": "REDIS_URL", "value": "redis://kratos-redis:6379" }, { "name": "MONGODB_URI", "valueFrom": { "secretKeyRef": { "key": "mongodb-uri", "name": "kratos-secrets" } } } ], "image": "kratos-ai/node-gateway:latest", "name": "node-gateway", "ports": [ { "containerPort": 4000 } ], "resources": { "limits": { "cpu": "500m", "memory": "512Mi" }, "requests": { "cpu": "250m", "memory": "256Mi" } } } ] } } } }, "component": { "version": "v1", "kind": "Deployment", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "00000000-0000-0000-0000-000000000000", "schemaVersion": "", "version": "", "displayName": "kratos-node-gateway-svc", "description": "", "format": "", "model": null, "modelReference": { "displayName": "", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "" }, "name": "", "registrant": { "kind": "" }, "version": "" }, "styles": null, "capabilities": null, "status": null, "metadata": { "configurationUISchema": "", "genealogy": "", "instanceDetails": null, "isAnnotation": false, "isNamespaced": false, "published": false }, "configuration": { "apiVersion": "v1", "kind": "Service", "metadata": { "labels": { "app": "kratos-ai", "tier": "gateway" }, "name": "kratos-node-gateway" }, "spec": { "ports": [ { "port": 4000, "protocol": "TCP", "targetPort": 4000 } ], "selector": { "app": "kratos-ai", "tier": "gateway" }, "type": "ClusterIP" } }, "component": { "version": "v1", "kind": "Service", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "00000000-0000-0000-0000-000000000000", "schemaVersion": "", "version": "", "displayName": "kratos-fastapi-service", "description": "", "format": "", "model": null, "modelReference": { "displayName": "", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "" }, "name": "", "registrant": { "kind": "" }, "version": "" }, "styles": null, "capabilities": null, "status": null, "metadata": { "configurationUISchema": "", "genealogy": "", "instanceDetails": null, "isAnnotation": false, "isNamespaced": false, "published": false }, "configuration": { "apiVersion": "apps/v1", "kind": "Deployment", "metadata": { "labels": { "app": "kratos-ai", "tier": "ml-service" }, "name": "kratos-fastapi-service" }, "spec": { "replicas": 2, "selector": { "matchLabels": { "app": "kratos-ai", "tier": "ml-service" } }, "template": { "metadata": { "labels": { "app": "kratos-ai", "tier": "ml-service" } }, "spec": { "containers": [ { "env": [ { "name": "REDIS_URL", "value": "redis://kratos-redis:6379" }, { "name": "MODEL_PATH", "value": "/models/lstm-gru-encoder.pt" }, { "name": "FINBERT_MODEL_PATH", "value": "/models/finbert" } ], "image": "kratos-ai/fastapi-service:latest", "name": "fastapi-service", "ports": [ { "containerPort": 8000 } ], "resources": { "limits": { "cpu": "1", "memory": "2Gi" }, "requests": { "cpu": "500m", "memory": "1Gi" } }, "volumeMounts": [ { "mountPath": "/models", "name": "model-store" } ] } ], "volumes": [ { "name": "model-store", "persistentVolumeClaim": { "claimName": "kratos-model-pvc" } } ] } } } }, "component": { "version": "v1", "kind": "Deployment", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "00000000-0000-0000-0000-000000000000", "schemaVersion": "", "version": "", "displayName": "kratos-fastapi-service-svc", "description": "", "format": "", "model": null, "modelReference": { "displayName": "", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "" }, "name": "", "registrant": { "kind": "" }, "version": "" }, "styles": null, "capabilities": null, "status": null, "metadata": { "configurationUISchema": "", "genealogy": "", "instanceDetails": null, "isAnnotation": false, "isNamespaced": false, "published": false }, "configuration": { "apiVersion": "v1", "kind": "Service", "metadata": { "labels": { "app": "kratos-ai", "tier": "ml-service" }, "name": "kratos-fastapi-service" }, "spec": { "ports": [ { "port": 8000, "protocol": "TCP", "targetPort": 8000 } ], "selector": { "app": "kratos-ai", "tier": "ml-service" }, "type": "ClusterIP" } }, "component": { "version": "v1", "kind": "Service", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "00000000-0000-0000-0000-000000000000", "schemaVersion": "", "version": "", "displayName": "kratos-redis", "description": "", "format": "", "model": null, "modelReference": { "displayName": "", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "" }, "name": "", "registrant": { "kind": "" }, "version": "" }, "styles": null, "capabilities": null, "status": null, "metadata": { "configurationUISchema": "", "genealogy": "", "instanceDetails": null, "isAnnotation": false, "isNamespaced": false, "published": false }, "configuration": { "apiVersion": "apps/v1", "kind": "Deployment", "metadata": { "labels": { "app": "kratos-ai", "tier": "cache" }, "name": "kratos-redis" }, "spec": { "replicas": 1, "selector": { "matchLabels": { "app": "kratos-ai", "tier": "cache" } }, "template": { "metadata": { "labels": { "app": "kratos-ai", "tier": "cache" } }, "spec": { "containers": [ { "image": "redis:7-alpine", "name": "redis", "ports": [ { "containerPort": 6379 } ], "resources": { "limits": { "cpu": "250m", "memory": "256Mi" }, "requests": { "cpu": "100m", "memory": "128Mi" } } } ] } } } }, "component": { "version": "v1", "kind": "Deployment", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "00000000-0000-0000-0000-000000000000", "schemaVersion": "", "version": "", "displayName": "kratos-redis-svc", "description": "", "format": "", "model": null, "modelReference": { "displayName": "", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "" }, "name": "", "registrant": { "kind": "" }, "version": "" }, "styles": null, "capabilities": null, "status": null, "metadata": { "configurationUISchema": "", "genealogy": "", "instanceDetails": null, "isAnnotation": false, "isNamespaced": false, "published": false }, "configuration": { "apiVersion": "v1", "kind": "Service", "metadata": { "labels": { "app": "kratos-ai", "tier": "cache" }, "name": "kratos-redis" }, "spec": { "ports": [ { "port": 6379, "protocol": "TCP", "targetPort": 6379 } ], "selector": { "app": "kratos-ai", "tier": "cache" }, "type": "ClusterIP" } }, "component": { "version": "v1", "kind": "Service", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "00000000-0000-0000-0000-000000000000", "schemaVersion": "", "version": "", "displayName": "kratos-model-pvc", "description": "", "format": "", "model": null, "modelReference": { "displayName": "", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "" }, "name": "", "registrant": { "kind": "" }, "version": "" }, "styles": null, "capabilities": null, "status": null, "metadata": { "configurationUISchema": "", "genealogy": "", "instanceDetails": null, "isAnnotation": false, "isNamespaced": false, "published": false }, "configuration": { "apiVersion": "v1", "kind": "PersistentVolumeClaim", "metadata": { "labels": { "app": "kratos-ai" }, "name": "kratos-model-pvc" }, "spec": { "accessModes": [ "ReadWriteOnce" ], "resources": { "requests": { "storage": "5Gi" } } } }, "component": { "version": "v1", "kind": "PersistentVolumeClaim", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" }, { "id": "00000000-0000-0000-0000-000000000000", "schemaVersion": "", "version": "", "displayName": "kratos-secrets", "description": "", "format": "", "model": null, "modelReference": { "displayName": "", "id": "00000000-0000-0000-0000-000000000000", "model": { "version": "" }, "name": "", "registrant": { "kind": "" }, "version": "" }, "styles": null, "capabilities": null, "status": null, "metadata": { "configurationUISchema": "", "genealogy": "", "instanceDetails": null, "isAnnotation": false, "isNamespaced": false, "published": false }, "configuration": { "apiVersion": "v1", "kind": "Secret", "metadata": { "labels": { "app": "kratos-ai" }, "name": "kratos-secrets" }, "stringData": { "mongodb-uri": "REPLACE_WITH_MONGODB_ATLAS_CONNECTION_STRING" }, "type": "Opaque" }, "component": { "version": "v1", "kind": "Secret", "schema": "" }, "created_at": "0001-01-01T00:00:00Z", "updated_at": "0001-01-01T00:00:00Z" } ], "relationships": null }