diff --git a/docs/community/nebari-tests.md b/docs/community/nebari-tests.md index ea1f492b9..3f90b67ad 100644 --- a/docs/community/nebari-tests.md +++ b/docs/community/nebari-tests.md @@ -91,7 +91,7 @@ To test on cloud Kubernetes, deploy Nebari in the normal way on the cloud, but m - [Use a development branch](#use-a-development-branch) to specify the Docker images based on the latest development code in `nebari-config.yaml`. :::warning -Testing your contribution by deploying Nebari on the cloud (AWS, GCP, Azure, and Digital Ocean) can consume a lot of time and resources. +Testing your contribution by deploying Nebari on the cloud (AWS, GCP, and Azure) can consume a lot of time and resources. Always prefer local testing when possible. It will be easier to debug, may be quicker to deploy, and is likely to be less expensive. ::: diff --git a/docs/docs/explanations/advanced-configuration.md b/docs/docs/explanations/advanced-configuration.md index 722c49939..df5955091 100644 --- a/docs/docs/explanations/advanced-configuration.md +++ b/docs/docs/explanations/advanced-configuration.md @@ -265,7 +265,6 @@ domain: demo.nebari.dev `provider`: Determines the cloud provider used to deploy infrastructure related resources on Nebari. Possible values are: -- `do` for DigitalOcean - `aws` for Amazon Web Services - `gcp` for Google Could Provider - `azure` for Microsoft Azure @@ -316,7 +315,7 @@ The CI/CD workflow that is best for you will depend on your organization, but th - Advanced Nebari users may also want to add a step in their deployment flow that includes a `nebari render` so that the administrator may preview the resulting diffs to IaC and/or CI/CD files before `nebari deploy` is executed. :::note -In order for your CI/CD pipeline to be able to deploy changes into your Nebari cloud hosting provider, you must set the appropriate authentication environment variables for your GitLab or GitHub CI/CD execution environment. See the Authentication section for deploing to [AWS](https://www.nebari.dev/docs/how-tos/nebari-aws/#authentication), [Azure](https://www.nebari.dev/docs/how-tos/nebari-azure#authentication), [GCP](https://www.nebari.dev/docs/how-tos/nebari-gcp/#authentication), or [Digital Ocean](https://www.nebari.dev/docs/how-tos/nebari-do/#authentication) for Nebari's required variables. Guidance on how to set these for your repository/project can be found in the documentation for [GitHub Actions](https://docs.github.com/en/actions/learn-github-actions/variables) and [GitLab CI/CD](https://docs.gitlab.com/ee/ci/variables/). +In order for your CI/CD pipeline to be able to deploy changes into your Nebari cloud hosting provider, you must set the appropriate authentication environment variables for your GitLab or GitHub CI/CD execution environment. See the Authentication section for deploing to [AWS](https://www.nebari.dev/docs/how-tos/nebari-aws/#authentication), [Azure](https://www.nebari.dev/docs/how-tos/nebari-azure#authentication), or [GCP](https://www.nebari.dev/docs/how-tos/nebari-gcp/#authentication) for Nebari's required variables. Guidance on how to set these for your repository/project can be found in the documentation for [GitHub Actions](https://docs.github.com/en/actions/learn-github-actions/variables) and [GitLab CI/CD](https://docs.gitlab.com/ee/ci/variables/). ::: ### Certificates diff --git a/docs/docs/explanations/advanced-provider-configuration.md b/docs/docs/explanations/advanced-provider-configuration.md index aad9a8483..db20165bb 100644 --- a/docs/docs/explanations/advanced-provider-configuration.md +++ b/docs/docs/explanations/advanced-provider-configuration.md @@ -226,37 +226,6 @@ azure: - - -DigitalOcean has a restriction with autoscaling in that the minimum nodes allowed (`min_nodes` = 1) is one but is by far the least expensive provider even accounting for `spot/pre-emptible` instances. -In addition, Digital Ocean doesn't have accelerator/gpu support. - -Digital Ocean is a good choice for trying out Nebari, but we recommend selecting a different provider for your production Nebari deployment. - -To see available instance types refer to [Digital Ocean Instance Types](https://www.digitalocean.com/docs/droplets/). -Additionally the Digital Ocean cli `doctl` has [support for listing droplets](https://www.digitalocean.com/docs/apis-clis/doctl/reference/compute/droplet/list/). - -```yaml -digital_ocean: - region: nyc3 - kubernetes_version: "1.21.10-do.0" - node_groups: - general: - instance: "g-4vcpu-16gb" - min_nodes: 1 - max_nodes: 1 - user: - instance: "g-2vcpu-8gb" - min_nodes: 1 - max_nodes: 5 - worker: - instance: "g-2vcpu-8gb" - min_nodes: 1 - max_nodes: 5 -``` - - - Originally designed for Nebari deployments on a "local" minikube cluster, this feature has now expanded to allow users to deploy Nebari to any existing kubernetes cluster. @@ -318,7 +287,6 @@ local: :::note Many of the cloud providers regularly update their internal **Kubernetes versions** so if you wish to specify a particular version, please check the following resources. This is _completely optional_ as Nebari will, by default, select the most recent version available for your preferred cloud provider: -[Digital Ocean](https://docs.digitalocean.com/products/kubernetes/changelog/); [Google Cloud Platform](https://cloud.google.com/kubernetes-engine/docs/release-notes-stable); [Amazon Web Services](https://docs.aws.amazon.com/eks/latest/userguide/kubernetes-versions.html); [Microsoft Azure](https://docs.microsoft.com/en-us/azure/aks/supported-kubernetes-versions?tabs=azure-cli). diff --git a/docs/docs/explanations/architecture.mdx b/docs/docs/explanations/architecture.mdx index 8874b4e53..1d4833ebd 100644 --- a/docs/docs/explanations/architecture.mdx +++ b/docs/docs/explanations/architecture.mdx @@ -52,11 +52,7 @@ import TabItem from '@theme/TabItem'; ![GCP Architecture Diagram](/img/explanations/architecture-diagram-gcp.png) - -![DO Architecture Diagram](/img/explanations/architecture-diagram-do.png) - - ![AWS Architecture Diagram](/img/explanations/architecture-diagram-aws.png) diff --git a/docs/docs/faq.md b/docs/docs/faq.md index 9f5cfba68..ee56cd61b 100644 --- a/docs/docs/faq.md +++ b/docs/docs/faq.md @@ -48,8 +48,8 @@ If you'd like to retain the latest version of an environment and only remove spe ## How do I use preemptible and spot instances on Nebari? A preemptible or spot VM is an instance that you can create and run at a much lower price than normal instances. Azure -and Google Cloud platform use the term preemptible, while AWS uses the term spot, and Digital Ocean doesn't support -these types of instances. However, the cloud provider might stop these instances if it requires access to those +and Google Cloud platform use the term preemptible, while AWS uses the term spot. +However, the cloud provider might stop these instances if it requires access to those resources for other tasks. Preemptible instances are excess Cloud Provider's capacity, so their availability varies with usage. @@ -84,10 +84,6 @@ Spot instances aren't supported at this moment. Preemptible instances aren't supported at this moment. -##### Digital Ocean - -Digital Ocean doesn't support these type of instances. - ## Why doesn't my code recognize the GPU(s) on Nebari? First be sure you chose a [GPU-enabled server when you selected a profile][selecting a profile]. Next, if you're using PyTorch, see [Using GPUs on Nebari][using gpus]. If it's still not working for you, be sure your environment includes a GPU-specific version of either PyTorch or TensorFlow, i.e. `pytorch-gpu` or `tensorflow-gpu`. Also note that `tensorflow>=2` includes both CPU and GPU capabilities, but if the GPU is still not recognized by the library, try removing `tensorflow` from your environment and adding `tensorflow-gpu` instead. diff --git a/docs/docs/get-started/cloud-providers.mdx b/docs/docs/get-started/cloud-providers.mdx index 27f30a745..dd0a36263 100644 --- a/docs/docs/get-started/cloud-providers.mdx +++ b/docs/docs/get-started/cloud-providers.mdx @@ -36,17 +36,8 @@ import TabItem from '@theme/TabItem'; For detailed instructions on how to deploy Nebari on **GCP** visit the [How to deploy Nebari on GCP][nebari-gcp] section. - -
- -
- -[DigitalOcean](https://docs.digitalocean.com/products/kubernetes/) is a cloud hosting provider that offers cloud computing services and Infrastructure as a Service (IaaS) known for its pricing and scalability. -For detailed instructions on how to deploy Nebari on **Digital Ocean** visit the [How to deploy Nebari on Digital Ocean][nebari-do] section. - -
@@ -75,7 +66,6 @@ For detailed instructions on how to deploy Nebari on **Azure** visit the [How to [nebari-aws]: /how-tos/nebari-aws.md [nebari-azure]: /how-tos/nebari-azure.md -[nebari-do]: /how-tos/nebari-do.md [nebari-gcp]: /how-tos/nebari-gcp.md [nebari-local]: /how-tos/nebari-local.md [nebari-how-tos]: /how-tos/index.mdx diff --git a/docs/docs/get-started/deploy.mdx b/docs/docs/get-started/deploy.mdx index 5d151d7cf..d41b7c9d3 100644 --- a/docs/docs/get-started/deploy.mdx +++ b/docs/docs/get-started/deploy.mdx @@ -29,7 +29,7 @@ If you are not sure which option to choose, a cloud installation is likely your :::note The cloud installation is based on Kubernetes, but knowledge of Kubernetes is **NOT** required nor is in-depth knowledge about the specific provider required either. -Currently, Nebari supports [Amazon AWS][nebari-aws], [DigitalOcean][nebari-do], [Google GCP][nebari-gcp], and [Azure][nebari-azure]. +Currently, Nebari supports [Amazon AWS][nebari-aws], [Google GCP][nebari-gcp], and [Azure][nebari-azure]. ::: @@ -73,14 +73,12 @@ For instructions on installing and deploying Nebari on a particular cloud provid - [Deploying Nebari on AWS][nebari-aws] - [Deploying Nebari on Azure][nebari-azure] -- [Deploying Nebari on Digital Ocean][nebari-do] - [Deploying Nebari on GCP][nebari-gcp] [nebari-aws]: /how-tos/nebari-aws.md [nebari-azure]: /how-tos/nebari-azure.md -[nebari-do]: /how-tos/nebari-do.md [nebari-gcp]: /how-tos/nebari-gcp.md [nebari-local]: /how-tos/nebari-local.md [nebari-deploy]: /get-started/deploy.mdx diff --git a/docs/docs/get-started/installing-nebari.md b/docs/docs/get-started/installing-nebari.md index 49c8d3351..b1e9e05ed 100644 --- a/docs/docs/get-started/installing-nebari.md +++ b/docs/docs/get-started/installing-nebari.md @@ -98,7 +98,6 @@ Already made your mind about deployment? Check our handy how-to-guides: - [Deploying Nebari on AWS][nebari-aws] - [Deploying Nebari on Azure][nebari-azure] -- [Deploying Nebari on Digital Ocean][nebari-do] - [Deploying Nebari on GCP][nebari-gcp] - [Deploying Nebari on a local cluster][nebari-local]- using [`kind`](https://kind.sigs.k8s.io/) no cloud required @@ -107,7 +106,6 @@ Already made your mind about deployment? Check our handy how-to-guides: [advanced-configuration]: /explanations/advanced-configuration.md [nebari-aws]: /how-tos/nebari-aws.md [nebari-azure]: /how-tos/nebari-azure.md -[nebari-do]: /how-tos/nebari-do.md [environment-management]: /how-tos/nebari-environment-management.md [nebari-extension-system]: /how-tos/nebari-extension-system.md [nebari-gcp]: /how-tos/nebari-gcp.md diff --git a/docs/docs/get-started/quickstart.md b/docs/docs/get-started/quickstart.md index 40167e746..aefe343a8 100644 --- a/docs/docs/get-started/quickstart.md +++ b/docs/docs/get-started/quickstart.md @@ -79,25 +79,7 @@ nebari init aws --project projectname \ ``` - -Provide authentication credentials to Nebari by setting the following environment variables: - -```bash -export DIGITALOCEAN_TOKEN="" # API token required to generate resources -export SPACES_ACCESS_KEY_ID="" # public access key for access spaces -export SPACES_SECRET_ACCESS_KEY="" # the private key for access spaces -``` - -Create `nebari-config.yaml` with: - -```bash -nebari init do --project projectname \ - --domain domain \ - --auth-provider password -``` - - Provide authentication credentials to Nebari by setting the following environment variables: diff --git a/docs/docs/how-tos/debug-nebari.mdx b/docs/docs/how-tos/debug-nebari.mdx index 0f95344d8..7e9f39bac 100644 --- a/docs/docs/how-tos/debug-nebari.mdx +++ b/docs/docs/how-tos/debug-nebari.mdx @@ -73,21 +73,8 @@ Finally, you can generate the `kubeconfig` which will be used by k9s: ```bash gcloud container clusters get-credentials - --region ``` - - - -For [DigitalOcean](https://docs.digitalocean.com/products/kubernetes/), -you'll need to have the -[doctl](https://docs.digitalocean.com/reference/doctl/how-to/install/) tool -(the Digital Ocean CLI) installed. The command to update your `kubeconfig` for DO is: - -```bash -doctl kubernetes cluster kubeconfig save - -``` - - diff --git a/docs/docs/how-tos/domain-registry.md b/docs/docs/how-tos/domain-registry.md index 950e3acaf..58d097a0c 100644 --- a/docs/docs/how-tos/domain-registry.md +++ b/docs/docs/how-tos/domain-registry.md @@ -23,7 +23,7 @@ Take IP Address 12.312.312.312 and update DNS to point to "your.domain" [Press E Once the IP is generated, you will need to grab it and create the necessary records within the DNS provider of your choice. Setting a DNS record heavily depends on your provider, so an internet search for A/CNAME record for your specific provider should yield helpful results. :::note -During the initial deployment, Digital Ocean, GCP, and Azure will display an "IP" address, that you can use to set the A record. +During the initial deployment, GCP and Azure will display an "IP" address, that you can use to set the A record. Whereas, AWS will display a "hostname" that you can use to set the CNAME record. ::: @@ -77,7 +77,6 @@ Below are the links to detailed documentation on how to create and manage DNS re - [Cloud DNS](https://cloud.google.com/dns/docs/tutorials/create-domain-tutorial) provider - [Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-register.html) DNS provider - [Azure DNS](https://docs.microsoft.com/en-us/azure/dns/dns-getstarted-portal) provider -- [Digital Ocean DNS](https://docs.digitalocean.com/products/networking/dns/quickstart/) provider :::note Once your new DNS domain is created, it might take time for the records and related certificates to fully propagate. diff --git a/docs/docs/how-tos/manual-backup.md b/docs/docs/how-tos/manual-backup.md index 357de79ac..79f3ea884 100644 --- a/docs/docs/how-tos/manual-backup.md +++ b/docs/docs/how-tos/manual-backup.md @@ -83,7 +83,7 @@ apt install curl -y apt install unzip -y ``` -For AWS, you need to install the CLI (see CLI instructions for Google, Azure, Digital Ocean below): +For AWS, you need to install the CLI (see CLI instructions for Google and Azure below): ```shell curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" @@ -203,10 +203,6 @@ export AZCOPY_AUTO_LOGIN_TYPE=AZCLI azcopy copy "https://[account].blob.core.windows.net/[container]/nebari-backups/2021-04-23.tar" "./2021-04-23.tar" ``` -### Digital Ocean - -Instructions will be similar to those for AWS above, but use Digital Ocean spaces instead of S3. For more information on command-line tool, check out the [documentation for Digital Ocean Spaces](https://www.digitalocean.com/community/tutorials/how-to-migrate-from-amazon-s3-to-digitalocean-spaces-with-rclone) - ## JupyterHub Database The JupyterHub database will mostly be recreated whenever you start a new cluster, but should be backed up to save Dashboard configurations. diff --git a/docs/docs/how-tos/nebari-destroy.md b/docs/docs/how-tos/nebari-destroy.md index b29a98b8f..0bf0b33e9 100644 --- a/docs/docs/how-tos/nebari-destroy.md +++ b/docs/docs/how-tos/nebari-destroy.md @@ -139,24 +139,6 @@ az group delete --resource-group "-" Or if you'd prefer, you can destroy the resource group from the Azure portal, [follow these instructions](https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resource-groups-portal#delete-resource-groups). -### Digital Ocean - -If you deployed your Nebari cluster on Digital Ocean and the `nebari destroy` command failed, you will need to destroy two resources, the Kubernetes cluster (DOKS) and the S3 bucket (a Digital Ocean resource, not AWS). - -Digital Ocean offers an S3-compatible cloud object storage and requires the use of the [`aws` CLI](https://aws.amazon.com/cli/) to destroy it. - -```bash -aws s3 rb s3://--terraform-state --force --endpoint=https://.digitaloceanspaces.com -``` - -Finally, you will need to destroy the Kubernetes cluster with [Digital Ocean's CLI tool, `doctl`](https://docs.digitalocean.com/reference/doctl/). - -```bash -doctl kubernetes cluster delete - -f -``` - -Or, if you wish to destroy your Digital Ocean resources from the Digital Ocean control panel and follow these instructions to destroy your [Kubernetes cluster](https://docs.digitalocean.com/products/kubernetes/how-to/destroy-clusters/) and these instructions to destroy the associated [space (i.e. S3)](https://docs.digitalocean.com/products/spaces/how-to/destroy/). - ### Google Cloud Platform (GCP) If you deployed your Nebari cluster on GCP and the `nebari destroy` command failed, you will need to destroy two resources, the Kubernetes cluster (GKE) and cloud storage bucket (GCS). diff --git a/docs/docs/how-tos/nebari-do.md b/docs/docs/how-tos/nebari-do.md deleted file mode 100644 index 8dcea58b9..000000000 --- a/docs/docs/how-tos/nebari-do.md +++ /dev/null @@ -1,223 +0,0 @@ ---- -id: nebari-do -title: Deploy Nebari on Digital Ocean -description: A basic overview of how to deploy Nebari on Digital Ocean ---- - -## Introduction - -This guide is to help first-time users set up a Digital Ocean (DO) account specifically for the purpose of using and deploying Nebari at a production scale. In this guide we will -walk you through the following steps: - -- [Introduction](#introduction) -- [Sign up for Digital Ocean](#sign-up-for-digital-ocean) -- [Authentication](#authentication) -- [Initializing Nebari](#initializing-nebari) -- [Deploying Nebari](#deploying-nebari) -- [Destroying Nebari](#destroying-nebari) - -For those already familiar to Digital Ocean, feel free to skip this first step and jump straight to the [Nebari authentication](#authentication) section of this guide. - -## Sign up for Digital Ocean - -This documentation assumes that you are already have a Digital Ocean account and that you have prior knowledge regarding Digital Ocean billing and cost usage for Kubernetes related -services. - -If you are new to Digital Ocean, we advise you to first [sign up for a free account](https://try.digitalocean.com/freetrialoffer/) to get a better understanding of the platform and -its features. [Learn more about Digital Ocean account management](https://docs.digitalocean.com/products/accounts/) and refer to -[billing concepts](https://www.digitalocean.com/pricing) for more information on account types and pricing. - - - -For a more detailed cost estimate, refer to our conceptual guides for more information regarding the basic infrastructure provided by Nebari. - -:::info -Make sure to check [Digital Ocean's New pricing](https://www.digitalocean.com/try/new-pricing) documentation for a recent overview of how costs are allocated and applied to your Digital Ocean -account. -::: - -:::warning -A Nebari deployment on DO will **NOT** fall into `free tier` usage. Therefore, we recommend that you sign up for a paid account or contact your cloud -administrator for more information. If you provision resources outside the free tier, you may be charged. We're not responsible for any charges you may incur if this happens. -::: - -## Authentication - -In order for Nebari to make requests against the DO API and create its infrastructure, an authentication method with the appropriate permissions will be required. The easiest way -to do this is using the [Digital Ocean access token](https://docs.digitalocean.com/reference/api/intro/#oauth-authentication). - -If it's your first time creating an access token, make sure to check the [creating a Digital Ocean token documentation](https://www.digitalocean.com/docs/apis-clis/api/create-personal-access-token/) -for a detailed description of how to do this. In addition to a token, a [Digital Ocean Spaces](https://www.digitalocean.com/products/spaces) key (similar to AWS S3) credentials are -also required. See [Creating a Spaces access key on Digital Ocean](https://www.digitalocean.com/community/tutorials/how-to-create-a-digitalocean-space-and-api-key) for more -information on how to create a space and generate an access key. - -:::warning -As these credentials provides access to your DO account. It should be treated like any other secret credentials. In particular, it should _never_ be checked into -source control. -::: - -By default, Nebari will try to use the credentials associated with the current Digital Ocean infrastructure/environment for authentication. Refer to \[Conceptual guides\] for more -information on how Nebari's components are secured. - -Provide authentication credentials to Nebari by setting the following environment variables: - -```bash -export DIGITALOCEAN_TOKEN="" # API token required to generate resources -export SPACES_ACCESS_KEY_ID="" # public access key for access spaces -export SPACES_SECRET_ACCESS_KEY="" # the private key for access spaces -``` - -:::tip -These environment variables will apply only to your current shell session. If you want the variables to apply to future shell sessions also, set the variables in your shell -startup file (for example, for example in the `~/.bashrc` or `~/.profile` for the bash shell). You can also opt for [`direnv`](https://direnv.net/) as a shell extension for managing your environment variables. -::: - -:::note The steps in the following sections assume you have (i) completed the [Install Nebari][nebari-install] section, (ii) confirmed that Nebari is successfully -installed in your environment, (iii) opted for **Digital Ocean** as your cloud provider, and (iv) already configured the Nebari environment variables. If you had any issues -during the installation, please visit the "Get started" section of our [troubleshooting page][nebari-troubleshooting] for further guidance. -::: - -## Initializing Nebari - -Great, you’ve gone through the [Nebari Installation][nebari-install] and [authentication setup](#authentication) steps, and have ensured that all the necessary -environment variables have been properly set. - -In this step, you'll run `nebari init` to create the `nebari-config.yaml` file. - -1. In your terminal, start by creating a new project folder. For this demonstration, we will name the new folder `nebari-do`: - - ```bash - mkdir nebari-do && cd nebari-do - ``` - -2. Executing the `nebari init --guided-init` command prompts you to respond to a set of questions, which will be used to generate the - `nebari-config.yaml` file with the Nebari cluster deployed on **DO**. - -```bash - nebari init --guided-init -``` - -![A representation of the output generated when Nebari init guided-init command is executed.](/img/how-tos/nebari-do.png) - -:::tip -If you prefer not using the `guided-init` command then you can directly run the `init` command. - -Executing the command below will generate a basic config file with an infrastructure based on **DigitalOcean**. - -- `projectname` will be the name of the folder/repo that will manage this Nebari deployment (it will be created). -- `domain` will be the domain endpoint for your Nebari instance. -- `auth-provider` sets your authentication provider that you plan to use inside of Keycloak, options are Github, Auth0, and password. - -For this example, we'll run with project name `projectname`, endpoint domain `domain`, and with the authentication mode set to **password**. These can be updated later by directly modifying the `nebari-config.yaml`. - -```bash -nebari init do --project projectname \ - --domain domain \ - --auth-provider password -``` - -You will be prompted to enter values for some choices above if they are absent from the command line arguments (for example, project name and domain) -::: - -Once `nebari init` is executed, you should then be able to see the following output: - -```bash -Securely generated default random password=*** for Keycloak root user stored at path=/tmp/QHUB_DEFAULT_PASSWORD -Congratulations, you have generated the all important nebari-config.yaml file 🎉 - -You can always make changes to your nebari-config.yaml file by editing the file directly. -If you do make changes to it you can ensure its still a valid configuration by running: - - nebari validate --config path/to/nebari-config.yaml - -For reference, if the previous Guided Init answers were converted into a direct nebari init command, it would be: - - nebari init --project-name --domain-name --namespace dev --auth-provider password - -You can now deploy your Nebari instance with: - - nebari deploy -c nebari-config.yaml - -For more information, run nebari deploy --help or check out the documentation: https://www.nebari.dev/how-tos/ -``` - -:::tip -The main `temp` folder on a MacOS system can be found by inspecting the value of `$TMPDIR`. This folder and its files are not meant to be user-facing and will present you -with a seemingly random directory path similar to `/var/folders/xx/xxxxx/T` -::: - -You can see that Nebari is generating a random password for the root user of Keycloak. This password is stored in a temporary file and will be used to authenticate to the Keycloak -server once Nebari's infrastructure is fully deployed, in order to create the first user accounts for administrator(s). - -The Nebari initialization scripts create a `nebari-config.yaml` file that contains a collection of default preferences and settings for your deployment. - -The generated `nebari-config.yaml` is the configuration file that will determine how the cloud infrastructure and Nebari is built and deployed in the next step. -Since it is a plain text file, you can edit it manually if you are unhappy with the choices you made during initialization, or delete it and start over again by re-running `nebari init`. - - - - -## Deploying Nebari - -To see all the options available for the deploy command, run the following command: - -```bash -nebari deploy --help -``` - -![A representation of the output generated when nebari deploy help command is executed.](/img/how-tos/nebari-deploy-help.png) - -With the `nebari-config.yaml` configuration file now created, Nebari can be deployed for the first time. Type the following command on your command line: - -```bash -nebari deploy -c nebari-config.yaml -``` - -:::note -During deployment, Nebari will require you to set a DNS record for the domain defined during [initialize](#initializing-nebari). Follow the instructions on [How to set a DNS record for Nebari][domain-registry] for an overview of the required steps. -::: - -The terminal will prompt you to press enter to check the authentication credentials that were added as part of the preceding `nebari init` command. Once Nebari is -authenticated, it will start its infrastructure deployment process, which will take a few minutes to complete. - -If the deployment is successful, you will see the following output: - -```bash -[terraform]: Nebari deployed successfully -Services: - - argo-workflows -> https://projectname.domain/argo/ - - conda_store -> https://projectname.domain/conda-store/ - - dask_gateway -> https://projectname.domain/gateway/ - - jupyterhub -> https://projectname.domain/ - - keycloak -> https://projectname.domain/auth/ - - monitoring -> https://projectname.domain/monitoring/ -Kubernetes kubeconfig located at file:///tmp/NEBARI_KUBECONFIG -Kubecloak master realm username=root ***** -... -``` - -Congratulations! You have successfully deployed Nebari on DO! From here, see \[Initial Nebari Configuration\] for instructions on the first steps you should take to prepare your -Nebari instance for your team's use. - -## Destroying Nebari - -To see all the options available for the destroy command, type the following command on your command line: - -```bash -nebari destroy --help -``` - -![A representation of the output generated when nebari deploy help command is executed.](/img/how-tos/nebari-destroy-help.png) - -Nebari also has a `destroy` command that works the same way the deploy works but instead of creating the provisioned resources it destroys it. - -```bash -nebari destroy -c nebari-config.yaml -``` - - - -[nebari-install]: /get-started/installing-nebari.md -[nebari-troubleshooting]: /troubleshooting.mdx -[domain-registry]: /how-tos/domain-registry.md diff --git a/docs/docs/how-tos/upgrade-kubernetes-version.md b/docs/docs/how-tos/upgrade-kubernetes-version.md index 53c36ce63..7cefa51b3 100644 --- a/docs/docs/how-tos/upgrade-kubernetes-version.md +++ b/docs/docs/how-tos/upgrade-kubernetes-version.md @@ -115,36 +115,6 @@ For more information about AKS upgrade, please refer to the [AKS documentation]( - - -Digital Ocean Kubernetes Service (DOKS) cut their own platform specific version of Kubernetes that usually look something like: `1.25.14-do.0`; this corresponds to a Kubernetes version of `1.25.14`. - -You can list the supported DOKS Kubernetes versions by running the following `doctl` command: - -```bash -doctl kubernetes options versions -``` - -```bash -Slug Kubernetes Version Supported Features -1.28.2-do.0 1.28.2 cluster-autoscaler, docr-integration, ha-control-plane, token-authentication -1.27.6-do.0 1.27.6 cluster-autoscaler, docr-integration, ha-control-plane, token-authentication -1.26.9-do.0 1.26.9 cluster-autoscaler, docr-integration, ha-control-plane, token-authentication -1.25.14-do.0 1.25.14 cluster-autoscaler, docr-integration, ha-control-plane, token-authentication -``` - -To upgrade your DOKS cluster, update the `digital_ocean.kubernetes_version` field in your `nebari-config.yaml` to match one of these DOKS Kubernetes versions. Then run `nebari deploy` to apply these changes. This deployment process might take as long as 30 minutes. - -:::info -You will get a validation error if you try to select a Kubernetes version that is unsupported by DOKS or a version higher than [`HIGHEST_SUPPORTED_K8S_VERSION`][highest-supported-k8s]. -::: - -Then repeat the above process one minor version at a time. - -For more information about DOKS upgrade, please refer to the [DOKS documentation](https://docs.digitalocean.com/products/kubernetes/how-to/upgrade-cluster/). - - - diff --git a/docs/docs/troubleshooting.mdx b/docs/docs/troubleshooting.mdx index c28a67213..5d8fa927a 100644 --- a/docs/docs/troubleshooting.mdx +++ b/docs/docs/troubleshooting.mdx @@ -222,21 +222,7 @@ gcloud container clusters \ ``` - -Check the [DigitalOcean documentation](https://www.digitalocean.com/docs/kubernetes/how-to/connect-to-cluster/) for more information. - -1. [Download the Digital Ocean command line utility](https://www.digitalocean.com/docs/apis-clis/doctl/how-to/install/). -2. If you haven't already, create a [Digital Ocean API token](https://www.digitalocean.com/docs/apis-clis/doctl/how-to/install/). -3. [Authenticate via the API token](https://www.digitalocean.com/docs/apis-clis/doctl/how-to/install/) with`doctl auth init` -4. Create a `kubeconfig` file with: - -```bash -doctl kubernetes cluster kubeconfig \ - save "" -``` - - Check the [Amazon Web Services documentation](https://docs.aws.amazon.com/eks/latest/userguide/create-kubeconfig.html) for more information. @@ -274,7 +260,6 @@ Unfortunately, this does not seem to be the case with the other cloud providers, | :------------- | :------------------------------- | | AWS | No (Danger!) | | Azure | No (Danger!) | -| Digital Ocean | No | | GCP | Yes | If modifying the resource allocation for the `general` node in-place is absolutely necessary, try increasing the maximum number of nodes for the `general` node group. diff --git a/docs/nebari-slurm/comparison.md b/docs/nebari-slurm/comparison.md index de7ec3997..2ce178c42 100644 --- a/docs/nebari-slurm/comparison.md +++ b/docs/nebari-slurm/comparison.md @@ -17,7 +17,7 @@ available](https://www.freedesktop.org/wiki/Software/systemd/). Questions to help determine which solution may be best for you: -1. Are you deploying to the cloud e.g. AWS, GCP, Azure, or Digital Ocean? +1. Are you deploying to the cloud e.g. AWS, GCP, or Azure? QHub is likely your best option. The auto-scalability of QHub compute allows for cost effective usage of the cloud while taking advantage of diff --git a/docs/sidebars.js b/docs/sidebars.js index a6b6a0c58..8ba4f898b 100644 --- a/docs/sidebars.js +++ b/docs/sidebars.js @@ -50,7 +50,6 @@ module.exports = { items: [ "how-tos/nebari-gcp", "how-tos/nebari-aws", - "how-tos/nebari-do", "how-tos/nebari-azure", "how-tos/nebari-kubernetes", "how-tos/nebari-local", diff --git a/docs/src/pages/index.jsx b/docs/src/pages/index.jsx index a40d8fe90..a02dc4d4a 100644 --- a/docs/src/pages/index.jsx +++ b/docs/src/pages/index.jsx @@ -11,7 +11,6 @@ import ScissorStringSvg from "@site/static/img/home/scissor-string.svg"; import AwsSvg from "@site/static/img/home/aws.svg"; import AzureSvg from "@site/static/img/home/azure.svg"; import GcloudSvg from "@site/static/img/home/gcloud.svg"; -import DigitalOceanSvg from "@site/static/img/home/digital-ocean.svg"; import CondaStoreSvg from "@site/static/img/home/conda-store.svg"; import VSCodeSvg from "@site/static/img/home/vscode.svg"; import JitsiSvg from "@site/static/img/home/jitsi.svg"; @@ -138,7 +137,7 @@ export default function HomePage() {

Nebari can be seamlessly deployed to the major public cloud - providers, including AWS, Azure, GCP, and Digital Ocean. + providers, including AWS, Azure, and GCP.

@@ -153,9 +152,6 @@ export default function HomePage() {
  • -
  • - -
  • diff --git a/docs/static/img/explanations/architecture-diagram-do.png b/docs/static/img/explanations/architecture-diagram-do.png deleted file mode 100644 index b504e2cc2..000000000 Binary files a/docs/static/img/explanations/architecture-diagram-do.png and /dev/null differ diff --git a/docs/static/img/explanations/core-concepts.png b/docs/static/img/explanations/core-concepts.png index 0387cdaa2..277678dc9 100644 Binary files a/docs/static/img/explanations/core-concepts.png and b/docs/static/img/explanations/core-concepts.png differ diff --git a/docs/static/img/get-started/started-digital-ocean-logo.png b/docs/static/img/get-started/started-digital-ocean-logo.png deleted file mode 100644 index e7e29007b..000000000 Binary files a/docs/static/img/get-started/started-digital-ocean-logo.png and /dev/null differ diff --git a/docs/static/img/home/digital-ocean.svg b/docs/static/img/home/digital-ocean.svg deleted file mode 100644 index 561b9f9c2..000000000 --- a/docs/static/img/home/digital-ocean.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/docs/static/img/welcome/nebari_overview_sequence.png b/docs/static/img/welcome/nebari_overview_sequence.png index e3aa62e38..caf935231 100644 Binary files a/docs/static/img/welcome/nebari_overview_sequence.png and b/docs/static/img/welcome/nebari_overview_sequence.png differ