Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

run apicurio-studio on kubernetes #944

Closed
lcostamanha opened this issue Oct 18, 2019 · 9 comments
Closed

run apicurio-studio on kubernetes #944

lcostamanha opened this issue Oct 18, 2019 · 9 comments
Labels

Comments

@lcostamanha
Copy link

hey bro,
sorry if i have asked you something terrible, is it possible to use api in kubernetes (aws)?
I did some tests and I was unsuccessful, we would like to use your project, have any tips, helm that can help me?
Thank you very much, see you later.

@lcostamanha lcostamanha changed the title run apicurio-studio on kubernetes (aws) run apicurio-studio on kubernetes Oct 21, 2019
@EricWittmann
Copy link
Member

The short answer to this, I believe is "yes". :) However, we don't run it directly on Kubernetes, but we do run it on OpenShift (for obvious reasons). I don't currently have an operator, but I have an OpenShift template that I use to deploy to OpenShift (back when templates were all the rage). Creating an operator is on the roadmap, but not yet ready. That said, another team here at Red Hat has in the past created an operator for Apicurio Studio - but it hasn't been contributed upstream yet.

For now, you can use the OS template as a guide:

https://github.com/Apicurio/apicurio-studio/tree/master/distro/openshift

There are several templates - the one called apicurio-standalone-template.yml has EVERYTHING in it, but there are other templates that split up the various components in sensible ways. It all depends on how you want to deploy the components.

This should be a decent start for you - but I'm happy to help out if you have questions. Better yet, if you come up with a helm operator or something that'd be a great contribution! :)

@EricWittmann
Copy link
Member

Also sorry for the delay in my response - I've been out on leave for a little while. Back now!

@yrsurya
Copy link

yrsurya commented Jun 30, 2020

Is there any plans on releasing offcial helm chart that can run in any kubernetes platform ? I am trying to setup in EKS . Also out of this official images which one I need to use to get up and running apicurio studio succesfully? - https://hub.docker.com/u/apicurio

@EricWittmann
Copy link
Member

Eventually I would expect that we'll have a Go based operator for installing in k8s/OpenShift. However, that does not exist yet. We recently had a Helm contribution here:

https://github.com/Apicurio/apicurio-studio/tree/master/distro/helm

You could give that a try.

@EricWittmann
Copy link
Member

Also, although we don't really have a production installation guide, we do have an article that should help explain the architecture and which components you would need to run. You can find the guide here:

https://apicurio-studio.readme.io/docs/running-apicurio-on-openshift-or-docker

Finally, if you are experienced with kubernetes it might be useful to explore these yaml files:

https://github.com/Apicurio/apicurio-studio/tree/master/distro/kubernetes

@yrsurya
Copy link

yrsurya commented Jul 2, 2020

Thanks for the link @EricWittmann , I am trying helm3 installation , I already installed keycloack and microcks in same EKS cluster while trying to install apicurio facing following issue for apicurio db pod -
│ Initializing database ││ 2020-07-02T21:27:52.901789Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). ││ 2020-07-02T21:27:52.903060Z 0 [ERROR] --initialize specified but the data directory has files in it. Aborting. ││ 2020-07-02T21:27:52.903083Z 0 [ERROR] Aborting ││ stream closed

Any help would be appreciated

@EricWittmann
Copy link
Member

Hey @yrsurya sorry for the delay - I was out on vacation. Did you get this solved or are you still having an issue? If it's still an issue I wonder if you could provide the full server log for the failing pod.

@willemm
Copy link

willemm commented Jan 20, 2021

I had the same issue. That log was the complete log of the failing pod.

I managed to solve it by adding --ignore-db-dir=lost+found to the commandline args in the deployment.

After that I also had to add this because the mysql image runs as non-root:

  securityContext:
    fsGroup: 999

Edit: Turns out I additionally needed to add a rewrite annotation in the ingress for the apicurio websocket server. (translate /ws/xxx to /xxx)
Edit2: And fix the APICUR|IO_DB_CONNECTION_URL on the ws-deployment to actually use the database entry.

@EricWittmann
Copy link
Member

Thanks for the info, @willemm - hopefully this will help someone else in the future.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants