Comments (11)
@tczekajlo, thanks for pointing that out. I made changes to the
rasa-config-files-configmap.yaml
andrasa-deployment.yaml
and currently have a working install on this branch.I'll review the
rasax.nginx
config.Can you give me an idea of what configuration items you're thinking of? Is there something about my current PR that would cause an issue?
/ /robots.txt /core/ /webhooks/ /socket.io /api/ws /api/chat /nginx_status
I think that the ingress-nginx configuration shows well what has to be added to an ingress/proxy/whatever is used to get it to work.
https://github.com/RasaHQ/rasa-x-helm/blob/main/charts/rasa-x/templates/rasa-x-ingress.yaml
https://github.com/RasaHQ/rasa-x-helm/blob/main/charts/rasa-x/templates/rasa-open-source-ingress.yaml
For rasa-x we have to add rewrite for paths and add headers:
if ($arg_environment = "") {
rewrite ^/api/chat$ /core/webhooks/rasa/webhook last;
}
if ($arg_environment = "production") {
rewrite ^/api/chat$ /core/webhooks/rasa/webhook last;
}
if ($request_uri ~ ^/robots.txt$) {
return 200 "User-agent: *\nDisallow: /\n";
}
and
add_header X-Robots-Tag none;
Fox rasa, we have to remember to redirect all requests for the following paths to the rasa backend:
/core/(.*)
/webhooks/
/socket.io
and the last thing, we have to remember to update connections for /api/ws
(ingress-nginx is doing it automatically so we don't add it to ingress configuration, but we have it in the nginx image)
Recap
Your current PR looks good in general if we only take into account that we wanna add support for service type, and I think with some small changes we can merge it soon. The issue I see here is a bit different, probably if someone exposes the rasa and rasa-x services directly then expect that it's going to work, so I think we should document/say clearly that "you can do that BUT be aware it requires additional configuration on your side"
from rasa-x-helm.
Thanks for the issue, @degiz will get back to you about it soon!
You may find help in the docs and the forum, too 🤗
from rasa-x-helm.
cc @tczekajlo
from rasa-x-helm.
Yes, this is needed for rasa-x
and rasa-production
in particular.
from rasa-x-helm.
@tczekajlo I think we should move port
to service.port
along with allowing specification of service type
, nodePort
and loadBalancerIP
. WDYT?
I'm putting together a PR that supports port
& service.port
with priority given to service.port
.
rasax:
service:
type: ClusterIP
port: 5002
nodePort:
loadBalancerIP:
versions:
rasaProduction:
type: ClusterIP
port: 5005
nodePort:
loadBalancerIP:
from rasa-x-helm.
@tczekajlo I think we should move
port
toservice.port
along with allowing specification of servicetype
,nodePort
andloadBalancerIP
. WDYT?I'm putting together a PR that supports
port
&service.port
with priority given toservice.port
.rasax: service: type: ClusterIP port: 5002 nodePort: loadBalancerIP: versions: rasaProduction: type: ClusterIP port: 5005 nodePort: loadBalancerIP:
Hmm, exposing directly rasa and rasa-x services won't work. We add additional configuration to the nginx/or ingress-nginx that is required by the services and exposing them without this configuration will make that at some point they don't work correctly.
If we wanna add the only support for a service type that's ok, but if users want to use it to expose the services directly it won't work without additional configuration on their side.
from rasa-x-helm.
@tczekajlo, thanks for pointing that out. I made changes to the rasa-config-files-configmap.yaml
and rasa-deployment.yaml
and currently have a working install on this branch.
I'll review the rasax.nginx
config.
Can you give me an idea of what configuration items you're thinking of? Is there something about my current PR that would cause an issue?
/
/robots.txt
/core/
/webhooks/
/socket.io
/api/ws
/api/chat
/nginx_status
from rasa-x-helm.
@rgstephens next week I'm off, if you need any input please ping @RasaHQ/infrastructure
from rasa-x-helm.
After looking through the endpoints, it seems like the main one that needs to be available if someone isn't using the nginx image or ingress is the Rasa X /app/ws
websocket which is used by rasa-production
and rasa-worker
.
To finish up the PR I'll add notes in the README about the additional configuration requirement.
from rasa-x-helm.
@tczekajlo I think this is ready and that there is no additional config requirement that needs to be documented.
from rasa-x-helm.
Support for setting service type for Rasa X was added in the 4.2 version. The rasa production deployment is deprecated and not supported anymore, please use the dedicated chart for it (https://helm.rasa.com).
from rasa-x-helm.
Related Issues (20)
- OpenShift Installation Issues HOT 7
- Update the chart dependencies
- Add support to the new IngressClassName spec HOT 2
- [FR] Allow the Chart to create extra manifest HOT 4
- [FR] Add support to the new IngressClassName spec to Rasa X Ingress HOT 1
- [FR] Upgrade the chart to use Rasa v3.* HOT 2
- [FR] Helm Chart improvements: priorityClassName HOT 8
- PV not created HOT 5
- warning: cannot overwrite table with non table for nodeCIDR (map[]) HOT 2
- Cannot upload model to rasa x 1.1 HOT 12
- rasa-x-redis secret HOT 4
- Fix network policies to use the names defined in values file HOT 2
- Add podAnnotations to each pod like the rasa-oss chart HOT 1
- Typo HOT 1
- proxy_pass directive missing / in _rasax.nginx.conf.tpl HOT 1
- Example of additionalDeploymentLabels: {} ?
- How to set hostAliases value in the values.yaml
- Add serviceAccountName value to Helm chart
- Option to set `RASA_ANALYTICS_DB_URL`
- Rename `rasa.rasaPlus.enabled`
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rasa-x-helm.