eclipse-archived / codewind

The official repository of the Eclipse Codewind project
https://codewind.dev
Eclipse Public License 2.0
113 stars 45 forks source link

Should this include IBM Cloud Kubernetes Service #2882

Closed jasperchui closed 4 years ago

jasperchui commented 4 years ago

Description: https://www.eclipse.org/codewind/remote-deploying-codewind.html#prerequisites Have an active Kubernetes context and log in to the cluster. Codewind can run in OpenShift 3.11, OpenShift 4.3, OpenShift in IBM Public Cloud, standalone Kubernetes, and Kubernetes in Docker.

johnmcollier commented 4 years ago

Here's my 2 cents: IKS should be part of that list, but:

IMO, since we're Kube-generic, I'm not crazy on listing specific distributions of Kube that we should support. I'd almost rather we list the requirements we have on Kube (Kube version, nginx ingress, storage, etc), rather than saying "OpenShift 3.11, OpenShift 4.x, ..."

rtaniwa commented 4 years ago

I kind of agree with you @johnmcollier to keep it simple for us. I do however wonder...will doing so make it more difficult for our users (especially those that may be newer to Kube) to be able to determine what version of those distributions suits their needs for prerequisites? Just curious if a meet in the middle approach makes sense where we list the version requirements for the various components, but then have something that states what distributions we have tested on? Curious what other tools similar to ours do?

jasperchui commented 4 years ago

I agree with the meet in the middle approach. For those who know Kubernetes the version information will be sufficient and for those working with specific Cloud providers they will have confidence this has been tested against it.

I found Coder (https://coder.com/docs/installation). For their installation they have: Kubernetes Node Requirements Coder Enterprise runs on any Kubernetes cluster that supports the following requirements.

We require that you run at least Kubernetes version 1.13.7 with the following extensions enabled:

apps/v1 rbac.authorization.k8s.io/v1 metrics.k8s.io storage.k8s.io/v1 networking.k8s.io/v1 extensions/v1beta1 We recommend at least 2 cores and 4GB of RAM for the basic control services. A disk as small as 20GB will suffice.

The following throughput is recommended:

read: 3000 IOPS at 50MB/s write: 3000 IOPS at 50MB/s Furthermore, for each active developer we require 1 core, 1 GB of RAM, and 10 GB of storage.

Weโ€™re happy to look into support for different versions and configurations.

And deployment guides for Amazon Elastic Kubernetes Engine (EKS) and Google Kubernetes Engine (GKE).

johnmcollier commented 4 years ago

Yeah, agreed on a middle approach. What about something like:

Weโ€™ve validated Codewind on these Kubernetes distributions
- OpenShift 4.3
- IKS
- ...

However, Codewind should be able to run on any Kubernetes distribution that meets the following requirements:
- Kube 1.11
- Support for RWX volumes
- ...
jgwest commented 4 years ago

My two cents:

This guidance would also apply if we wanted to include specific step-by-step instructions on how to install to IKS on the Codewind pages (equivalent to what Che has for AWS/Azure)

sishida commented 4 years ago

For updates based on feedback in this issue, please see the PR, https://github.com/eclipse/codewind-docs/pull/623.

@johnmcollier, @jgwest, Could you please check the list of Kubernetes distributions and see if we're missing anything?

I'm also not sure if this is the best place for the contribution link...it almost feels like an ad in the midst of the doc. ๐Ÿ˜…If this is an accepted practice in open source communities, though, we can leave it. ๐Ÿ˜„

jgwest commented 4 years ago

@sishida

It's fairly common for open source components (that can be hosted in the cloud) to include references to an inexhaustive set of specific public clouds they support, and/or to provide quick start guidelines that use those clouds.

Below are some examples of that I have seen recently, but let us know if it feels like from your perspective that we are crossing a line from helpful, slightly self-interested user guidance, into blatant, shameless self-promotion ๐Ÿ˜„ .

JenkinsX: https://jenkins-x.io/docs/getting-started/ (GCP and AWS)

Che: https://www.eclipse.org/che/docs/che-7/hosted-che/ (OpenShift Online, AWS, Azure)

Theia: https://theia-ide.org/ (GitPod, their pay service)

OpenShift: https://www.openshift.com/ (Azure, IKS, Dedicated on AWS/GCE)

Mongo: https://www.mongodb.com/cloud/atlas/pricing (AWS, Azure, GCP)

Kubeflow: https://www.kubeflow.org/docs/started/getting-started/ (AWS, Azure, GCP, IKS, OpenSHift)

sishida commented 4 years ago

@jgwest Thank you for clarifying that the list doesn't have to be exhaustive. I think we're good to go if we're following standard conventions and practices of the wider community. :)

sishida commented 4 years ago

PR merged! Closing this issue. ๐Ÿ‘