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

Change Kubeflow Distributions Table #3693

Merged
merged 15 commits into from
Mar 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions assets/scss/_styles_project.scss
Original file line number Diff line number Diff line change
Expand Up @@ -285,6 +285,14 @@ footer {
}
}

// --------------------------------------------------
// Installing Kubeflow page
// --------------------------------------------------
.distributions-table thead {
background-color: $primary;
color: $secondary;
}

// --------------------------------------------------
// 404 page
// --------------------------------------------------
Expand Down
217 changes: 94 additions & 123 deletions content/en/docs/started/installing-kubeflow.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,243 +5,214 @@ weight = 20

+++

## What is Kubeflow?
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this looks better as H3, like the How to install Kubeflow? below it:

Suggested change
## What is Kubeflow?
### What is Kubeflow?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We might want to keep titles with the same font if it is not sub-title. Like in Architecture page: https://deploy-preview-3693--competent-brattain-de2d6d.netlify.app/docs/started/architecture/#conceptual-overview.
So all title fonts on the same level will be consistent.

So if you don't want to make How to install Kubeflow? subtitle, I can change it as follows:

## How to install Kubeflow? 

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@andreyvelich either make both of them H2 or both of them H3, it's weird to have them different.

I prefer using H3 (smaller title) for the intro questions and H2 (bigger title) for the later sections. The focus of this page is "Installing Kubeflow", so we want to draw the reader's attention to the later headings (which already use H2).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will make them both H2. If we make the first title H3, website will show outline not accurate
Screenshot 2024-03-08 at 13 07 00


Kubeflow is an end-to-end Machine Learning (ML) platform for Kubernetes, it provides components for each stage in the ML lifecycle, from exploration through to training and deployment.
Operators can choose what is best for their users, there is no requirement to deploy every component.
To read more about the components and architecture of Kubeflow, please see the <a href="/docs/started/architecture/">Kubeflow Architecture</a> page.

### How to install Kubeflow?
Learn more about Kubeflow in the [Introduction](/docs/started/introduction/) and
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can put a newline here for visual separation:

Suggested change
Learn more about Kubeflow in the [Introduction](/docs/started/introduction/) and
Learn more about Kubeflow in the [Introduction](/docs/started/introduction/) and

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems not to be addressed.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is in reply to a suggestion for a newline.

It was added a few commits ago, I can see it on the test website:

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SGTM

[Architecture](/docs/started/architecture/) pages.

## How to install Kubeflow?

There are two pathways to get up and running with Kubeflow, you may either:
Anywhere you are running Kubernetes, you should be able to run Kubeflow.
There are two primary ways to install Kubeflow:

