Merge pull request #819 from qdrant/feat/bashfomann/adapt-hybridcloud-docs

Adapt Hybrid Cloud docs
This commit is contained in:
David Myriel
2024-04-15 06:41:46 -07:00
committed by GitHub
4 changed files with 127 additions and 104 deletions
@@ -1,68 +1,43 @@
---
title: Qdrant Cloud
title: Managed Cloud
weight: 14
aliases:
- /documentation/overview/qdrant-alternatives/documentation/cloud/
---
# About Qdrant Cloud
# About Qdrant Managed Cloud
Qdrant Cloud is our SaaS (software-as-a-service) solution, providing managed
Qdrant instances on the cloud. We provide you the same fast and reliable
similarity search engine, but without the need to maintain your own infrastructure.
Qdrant Managed Cloud is our SaaS (software-as-a-service) solution, providing managed Qdrant database clusters on the cloud. We provide you the same fast and reliable similarity search engine, but without the need to maintain your own infrastructure.
Transitioning from on-premise to the cloud version of Qdrant does not change
how you interact with the service. All you need is a [Qdrant Cloud account](https://qdrant.to/cloud/)
and an [API key](/documentation/cloud/authentication/) for each request.
Transitioning to the Managed Cloud version of Qdrant does not change how you interact with the service. All you need is a [Qdrant Cloud account](https://qdrant.to/cloud/) and an [API key](/documentation/cloud/authentication/) for each request.
Our official [client libraries](/documentation/interfaces/#client-libraries/)
can help. For example, if you use the [Python Client](https://github.com/qdrant/qdrant-client/)
you can take advantage of the built-in API key. With that client, you provide
the API key only once, when the QdrantClient instance is created.
*Available as of v1.8.2* <!-- MUST CONFIRM -->
You can also attach your own infrastructure as a private region on the Hybrid
Cloud. Once attached, you can control this cloud using the same tools and UI
that you use for other cloud providers. For details, see our
[Hybrid Cloud](/documentation/hybrid-cloud/) documentation.
You can also attach your own infrastructure as a Hybrid Cloud Environment. For details, see our [Hybrid Cloud](/documentation/hybrid-cloud/) documentation.
## Cluster configuration
Each instance comes pre-configured with the following tools, features, and
support services:
Each database cluster comes pre-configured with the following tools, features, and support services:
- Uses the latest available version of Qdrant.
- Allows the creation of highly available clusters with automatic failover.
- Supports upgrades to later versions of Qdrant as they are released.
- Upgrades are zero-downtime on highly available clusters.
- Includes monitoring and logging to observe the health of each cluster.
- Configurable through the Qdrant Cloud Console.
- Vertically scalable.
- Horizontally and vertically scalable.
- Available natively on AWS and GCP, and Azure.
- Available on other providers if you use the Hybrid Cloud.
- Available on your own infrastructure and other providers if you use the Hybrid Cloud.
## Getting started with Qdrant Cloud
## Getting started with Qdrant Managed Cloud
To use Qdrant Cloud, you need at least one cluster. You can create one in the
following ways:
To use Qdrant Managed Cloud, you need at least one cluster. You can create one in the following ways:
1. [**Create a Free Tier cluster**](/documentation/cloud/quickstart-cloud/) with
one node and a default configuration (1 GB RAM, 0.5 CPU and 4 GB Disk). This
option is perfect for prototyping. You don't need a credit card to join.
2. [**Configure a custom cluster**](/documentation/cloud/create-cluster/) with
additional nodes and resources. For this option, you need billing information.
1. [**Create a Free Tier cluster**](/documentation/cloud/quickstart-cloud/) with one node and a default configuration (1 GB RAM, 0.5 CPU and 4 GB Disk). This option is perfect for prototyping. You don't need a credit card to join.
2. [**Configure a custom cluster**](/documentation/cloud/create-cluster/) with additional nodes and resources. For this option, you need billing information.
If you're testing Qdrant, We recommend the Free Tier cluster. The capacity
should be enough to serve up to 1 M vectors of 768 dimensions. To calculate
your needs, refer to our documentation on [Capacity and sizing](/documentation/cloud/capacity-sizing/).
If you're testing Qdrant, We recommend the Free Tier cluster. The capacity should be enough to serve up to 1 M vectors of 768 dimensions. To calculate your needs, refer to our documentation on [Capacity and sizing](/documentation/cloud/capacity-sizing/).
We recommend that you use the Free Tier cluster for testing purposes. The
capacity should be enough to serve up to 1 M vectors of 768 dimensions. To
calculate your needs, refer to our documentation on [Capacity and sizing](/documentation/cloud/capacity-sizing/).
We recommend that you use the Free Tier cluster for testing purposes. The capacity should be enough to serve up to 1 M vectors of 768 dimensions. To calculate your needs, refer to our documentation on [Capacity and sizing](/documentation/cloud/capacity-sizing/).
## Support & Troubleshooting
All Qdrant Cloud users are welcome to join our [Discord community](https://qdrant.to/discord/).
Our Support Engineers are available to help you anytime.
All Qdrant Cloud users are welcome to join our [Discord community](https://qdrant.to/discord/). Our Support Engineers are available to help you anytime.
Paid customers can also contact support through channels provided during cluster
creation and/or on-boarding.
Paid customers can also contact support directly. Links to the support portal are available in the Qdrant Cloud Console.
@@ -5,47 +5,9 @@ weight: 3
## Network policies
For security reasons, each database cluster is secured with tight network policies. By default, database pods only allow egress traffic between each and only allow ingress traffic from the operator for monitoring.
For security reasons, each database cluster is secured with network policies. By default, database pods only allow egress traffic between each and allow ingress traffic to ports 6333 (rest) and 6334 (grpc) from within the Kubernetes cluster.
To allow additional ingress or egress traffic, you can either deploy additional network policies on your own.
```yaml
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: qdrant-9a9f48c7-bb90-4fb2-816f-418a46a74b24
namespace: qdrant-namespace
spec:
podSelector:
matchLabels:
app: qdrant
cluster-id: 9a9f48c7-bb90-4fb2-816f-418a46a74b24
policyTypes:
- Ingress
ingress:
- from:
- ipBlock:
cidr: 192.168.0.0/22
- podSelector:
matchLabels:
app: client-app
namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: client-namespace
- podSelector:
matchLabels:
app: traefik
namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: kube-system
ports:
- protocol: TCP
port: 6333
- protocol: TCP
port: 6334
```
Or you can modify the default network policies in the Hybrid Cloud environment configuration:
You can modify the default network policies in the Hybrid Cloud environment configuration:
```yaml
qdrant:
@@ -85,4 +47,4 @@ kubectl -n qdrant-namespace logs -l app=qdrant,cluster-id=9a9f48c7-bb90-4fb2-816
## Monitoring
The Qdrant Cloud console gives you access to basic metrics about CPU, memory and disk usage of your Qdrant clusters. You can also access Prometheus metrics endpoint of yourQdrant databases. Finally, you can use a Kubernetes workload monitoring tool of your choice to monitor your Qdrant clusters.
The Qdrant Cloud console gives you access to basic metrics about CPU, memory and disk usage of your Qdrant clusters. You can also access Prometheus metrics endpoint of your Qdrant databases. Finally, you can use a Kubernetes workload monitoring tool of your choice to monitor your Qdrant clusters.
@@ -1,12 +1,13 @@
---
title: Qdrant Operator configuration
title: Advanced Qdrant Operator configuration
weight: 2
---
# Qdrant Operator configuration
# Advanced Qdrant Operator configuration
You should configure the Qdrant Operator with the configuration for Hybrid Cloud.
Use the following options, in YAML format:
The Qdrant Operator has several configuration options, which can be configured inthe advanced section of your Hybrid Cloud Environment.
The following YAML shows all configuration options with their default values:
```yaml
# Configuration for the Qdrant operator
@@ -70,21 +71,12 @@ settings:
# log_level: INFO
# Default network policies to create for a qdrant cluster
networkPolicies:
# ingress:
# - from:
# - podSelector:
# matchLabels:
# app.kubernetes.io/name: traefik
# namespaceSelector:
# matchLabels:
# kubernetes.io/metadata.name: kube-system
# ports:
# - protocol: TCP
# port: 6333
# - protocol: TCP
# port: 6334
# - protocol: TCP
# port: 6335
ingress:
ports:
- protocol: TCP
port: 6333
- protocol: TCP
port: 6334
# Allow DNS resolution from qdrant pods at Kubernetes internal DNS server
egress:
- to:
@@ -5,6 +5,10 @@ weight: 4
# Platform Deployment Options
This page provides an overview of how to deploy Qdrant Hybrid Cloud on various managed Kubernetes platforms.
For a general list of prerequisites and installation steps, see our [Hybrid Cloud setup guide](/documentation/hybrid-cloud/hybrid-cloud-setup/).
![Akamai](/documentation/cloud/cloud-providers/akamai.jpg)
## Akamai (Linode)
@@ -19,6 +23,8 @@ First, consult your platform's managed Kubernetes instructions below. Then, **to
- [LKE Guides](https://www.linode.com/docs/products/compute/kubernetes/guides/)
- [LKE API Reference](https://www.linode.com/docs/api/)
At the time of writing, Linode [does not support CSI Volume Snaphots](https://github.com/linode/linode-blockstorage-csi-driver/issues/107).
![AWS](/documentation/cloud/cloud-providers/aws.jpg)
## Amazon Web Services (AWS)
@@ -33,6 +39,39 @@ First, consult your platform's managed Kubernetes instructions below. Then, **to
- [Amazon EKS User Guide](https://docs.aws.amazon.com/eks/latest/userguide/what-is-eks.html)
- [Amazon EKS API Reference](https://docs.aws.amazon.com/eks/latest/APIReference/Welcome.html)
Your EKS cluster needs the EKS EBS CSI driver, or a similar storage driver:
- [Amazon EBS CSI Driver](https://docs.aws.amazon.com/eks/latest/userguide/managing-ebs-csi.html)
To allow vertical scaling, you need a StorageClass with volume expansion enabled:
- [Amazon EBS CSI Volume Resizing](https://github.com/kubernetes-sigs/aws-ebs-csi-driver/blob/master/examples/kubernetes/resizing/README.md)
```yaml
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
annotations:
storageclass.kubernetes.io/is-default-class: "true"
name: ebs-sc
provisioner: ebs.csi.aws.com
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer
allowVolumeExpansion: true
```
To allow backups and restores, your EKS cluster needs the CSI snaphost controller:
- [Amazon EBS CSI Snapshot Controller](https://docs.aws.amazon.com/eks/latest/userguide/csi-snapshot-controller.html)
And you need to create a VolumeSnapshotClass:
```yaml
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshotClass
metadata:
name: csi-snapclass
deletionPolicy: Delete
driver: ebs.csi.aws.com
```
![Digital Ocean](/documentation/cloud/cloud-providers/digital-ocean.jpg)
## Digital Ocean
@@ -61,6 +100,18 @@ First, consult your platform's managed Kubernetes instructions below. Then, **to
- [GKE Tutorials](https://cloud.google.com/kubernetes-engine/docs/tutorials)
- [GKE Documentation](https://cloud.google.com/kubernetes-engine/docs/)
To allow backups and restores, your GKE cluster needs the CSI VolumeSnapshot controller and class:
- [Google GKE Volume Snapshots](https://cloud.google.com/kubernetes-engine/docs/how-to/persistent-volumes/volume-snapshots)
```yaml
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshotClass
metadata:
name: csi-snapclass
deletionPolicy: Delete
driver: pd.csi.storage.gke.io
```
![Microsoft Azure](/documentation/cloud/cloud-providers/azure.jpg)
## Mircrosoft Azure
@@ -75,6 +126,18 @@ First, consult your platform's managed Kubernetes instructions below. Then, **to
- [AKS Documentation](https://learn.microsoft.com/en-in/azure/aks/)
- [Best Practices with AKS](https://learn.microsoft.com/en-in/azure/aks/best-practices)
To allow backups and restores, your AKS cluster needs the CSI VolumeSnapshot controller and class:
- [Azure AKS Volume Snapshots](https://learn.microsoft.com/en-us/azure/aks/azure-disk-csi#create-a-volume-snapshot)
```yaml
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshotClass
metadata:
name: csi-snapclass
deletionPolicy: Delete
driver: disk.csi.azure.com
```
![Oracle Cloud Infrastructure](/documentation/cloud/cloud-providers/oracle.jpg)
## Oracle Cloud Infrastructure
@@ -89,6 +152,19 @@ First, consult your platform's managed Kubernetes instructions below. Then, **to
- [Frequently Asked Questions on OCI](https://www.oracle.com/in/cloud/cloud-native/container-engine-kubernetes/faq/)
- [OCI Product Updates](https://docs.oracle.com/en-us/iaas/releasenotes/services/conteng/)
To allow backups and restores, your OCI cluster needs the CSI VolumeSnapshot controller and class:
- [Prerequisites for Creating Volume Snapshots
](https://docs.oracle.com/en-us/iaas/Content/ContEng/Tasks/contengcreatingpersistentvolumeclaim_topic-Provisioning_PVCs_on_BV.htm#contengcreatingpersistentvolumeclaim_topic-Provisioning_PVCs_on_BV-PV_From_Snapshot_CSI__section_volume-snapshot-prerequisites)
```yaml
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshotClass
metadata:
name: csi-snapclass
deletionPolicy: Delete
driver: blockvolume.csi.oraclecloud.com
```
![OVHcloud](/documentation/cloud/cloud-providers/ovh.jpg)
## OVHcloud
@@ -117,6 +193,12 @@ First, consult your platform's managed Kubernetes instructions below. Then, **to
- [Red Hat OpenShift Kubernetes Documentation](https://docs.openshift.com/container-platform/4.15/welcome/index.html)
- [Installing on Container Platforms](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.5/html/installing/index)
Qdrant databases need a persistent storage solution. See [Openshift Storage Overview](https://docs.openshift.com/container-platform/4.15/storage/index.html).
To allow vertical scaling, you need a StorageClass with [volume expansion enabled](https://docs.openshift.com/container-platform/4.15/storage/expanding-persistent-volumes.html).
To allow backups and restores, your OpenShift cluster needs the [CSI snaphost controller](https://docs.openshift.com/container-platform/4.15/storage/container_storage_interface/persistent-storage-csi-snapshots.html), and you need to create a VolumeSnapshotClass.
![Scaleway](/documentation/cloud/cloud-providers/scaleway.jpg)
## Scaleway
@@ -145,6 +227,17 @@ First, consult your platform's managed Kubernetes instructions below. Then, **to
- [SKE Tutorials](https://docs.stackit.cloud/stackit/en/tutorials-ske-66683162.html)
- [Frequently Asked Questions on SKE](https://docs.stackit.cloud/stackit/en/faq-known-issues-of-ske-28476393.html)
o allow backups and restores, you need to create a VolumeSnapshotClass:
```yaml
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshotClass
metadata:
name: csi-snapclass
deletionPolicy: Delete
driver: cinder.csi.openstack.org
```
![Vultr](/documentation/cloud/cloud-providers/vultr.jpg)
## Vultr
@@ -153,12 +246,13 @@ First, consult your platform's managed Kubernetes instructions below. Then, **to
First, consult your platform's managed Kubernetes instructions below. Then, **to setup Qdrant Hybrid Cloud on Vultr**, follow our [step-by step documentation](/documentation/hybrid-cloud/hybrid-cloud-setup/).
### More on Vulr Kubernetes Engine
### More on Vultr Kubernetes Engine
- [VKE Guide](https://docs.vultr.com/vultr-kubernetes-engine)
- [VKE Documentation](https://docs.vultr.com/)
- [Frequently Asked Questions on VKE](https://docs.vultr.com/vultr-kubernetes-engine#frequently-asked-questions)
At the time of writing, Vultr does not support CSI Volume Snaphots.
## Next Steps