SKILL·E6A8E4

qdrant-hybrid-cloud-setup

qdrant
Updated 17 days ago
4 views
254
30
254
View on GitHub
Metaaidesign

About

This skill provides comprehensive guidance for deploying Qdrant Hybrid Cloud on your own Kubernetes infrastructure, covering prerequisites, storage configuration, and cluster management. It helps developers install the Qdrant agent/operator, set up storage classes, expose clusters securely, and handle registry mirroring. Use it when deploying Hybrid Cloud on EKS/GKE/AKS/OpenShift or troubleshooting installation failures related to storage or connectivity.

Quick Install

Claude Code

Recommended
Primary
npx skills add qdrant/skills -a claude-code
Plugin CommandAlternative
/plugin add https://github.com/qdrant/skills
Git CloneAlternative
git clone https://github.com/qdrant/skills.git ~/.claude/skills/qdrant-hybrid-cloud-setup

Copy and paste this command in Claude Code to install this skill

Documentation

Setting Up Qdrant Hybrid Cloud

You've already chosen Hybrid Cloud (managed control plane on your own infra). If you're still deciding, that's the qdrant-deployment-options skill. Most setup failures trace to one of two things: storage (the CSI driver can't do what Qdrant needs) or connectivity (the agent can't reach Qdrant Cloud). Diagnose which before touching anything else.

Preparing the Kubernetes cluster (do this first)

Use when: about to create the environment, or the install/cluster provisioning failed on storage.

  • Qdrant needs a block-storage CSI driver. Network storage (NFS) and object storage (S3) are unsupported: a cluster wired to those will fail, not degrade Prerequisites.
  • Create the StorageClass (with allowVolumeExpansion: true) and the VolumeSnapshotClass beforehand, not after. Without volume expansion you can't grow disk later; without a VolumeSnapshotClass and the CSI snapshot controller you can't take backups.
  • Any standards-compliant Kubernetes works, and there's platform-specific setup guidance for the managed ones: Akamai (Linode/LKE), AWS (EKS), Civo, DigitalOcean (DOKS), Gcore, GCP (GKE), Azure (AKS), Oracle (OKE), OVHcloud, Red Hat OpenShift, Scaleway, STACKIT, and Vultr Deployment Platforms.
  • Platform matters for what storage supports: some (e.g. Linode/LKE, Vultr) don't support CSI volume snapshots at all, so backups are unavailable there. Check your provider's snapshot page and prefer its recommended instance and disk types (e.g. gp3 on EKS, Premium SSD v2 on AKS) before committing.
  • Confirm outbound connectivity: the agent opens connections to grpc.cloud.qdrant.io and api.cloud.qdrant.io on 443. Firewalls/egress proxies block this silently: a "stuck installing" agent is usually this.
  • You need cluster-admin plus kubectl and helm configured against the target cluster.

Creating the environment

Use when: running the install wizard in the Cloud Console.

  • The Kubernetes namespace is permanent: it's the one choice you can't change later. Everything else (node selectors, tolerations, registry URLs, proxy) is editable after creation, so don't over-think them now.
  • The wizard generates a one-time install command that creates secrets and installs the agent + operator via Helm. You only need it for the initial install; updates happen from the Console afterward Setup guide.
  • Advanced operator behavior (pod scheduling, security context, ingress, networking, and snapshot management) is tuned in the operator configuration at the environment level, and can be changed after install Operator configuration.
  • Air-gapped or registry-restricted? Mirror the /qdrant/ images and /qdrant-charts/ charts into your own registry and set the container + chart URLs in the environment's advanced section. Sync all architectures (or the right one) or ARM/x86 nodes will fail to pull.

Creating a cluster in the environment

Use when: the environment exists and you're provisioning a database.

  • Pick the Database Storage Class and Volume Snapshot Class here. Setting Volume Snapshot Class to None disables backups; emptyDir for the snapshot volume makes it ephemeral (lost on pod restart): deliberate choices, not defaults to accept blindly Cluster creation.
  • By default Qdrant Cloud reserves ~20% CPU/memory per pod for the OS and system components. Small nodes may need more reserved; large nodes less. Aim for one database pod per node.
  • Use node selectors / tolerations / topology spread constraints to keep databases on dedicated nodes and spread across zones.

Exposing and securing a cluster

Use when: apps outside the Kubernetes cluster need to reach Qdrant, or asked about API keys/TLS.

  • Default is a ClusterIP service: internal-only, no API key. The moment you expose it (LoadBalancer, NodePort, or Ingress) you MUST configure an API key, supplied as a Kubernetes secret referenced in the cluster config Networking & security.
  • Internal node-to-node gRPC uses port 6335 and is never protected by API key or TLS. It must never be publicly reachable; Hybrid Cloud ships a NetworkPolicy restricting it, so don't loosen that.
  • TLS: offload at the ingress/LB, or terminate in Qdrant via a TLS secret. Don't do both by accident.

Logging

Use when: setting log levels or wiring cluster logs into your stack. (For metrics/Prometheus/Grafana, use the qdrant-monitoring skill instead.)

  • Log levels are set in two different places: per-database in the Cluster detail page, but for the Agent and Operator in the Hybrid Cloud Environment config, not per-cluster Networking, Logging & Monitoring.
  • Logs are plain pod logs with no Qdrant-specific format. Point any Kubernetes-aware log collector at all pods in the Qdrant namespace; nothing Qdrant-specific to configure.

What NOT to Do

  • Provision on NFS, S3, or any non-block storage: it's unsupported and will fail outright, not just run slowly.
  • Create the StorageClass/VolumeSnapshotClass (or enable allowVolumeExpansion) after the fact, then discover you can't scale disk or take backups. They must exist beforehand.
  • Assume backups "just work" on Linode or Vultr: verify CSI snapshot support for your platform first.
  • Expose a cluster via LoadBalancer/Ingress without setting an API key, or leave port 6335 publicly reachable.
  • Regenerate the install command (or rotate secrets) and forget to reapply it: the agent-to-Cloud link breaks silently until you do.
  • Delete a Hybrid Cloud environment before deleting its clusters: tear down clusters first, then the environment, then run the cleanup script, or you'll strand resources in the cluster.

GitHub Repository

qdrant/skills
Path: skills/qdrant-hybrid-cloud-setup
0
agent-skillsai-agentsclaude-codecodexcursorembeddings
FAQ

Frequently asked questions

What is the qdrant-hybrid-cloud-setup skill?

qdrant-hybrid-cloud-setup is a Claude Skill by qdrant. Skills package instructions and resources that Claude loads on demand, so Claude can perform qdrant-hybrid-cloud-setup-related tasks without extra prompting.

How do I install qdrant-hybrid-cloud-setup?

Use the install commands on this page: add qdrant-hybrid-cloud-setup to Claude Code as a plugin, or clone its repository into your skills directory, then restart Claude so it picks up the skill.

What category does qdrant-hybrid-cloud-setup belong to?

qdrant-hybrid-cloud-setup is in the Meta category.

Is qdrant-hybrid-cloud-setup free to use?

Yes. qdrant-hybrid-cloud-setup is listed on AIMCP and free to install.

Related Skills

content-collections
Meta

This skill provides a production-tested setup for Content Collections, a TypeScript-first tool that transforms Markdown/MDX files into type-safe data collections with Zod validation. Use it when building blogs, documentation sites, or content-heavy Vite + React applications to ensure type safety and automatic content validation. It covers everything from Vite plugin configuration and MDX compilation to deployment optimization and schema validation.

View skill
polymarket
Meta

This skill enables developers to build applications with the Polymarket prediction markets platform, including API integration for trading and market data. It also provides real-time data streaming via WebSocket to monitor live trades and market activity. Use it for implementing trading strategies or creating tools that process live market updates.

View skill
creating-opencode-plugins
Meta

This skill helps developers create OpenCode plugins that hook into 25+ event types like commands, files, and LSP operations. It provides the plugin structure, event API specifications, and implementation patterns for JavaScript/TypeScript modules. Use it when you need to intercept, monitor, or extend the OpenCode AI assistant's lifecycle with custom event-driven logic.

View skill
sglang
Meta

SGLang is a high-performance LLM serving framework that specializes in fast, structured generation for JSON, regex, and agentic workflows using its RadixAttention prefix caching. It delivers significantly faster inference, especially for tasks with repeated prefixes, making it ideal for complex, structured outputs and multi-turn conversations. Choose SGLang over alternatives like vLLM when you need constrained decoding or are building applications with extensive prefix sharing.

View skill