1. [Use a packaged distribution](#packaged-distributions-of-kubeflow)
2. [Use the raw manifests](#raw-kubeflow-manifests) <sup>(for advanced users)</sup>
1. [**Packaged Distributions**](#packaged-distributions-of-kubeflow)
1. [**Raw Manifests**](#raw-kubeflow-manifests) <sup>(advanced users)</sup>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. [**Raw Manifests**](#raw-kubeflow-manifests) <sup>(advanced users)</sup>
2. [**Raw Manifests**](#raw-kubeflow-manifests) <sup>(advanced users)</sup>

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Markdown allows to use the same number twice, and it makes it easier to add new elements without updating multiple lines.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And I can't reply to the above comment, so here is a link to my in-thread reply. https://github.com/kubeflow/website/pull/3693/files#r1521923323

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see. SGTM


<a id="packaged-distributions"></a>
<a id="install-a-packaged-kubeflow-distribution"></a>
## Packaged Distributions of Kubeflow

## Packaged Distributions of Kubeflow

Packaged distributions are maintained by various organizations and typically aim to provide
a simplified installation and management experience for Kubeflow. Some distributions can be
deployed on [all certified Kubernetes distributions](https://kubernetes.io/partners/#conformance),
while others target a specific platform (e.g. EKS or GKE).

{{% alert title="Note" color="warning" %}}
Packaged distributions are developed and supported by their respective maintainers, <b>the Kubeflow community does not endorse or certify any specific distribution</b>.
Packaged distributions are developed and supported by their respective maintainers.
The Kubeflow community <strong>does not endorse or certify</strong> any specific distribution.

In the near future, there are plans to introduce <a href="https://github.com/kubeflow/community/blob/master/proposals/kubeflow-conformance-program-proposal.md">conformance testing for distributions</a>, you may track progress on this initiative by following <a href="https://github.com/kubeflow/kubeflow/issues/6485">kubeflow/kubeflow#6485</a>.
{{% /alert %}}

### Active Distributions

The following table lists <b>active distributions</b> that have <b>had a recent release</b> (within the last 6 months).
The following table lists distributions which are <em>maintained</em> by their respective maintainers:

<div class="table-responsive">
<div class="table-responsive distributions-table">
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Based on the discussions in today's community meeting, I think a good compromise is:

  1. Keep a single table for all distributions.
  2. Re-add the "Distribution Name" column:
    • But leave it empty for all distributions currently called "Kubeflow on XXX".
    • Have each distribution make a PR to update the table, once they decide how they want to brand themselves (within the confines of the Kubeflow trademark rules)
  3. Order the columns (from left to right):
    • Platform
    • Kubeflow Version
    • Distribution Name
    • Maintainer
    • Links
  4. Sort the rows of the table alphabetically (starting from the left-most column).

For example:

Platform Kubeflow Version Distribution Name Maintainer Links
All Certified Kubernetes Distributions 1.8.0[Release Notes] Charmed Kubeflow Canonical Website
All Certified Kubernetes Distributions 1.7.0[Version Matrix] deployKF Aranui Solutions Website
Google Kubernetes Engine (GKE) 1.8.0[Release Notes] - Google Cloud Website
IBM Cloud Kubernetes Service (IKS) 1.8.0[Release Notes] - IBM Cloud Website
... ... ... ...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am supportive of this proposal. One comment - The initial sort might be by Kubeflow Version (rather than by Platform/alpha). This rewards the distributions that stay up to date. If the Kubeffow Version is not the 1st column, this ordering might be confusing to the reader. If the Version is the 1st column, that might be awkward looking. We might add a comment in the Header - Kubeflow Distributions sorted by latest Kubeflow Version supported.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jbottum from a user perspective, they will be focused on finding a distribution that works on their platform, not finding whatever the "latest" version for other platforms might be.

I think that's why @andreyvelich suggested sorting by the target platform.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@thesuperzapper

Re-add the "Distribution Name" column:

What if distribution owners don't want to give name for their distribution ?

Distribution Name order

From my perspective, maintainer column is more important for users than distribution name.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What if distribution owners don't want to give name for their distribution ?

I think we can just put it as - in those cases, like when it's not really a distribution (i.e. a ML Platform), but a simple README of how to use the Kubeflow manifests on their platform.

From my perspective, maintainer column is more important for users than distribution name.

I think most distribution maintainers would prefer to "brand" their distribution as its name, rather than their company name, so my preference is to list "Distribution Name" before "Maintainer",

However, I am open to hearing others' thoughts on this.

<table class="table table-bordered">
<thead class="thead-light">
<thead>
<tr>
<th>Name</th>
<th>Maintainer</th>
<th>Maintainer
<br><small>Distribution Name</small>
</th>
<th>Kubeflow Version</th>
<th>Target Platform</th>
<th>Link</th>
<th>Kubeflow Version</th>
</tr>
</thead>
<tbody>
<tr>
<td>Kubeflow on AWS</td>
<td>Amazon Web Services</td>
<td>
Amazon Elastic Kubernetes Service (EKS)
</td>
<td>
<a href="https://awslabs.github.io/kubeflow-manifests">Website</a>
Amazon Web Services
</td>
<td>
{{% aws/latest-version %}} <sup>[<a href="https://github.com/awslabs/kubeflow-manifests/releases">Release Notes</a>]</sup>
</td>
</tr>
<tr>
<td>Kubeflow on Azure</td>
<td>Microsoft Azure</td>
<td>
Azure Kubernetes Service (AKS)
</td>
<td>
<a href="https://azure.github.io/kubeflow-aks/main">Website</a>
Amazon Elastic Kubernetes Service (EKS)
</td>
<td>
1.7.0 <sup>[<a href="https://github.com/Azure/kubeflow-aks/releases/tag/v1.7.0">Release Notes</a>]</sup>
<a href="https://awslabs.github.io/kubeflow-manifests">Website</a>
</td>
</tr>
<tr>
<tr>
<td>Kubeflow on Google Cloud</td>
<td>Google Cloud</td>
<td>
Google Kubernetes Engine (GKE)
Aranui Solutions
<br><small>deployKF</small>
</td>
<td>
<a href="https://googlecloudplatform.github.io/kubeflow-gke-docs">Website</a>
{{% deploykf/latest-version %}} <sup>[<a href="https://www.deploykf.org/releases/version-matrix/#kubeflow-tools">Version Matrix</a>]</sup>
</td>
<td>
All Certified Kubernetes Distributions
</td>
<td>
1.8.0 <sup>[<a href="https://googlecloudplatform.github.io/kubeflow-gke-docs/docs/changelog/#180">Release Notes</a>]</sup>
<a href="https://www.deploykf.org/">Website</a>
</td>
</tr>
<tr>
<td>Kubeflow on IBM Cloud</td>
<td>IBM Cloud</td>
<td>
IBM Cloud Kubernetes Service (IKS)
Canonical
<br><small>Charmed Kubeflow</small>
</td>
<td>
<a href="https://ibm.github.io/manifests/">Website</a>
{{% canonical/latest-version %}} <sup>[<a href="https://charmed-kubeflow.io/docs/release-notes">Release Notes</a>]</sup>
</td>
<td>
{{% iks/latest-version %}} <sup>[<a href="https://github.com/IBM/manifests/releases/tag/v{{% iks/latest-version %}}">Release Notes</a>]</sup>
All Certified Kubernetes Distributions
</td>
<td>
<a href="https://charmed-kubeflow.io/">Website</a>
</td>
</tr>
<tr>
<td>Kubeflow on Nutanix</td>
<td>Nutanix</td>
<td>
Nutanix Kubernetes Engine
Google Cloud
</td>
<td>
<a href="https://nutanix.github.io/kubeflow-manifests">Website</a>
{{% gke/latest-version %}} <sup>[<a href="https://googlecloudplatform.github.io/kubeflow-gke-docs/docs/changelog/">Release Notes</a>]</sup>
</td>
<td>
{{% nutanix/latest-version %}}
Google Kubernetes Engine (GKE)
</td>
<td>
<a href="https://googlecloudplatform.github.io/kubeflow-gke-docs">Website</a>
</td>
</tr>
<tr>
<td>Charmed Kubeflow</td>
<td>Canonical</td>
<td>
All Certified Kubernetes Distributions <sup>[<a href="https://kubernetes.io/partners/#conformance">1</a>]</sup>
IBM Cloud
</td>
<td>
<a href="https://charmed-kubeflow.io/">Website</a>
{{% iks/latest-version %}} <sup>[<a href="https://github.com/IBM/manifests/releases/tag/v{{% iks/latest-version %}}">Release Notes</a>]</sup>
</td>
<td>
IBM Cloud Kubernetes Service (IKS)
</td>
<td>
1.8.0
<a href="https://ibm.github.io/manifests/">Website</a>
</td>
</tr>
<tr>
<td>deployKF</td>
<td>Aranui Solutions</td>
<td>
All Certified Kubernetes Distributions <sup>[<a href="https://kubernetes.io/partners/#conformance">1</a>]</sup>
Microsoft Azure
</td>
<td>
<a href="https://www.deploykf.org/">Website</a>
{{% azure/latest-version %}} <sup>[<a href="https://github.com/Azure/kubeflow-aks/releases/tag/v{{% azure/latest-version %}}">Release Notes</a>]</sup>
</td>
<td>
1.7.0 <sup>[<a href="https://www.deploykf.org/releases/version-matrix/#kubeflow-tools">Version Matrix</a>]</sup>
Azure Kubernetes Service (AKS)
</td>
<td>
<a href="https://azure.github.io/kubeflow-aks/main">Website</a>
</td>
</tr>
<tr>
<td>Kubeflow on Oracle Container Engine for Kubernetes</td>
<td>Oracle</td>
<td>
Oracle Container Engine for Kubernetes (OKE)
Nutanix
</td>
<td>
<a href="https://github.com/oracle-devrel/kubeflow-oke">Website</a>
{{% nutanix/latest-version %}}
</td>
<td>
1.6.0
</td>
</tr>
<tr>
<td>Kubeflow on vSphere</td>
<td>VMware</td>
<td>VMware vSphere</td>
<td>
<a href="https://vmware.github.io/vSphere-machine-learning-extension/">Website</a>
Nutanix Kubernetes Engine
</td>
<td>
1.6.1
<a href="https://nutanix.github.io/kubeflow-manifests">Website</a>
</td>
</tr>
</tbody>
</table>
</div>

### Legacy Distributions
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have accidentally left all the legacy distributions (and placed them under the maintained table), if they aren't in a separate table, let's remove them.

We need to remove:

  • Argoflow
  • Kubeflow on OpenShift
  • Arrikto Enterprise Kubeflow

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will remove Argoflow + Arrikto, but for OpenShift can we can confirmation from the RedHat team @rimolive @terrytangyuan @rareddy @kubeflow/red-hat ?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Red Hat is preparing to help with kubeflow 1.9 distribution testing. Let's keep it

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds good, thanks for confirming @rimolive!


The following table lists <b>legacy distributions</b> which have <b>not had a recent release</b> (within the last 6 months).

<div class="table-responsive">
<table class="table table-bordered">
<thead class="thead-light">
<tr>
<th>Name</th>
<th>Maintainer</th>
<th>Target Platform</th>
<th>Link</th>
<th>Latest Release</th>
</tr>
</thead>
<tbody>
<tr>
<td>Argoflow</td>
<td>Argoflow Users</td>
<td>
All Certified Kubernetes Distributions <sup>[<a href="https://kubernetes.io/partners/#conformance">1</a>]</sup>
</td>
<td>
<a href="https://github.com/argoflow">Website</a>
Red Hat
<br><small>Open Data Hub</small>
</td>
<td>
1.3.0
{{% redhat/latest-version %}}
</td>
</tr>
<tr>
<td>Kubeflow on OpenShift</td>
<td>Red Hat</td>
<td>
OpenShift
</td>
<td>
<a href="https://github.com/opendatahub-io/manifests">Website</a>
</td>
<td>
1.6.0
</td>
</tr>
<tr>
<td>Arrikto Enterprise Kubeflow</td>
<td>Arrikto</td>
<td>
◦ Amazon Elastic Kubernetes Service (EKS)
<br>
◦ Azure Kubernetes Service (AKS)
<br>
◦ Google Kubernetes Engine (GKE)
VMware
</td>
<td>
<a href="https://www.arrikto.com/enterprise-kubeflow/">Website</a>
{{% vmware/latest-version %}}
</td>
<td>
1.5.0 <sup>[<a href="https://docs.arrikto.com/Changelog.html">Release Notes</a>]</sup>
VMware vSphere
</td>
<td>
<a href="https://vmware.github.io/vSphere-machine-learning-extension/">Website</a>
</td>
</tr>
</tbody>
</table>
</div>

<a id="manifests"></a>
<a id="install-the-kubeflow-manifests-manually"></a>
## Raw Kubeflow Manifests

The raw Kubeflow Manifests are aggregated by the [Manifests Working Group](https://github.com/kubeflow/community/tree/master/wg-manifests)
and are intended to be used as the **base of packaged distributions**.

Advanced users may choose to install the manifests for a specific Kubeflow version by following the
instructions in the `README` of the [`kubeflow/manifests`](https://github.com/kubeflow/manifests) repository.

- [**Kubeflow 1.8:**](/docs/releases/kubeflow-1.8/)
- [`v1.8-branch`](https://github.com/kubeflow/manifests/tree/v1.8-branch#installation) <sup>(development branch)</sup>
- [`v1.8.0`](https://github.com/kubeflow/manifests/tree/v1.8.0#installation)
- [**Kubeflow 1.7:**](/docs/releases/kubeflow-1.7/)
- [`v1.7-branch`](https://github.com/kubeflow/manifests/tree/v1.7-branch#installation) <sup>(development branch)</sup>
- [`v1.7.0`](https://github.com/kubeflow/manifests/tree/v1.7.0#installation)

{{% alert title="Warning" color="warning" %}}
This method is for advanced users.
Kubeflow is a complex system with many components and dependencies.
Using the raw manifests requires a deep understanding of Kubernetes, Istio, and Kubeflow itself.

The Kubeflow community is not able to provide support for environment-specific issues when using the raw manifests.
When using the raw manifests, the Kubeflow community is not able to provide support for environment-specific issues or custom configurations.
If you need support, please consider using a [packaged distribution](#packaged-distributions-of-kubeflow).
Nevertheless, we welcome contributions and bug reports very much.
{{% /alert %}}

The raw <a href="https://github.com/kubeflow/manifests">Kubeflow manifests</a> are aggregated by the <a href="https://github.com/kubeflow/community/tree/master/wg-manifests">Manifests Working Group</a>
and are intended to be used as the base of packaged distributions,
<b>advanced users may choose to install the manifests directly</b> by following <a href="https://github.com/kubeflow/manifests#installation">these instructions</a>.

<a id="next-steps"></a>

## Next steps

* Review the Kubeflow <a href="/docs/components/">component documentation</a>
* Explore the <a href="/docs/components/pipelines/sdk/">Kubeflow Pipelines SDK</a>
- Review the Kubeflow <a href="/docs/components/">component documentation</a>
- Explore the <a href="/docs/components/pipelines/sdk/">Kubeflow Pipelines SDK</a>
1 change: 1 addition & 0 deletions layouts/shortcodes/azure/latest-version.html
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1.7.0
2 changes: 2 additions & 0 deletions layouts/shortcodes/canonical/OWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
approvers:
- ca-scribner
1 change: 1 addition & 0 deletions layouts/shortcodes/canonical/latest-version.html
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1.8.0
2 changes: 2 additions & 0 deletions layouts/shortcodes/deploykf/OWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
approvers:
- thesuperzapper
1 change: 1 addition & 0 deletions layouts/shortcodes/deploykf/latest-version.html
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1.7.0
1 change: 0 additions & 1 deletion layouts/shortcodes/iks/latest-branch.html

This file was deleted.

1 change: 1 addition & 0 deletions layouts/shortcodes/oracle/latest-version.html
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1.6.0
2 changes: 2 additions & 0 deletions layouts/shortcodes/redhat/OWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
approvers:
- rimolive
1 change: 1 addition & 0 deletions layouts/shortcodes/redhat/latest-version.html
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1.6.0
3 changes: 3 additions & 0 deletions layouts/shortcodes/vmware/OWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
approvers:
- liuqi
- xujinheng
1 change: 1 addition & 0 deletions layouts/shortcodes/vmware/latest-version.html
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1.6.1