diff --git a/README.md b/README.md index 518e9eda4..34e72367b 100755 --- a/README.md +++ b/README.md @@ -1,8 +1,9 @@ -[![plan-examples](https://github.com/awslabs/data-on-eks/actions/workflows/plan-examples.yml/badge.svg?branch=main)](https://github.com/awslabs/data-on-eks/actions/workflows/plan-examples.yml) -# [Data on Amazon EKS (DoEKS)](https://awslabs.github.io/data-on-eks/) ![Data on EKS](website/static/img/doeks-logo-green.png) +# [Data on Amazon EKS (DoEKS)](https://awslabs.github.io/data-on-eks/) -**Build, Scale, and Optimize Data & AI/ML Platforms on [Amazon EKS](https://aws.amazon.com/eks/)!** π +[![plan-examples](https://github.com/awslabs/data-on-eks/actions/workflows/plan-examples.yml/badge.svg?branch=main)](https://github.com/awslabs/data-on-eks/actions/workflows/plan-examples.yml) + +### Build, Scale, and Optimize Data & AI/ML Platforms on [Amazon EKS](https://aws.amazon.com/eks/) π Welcome to the **Data on EKS** repository, a comprehensive resource for scaling your data and machine learning workloads on Amazon EKS and unlocking the power of [Gen AI](https://aws.amazon.com/generative-ai/). Harness the capabilities of [AWS Trainium](https://aws.amazon.com/machine-learning/trainium/), [AWS Inferentia](https://aws.amazon.com/machine-learning/inferentia/) and [NVIDIA GPUs](https://aws.amazon.com/nvidia/) to scale and optimize your Gen AI workloads with ease. @@ -33,21 +34,23 @@ Data on EKS(DoEKS) solution is categorized into the following focus areas. ## πββοΈGetting Started In this repository, you'll find a variety of deployment blueprints for creating Data/ML platforms with Amazon EKS clusters. These examples are just a small selection of the available blueprints - visit the [DoEKS website](https://awslabs.github.io/data-on-eks/) for the complete list of options. -π [EMR on EKS with Karpenter](https://awslabs.github.io/data-on-eks/docs/blueprints/amazon-emr-on-eks/emr-eks-karpenter) - π Start here if you are new to EMR on EKS. This blueprint deploys EMR on EKS cluster and uses [Karpenter](https://karpenter.sh/) to scale Spark jobs. +π [JupyterHub on EKS](https://awslabs.github.io/data-on-eks/docs/blueprints/ai-ml/jupyterhub) π This blueprint deploys a self-managed JupyterHub on EKS with Amazon Cognito authentication. + +π [Ray on EKS](https://awslabs.github.io/data-on-eks/docs/blueprints/ai-ml/ray) π This blueprint deploys Ray Operator on EKS with sample scripts. + +π [Trainium/Inferentia with TorchX and Volcano on EKS](https://awslabs.github.io/data-on-eks/docs/blueprints/ai-ml/trainium) π This blueprint deploys Gen AI blueprint on EKS with sample Training scripts. -π [Spark Operator with Apache YuniKorn on EKS](https://awslabs.github.io/data-on-eks/docs/blueprints/data-analytics/spark-operator-yunikorn) - This blueprint deploys EKS cluster and uses Spark Operator and Apache YuniKorn for running self-managed Spark jobs +π [EMR-on-EKS with Karpenter](https://awslabs.github.io/data-on-eks/docs/blueprints/amazon-emr-on-eks/emr-eks-karpenter) π Start here if you are new to EMR on EKS. This blueprint deploys EMR on EKS cluster and uses [Karpenter](https://karpenter.sh/) to scale Spark jobs. -π [Ray on EKS](https://awslabs.github.io/data-on-eks/docs/blueprints/ai-ml/ray) - This blueprint deploys Ray Operator on EKS with sample scripts. +π [Spark Operator with Apache YuniKorn on EKS](https://awslabs.github.io/data-on-eks/docs/blueprints/data-analytics/spark-operator-yunikorn) π This blueprint deploys EKS cluster and uses Spark Operator and Apache YuniKorn for running self-managed Spark jobs -π [Amazon Manged Workflows for Apache Airflow (MWAA)](https://awslabs.github.io/data-on-eks/docs/blueprints/job-schedulers/aws-managed-airflow) - This blueprint deploys EMR on EKS cluster and uses Amazon Managed Workflows for Apache Airflow (MWAA) to run Spark jobs. +π [Self-managed Airflow on EKS](https://awslabs.github.io/data-on-eks/docs/blueprints/job-schedulers/self-managed-airflow) π This blueprint sets up a self-managed Apache Airflow on an Amazon EKS cluster, following best practices. -π [Self-managed Airflow on EKS](https://awslabs.github.io/data-on-eks/docs/blueprints/job-schedulers/self-managed-airflow) - This blueprint sets up a self-managed Apache Airflow on an Amazon EKS cluster, following best practices. +π [Argo Workflows on EKS](https://awslabs.github.io/data-on-eks/docs/blueprints/job-schedulers/argo-workflows-eks) π This blueprint sets up a self-managed Argo Workflow on an Amazon EKS cluster, following best practices. -π [Argo Workflows on EKS](https://awslabs.github.io/data-on-eks/docs/blueprints/job-schedulers/argo-workflows-eks) - This blueprint sets up a self-managed Argo Workflow on an Amazon EKS cluster, following best practices. +π [Kafka on EKS](https://awslabs.github.io/data-on-eks/docs/blueprints/streaming-platforms/kafka) π This blueprint deploys a self-managed Kafka on EKS using the popular Strimzi Kafka operator. -π [Kafka on EKS](https://awslabs.github.io/data-on-eks/docs/blueprints/streaming-platforms/kafka) - This blueprint deploys a self-managed Kafka on EKS using the popular Strimzi Kafka operator. -π [JupyterHub on EKS](https://awslabs.github.io/data-on-eks/docs/blueprints/ai-ml/jupyterhub) - This blueprint deploys a self-managed JupyterHub on EKS with Amazon Cognito authentication. ## ποΈ Documentation For instructions on how to deploy Data on EKS patterns and run sample tests, visit the [DoEKS website](https://awslabs.github.io/data-on-eks/). diff --git a/ai-ml/jupyterhub/helm-values/jupyterhub-values-dummy-cpu.yaml b/ai-ml/jupyterhub/helm-values/jupyterhub-values-dummy-cpu.yaml index 75bcab0e2..32ebe0902 100755 --- a/ai-ml/jupyterhub/helm-values/jupyterhub-values-dummy-cpu.yaml +++ b/ai-ml/jupyterhub/helm-values/jupyterhub-values-dummy-cpu.yaml @@ -44,4 +44,4 @@ singleuser: CHOWN_EXTRA: "/home/shared" uid: 0 fsGid: 0 - cmd: "start-singleuser.sh" \ No newline at end of file + cmd: "start-singleuser.sh" diff --git a/ai-ml/jupyterhub/jupyterhub.tf b/ai-ml/jupyterhub/jupyterhub.tf index 7b9bda187..fb909bfcd 100644 --- a/ai-ml/jupyterhub/jupyterhub.tf +++ b/ai-ml/jupyterhub/jupyterhub.tf @@ -277,4 +277,4 @@ resource "aws_cognito_user_pool_client" "user_pool_client" { ] depends_on = [aws_cognito_user_pool_domain.domain] -} \ No newline at end of file +} diff --git a/ai-ml/jupyterhub/variables.tf b/ai-ml/jupyterhub/variables.tf index a70baa0a8..db64074ff 100755 --- a/ai-ml/jupyterhub/variables.tf +++ b/ai-ml/jupyterhub/variables.tf @@ -64,4 +64,4 @@ variable "jupyterhub_domain" { type = string description = "Enter sub-domain name for jupyterhub to be hosted, e.g. eks.example.com. Only needed if auth mechanism is set to cognito" default = "" -} \ No newline at end of file +} diff --git a/ai-ml/jupyterhub/versions.tf b/ai-ml/jupyterhub/versions.tf index 41659b984..85abb2e37 100755 --- a/ai-ml/jupyterhub/versions.tf +++ b/ai-ml/jupyterhub/versions.tf @@ -18,5 +18,9 @@ terraform { source = "gavinbunney/kubectl" version = ">= 1.14" } + random = { + source = "hashicorp/random" + version = "3.1.0" # Replace with the appropriate version of the random provider + } } } diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index 58db99bf6..bec1cf8c6 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -7,7 +7,7 @@ const darkCodeTheme = require('prism-react-renderer/themes/dracula'); /** @type {{onBrokenLinks: string, organizationName: string, plugins: string[], title: string, url: string, onBrokenMarkdownLinks: string, i18n: {defaultLocale: string, locales: string[]}, trailingSlash: boolean, baseUrl: string, presets: [string,Options][], githubHost: string, tagline: string, themeConfig: ThemeConfig & UserThemeConfig & AlgoliaThemeConfig, projectName: string}} */ const config = { title: 'Data on EKS', - tagline: 'Supercharge your Data and Machine Learning Journey with Amazon EKS! π', + tagline: 'Supercharge your Data and AI/ML Journey with Amazon EKS', url: 'https://awslabs.github.io', baseUrl: '/data-on-eks/', trailingSlash: false, diff --git a/website/src/components/CollapsibleContent.js b/website/src/components/CollapsibleContent.js index 32b5888d8..548728d4d 100644 --- a/website/src/components/CollapsibleContent.js +++ b/website/src/components/CollapsibleContent.js @@ -1,29 +1,31 @@ -import React, {useState} from 'react'; +import React, { useState } from 'react'; import PropTypes from 'prop-types'; import clsx from 'clsx'; import styles from './CollapsibleContent.module.css'; -function CollapsibleContent({children, header}) { - const [isExpanded, setIsExpanded] = useState(false); +function CollapsibleContent({ children, header }) { + const [isExpanded, setIsExpanded] = useState(false); - const toggleExpansion = () => { - setIsExpanded(!isExpanded); - }; + const toggleExpansion = () => { + setIsExpanded(!isExpanded); + }; - return ( -
{siteConfig.tagline}
++ {siteConfig.tagline} +