--
You received this message because you are subscribed to the Google Groups "kubernetes-sig-apps" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kubernetes-sig-...@googlegroups.com.
To post to this group, send email to kubernete...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/kubernetes-sig-apps/eddf51e8-2cf0-4454-b7f3-257257ce35d2%40googlegroups.com.
Hi,As I'm working on both projects (Kompose and OpenCompose), I can give you quick comparison and also reason why we started OpenCompose.There are similar ideas behind both projects, but one big difference is file format.Kompose is using already existing docker-compose definition. docker-compose yaml file is great simple and easy to learn. Most of the stuff from docker-compose file can be easily mapped to Kubernetes, but there are some problems.Big benefit there is that you can take existing stuff and use it on Kubernetes, but if you want to benefit from Kubernetes specific features (for example Pods), you can't :-( Docker-compose format was designed with slightly different view on container world that Kubernetes uses.We started OpenCompose because we think that there is need for something that is native to Kubernetes and easy to learn as docker-compose.Yes you are right, it is still something new to learn for potential users. But OpenCompose has one big benefit to Kompose, it allows you to leverage Kubernetes feature that you can't with docker-compose format.I'm happy to discuss this more.We are open to any ideas, feedback, anything ;-)
--Tomas
On Fri, Mar 3, 2017 at 12:04 PM <pska...@mirantis.com> wrote:
Looking on this description - what advantages this have to https://github.com/kelseyhightower/compose2kube--or even to already existing in k8s umbrela https://github.com/kubernetes-incubator/kompose ?
Looks like opencompose introduces new (possibly better) interface. But still new to learn by potential users of existing solutions.
You received this message because you are subscribed to the Google Groups "kubernetes-sig-apps" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kubernetes-sig-apps+unsub...@googlegroups.com.
To post to this group, send email to kubernetes-sig-apps@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/kubernetes-sig-apps/eddf51e8-2cf0-4454-b7f3-257257ce35d2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "kubernetes-sig-apps" group.
To view this discussion on the web visit https://groups.google.com/d/msgid/kubernetes-sig-apps/CAAYTw5NZgjjX350q3q2W_-WweoBNAsCKHuhAUGhBPCOm7%3DZ1Xw%40mail.gmail.com.To unsubscribe from this group and stop receiving emails from it, send an email to kubernetes-sig-apps+unsub...@googlegroups.com.
To post to this group, send email to kubernetes-sig-apps@googlegroups.com.
Hi,At KubeCon Dev Summit, we had an excellent conversation around "Application/Service Definition" - a higher level abstraction for Kubernetes resources. Talking to many Kubernetes contributors during the conference and dev summit, I felt that there is a definite need for such a higher level declarative abstraction (and I felt that we got some validation about the idea).Since then, we (few of us here at Red Hat) have been slowly but surely working towards it. We call it "OpenCompose" [1] (obviously, we aren't very creative with naming things). Recently, we saw a presentation from Brian Grant at sig-apps meeting
[2]. The proposal document [3] is very detailed (thanks Brian) and a great read. We found that there are a bunch of overlapping ideas.At this point, OpenCompose is a tool that understands a simple YAML syntax (the OpenCompose file reference). A micro service can be defined using this syntax and the OpenCompose tool can generate Kubernetes configurations from it. We have few examples and some documentation. We are working towards augmenting the file reference / syntax.The main goal for OpenCompose is to be easy to use application/microservice definition that developers can use without learning much of Kubernetes concepts. It should be very easy to write a simple application definition and from there on the tooling takes over. How easy? Just think about UX of Docker Compose and how easy it is for developers to write a compose file and bring up application. We have been extensively contributing to Kompose because we strongly believe that it helps developers migrate from Docker Compose to Kubernetes. But not all concepts of Kubernetes can be mapped 1-1 to Docker Compose and vice versa and this made us think about the problem. We have factored some of our thoughts into current implementation of OpenCompose file reference [4] and tool.There are many features from Brian's document that we would like to have in OpenCompose. And I think, it can be guiding document for OpenCompose although Brian's document is about common-of-the-shelf (COTS), I am sure that we can leverage from it.We would love to present the current version of OpenCompose at the next available slot during sig-apps weekly meeting.There is definitely a huge scope to improve and we need feedback from the community. What does the sig-apps folks think about what we have done until now? How can we collaborate and work together on this idea?If you have questions about OpenCompose, please reply to this thread , a bunch of us are subscribed to this list and we will get back to you.
Thanks,Pradeepto (on behalf of my teammates)--Pradeepto Bhattacharya
--
You received this message because you are subscribed to the Google Groups "kubernetes-sig-apps" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kubernetes-sig-apps+unsub...@googlegroups.com.
To post to this group, send email to kubernetes-sig-apps@googlegroups.com.
Hi Pradeepto, thanks for sharing, I really like where this project is going.I think the goal of helping beginners get started is a good one but too limited. In my opinion this kind of higher level abstraction is important not only for beginners but to anyone who doesn't do fancy stuff like trying to run non-12-factor legacy apps.
At the client I'm working with as a consultant right now we have a set of microservices we are running on Kubernetes. It's two applications with 6 services in total and we are already getting close to manifest file hell. To run one microservice we need 4 manifest files (deployment, service, hpa, ingress).
I think a higher level of abstraction could help this problem by mapping to reasonable defaults in the actual Kubernetes API objects - at the moment this is theory I would have to look into how much could be reasonably abstracted away.Another area where having a single service definition instead of a bunch of loosely coupled object would be avoiding mistakes. The above mentioned 4 objects are loosely coupled using labels. But in an ideal use-case of running 12-factor microservices I would like that linking to be done without me having to type the name of the service in 4-5 different places.
I could also imagine a runtime server-side component which would verify that all object got created successfully. Because of the loose coupling it's hard to tell whether your service is running fine because there all 4 objects that can fail independently or just be misconfigured and not pointing to each other (e.g. typo in Service selector).I might be projecting my own use-case into a project that has different goals, but maybe these goals could be covered by OpenCompose alongside the goal of helping new users get up to speed. What do you think?Adam
On Wednesday, March 1, 2017 at 12:27:06 PM UTC+1, Pradeepto Bhattacharya wrote:Hi,At KubeCon Dev Summit, we had an excellent conversation around "Application/Service Definition" - a higher level abstraction for Kubernetes resources. Talking to many Kubernetes contributors during the conference and dev summit, I felt that there is a definite need for such a higher level declarative abstraction (and I felt that we got some validation about the idea).Since then, we (few of us here at Red Hat) have been slowly but surely working towards it. We call it "OpenCompose" [1] (obviously, we aren't very creative with naming things). Recently, we saw a presentation from Brian Grant at sig-apps meeting [2]. The proposal document [3] is very detailed (thanks Brian) and a great read. We found that there are a bunch of overlapping ideas.At this point, OpenCompose is a tool that understands a simple YAML syntax (the OpenCompose file reference). A micro service can be defined using this syntax and the OpenCompose tool can generate Kubernetes configurations from it. We have few examples and some documentation. We are working towards augmenting the file reference / syntax.The main goal for OpenCompose is to be easy to use application/microservice definition that developers can use without learning much of Kubernetes concepts. It should be very easy to write a simple application definition and from there on the tooling takes over. How easy? Just think about UX of Docker Compose and how easy it is for developers to write a compose file and bring up application. We have been extensively contributing to Kompose because we strongly believe that it helps developers migrate from Docker Compose to Kubernetes. But not all concepts of Kubernetes can be mapped 1-1 to Docker Compose and vice versa and this made us think about the problem. We have factored some of our thoughts into current implementation of OpenCompose file reference [4] and tool.There are many features from Brian's document that we would like to have in OpenCompose. And I think, it can be guiding document for OpenCompose although Brian's document is about common-of-the-shelf (COTS), I am sure that we can leverage from it.We would love to present the current version of OpenCompose at the next available slot during sig-apps weekly meeting.There is definitely a huge scope to improve and we need feedback from the community. What does the sig-apps folks think about what we have done until now? How can we collaborate and work together on this idea?If you have questions about OpenCompose, please reply to this thread , a bunch of us are subscribed to this list and we will get back to you.Thanks,Pradeepto (on behalf of my teammates)--Pradeepto Bhattacharya
--
You received this message because you are subscribed to the Google Groups "kubernetes-sig-apps" group.
To unsubscribe from this group and stop receiving emails from it, send an email to kubernetes-sig-apps+unsub...@googlegroups.com.
To post to this group, send email to kubernetes-sig-apps@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/kubernetes-sig-apps/1e6e1a43-05ce-4546-8748-111e9e217aa3%40googlegroups.com.
If you're just running 12-factor apps, have you considered one of the multitude of PaaSes on K8s, such as Openshift, Deis Workflow, Rancher, Kel, GiantSwarm, Hasura, ...? Or if you just need functions, Fission, Kubeless, Iron.io, ...?
Is the number of files a problem? You can put multiple resources into a single file.
Would a template work for your use cases?
To post to this group, send email to kubernete...@googlegroups.com.