使用 Kubectl 部署 NebulaGraph 集群¶
历史版本兼容性
1.x 版本的 NebulaGraph Operator 不兼容 3.x 以下版本的 NebulaGraph。
前提条件¶
创建集群¶
本文以创建名为nebula
的集群为例,说明如何部署 NebulaGraph 集群。
-
社区版集群示例,创建名为
apps_v1alpha1_nebulacluster.yaml
的文件。apiVersion: apps.nebula-graph.io/v1alpha1 kind: NebulaCluster metadata: name: nebula spec: graphd: resources: requests: cpu: "500m" memory: "500Mi" limits: cpu: "1" memory: "1Gi" replicas: 1 image: vesoft/nebula-graphd version: v3.2.1 service: type: NodePort externalTrafficPolicy: Local logVolumeClaim: resources: requests: storage: 2Gi storageClassName: gp2 metad: resources: requests: cpu: "500m" memory: "500Mi" limits: cpu: "1" memory: "1Gi" replicas: 1 image: vesoft/nebula-metad version: v3.2.1 dataVolumeClaim: resources: requests: storage: 2Gi storageClassName: gp2 logVolumeClaim: resources: requests: storage: 2Gi storageClassName: gp2 storaged: resources: requests: cpu: "500m" memory: "500Mi" limits: cpu: "1" memory: "1Gi" replicas: 3 image: vesoft/nebula-storaged version: v3.2.1 dataVolumeClaim: resources: requests: storage: 2Gi storageClassName: gp2 logVolumeClaim: resources: requests: storage: 2Gi storageClassName: gp2 reference: name: statefulsets.apps version: v1 schedulerName: default-scheduler imagePullPolicy: Always
参数描述如下:
参数 默认值 描述 metadata.name
- 创建的 NebulaGraph 集群名称。 spec.graphd.replicas
1
Graphd 服务的副本数。 spec.graphd.images
vesoft/nebula-graphd
Graphd 服务的容器镜像。 spec.graphd.version
v3.2.1
Graphd 服务的版本号。 spec.graphd.service
- Graphd 服务 Service 配置。 spec.graphd.logVolumeClaim.storageClassName
- Graphd 服务的日志盘存储配置。 spec.metad.replicas
1
Metad 服务的副本数。 spec.metad.images
vesoft/nebula-metad
Metad 服务的容器镜像。 spec.metad.version
v3.2.1
Metad 服务的版本号。 spec.metad.dataVolumeClaim.storageClassName
- Metad 服务的数据盘存储配置。 spec.metad.logVolumeClaim.storageClassName
- Metad 服务的日志盘存储配置。 spec.storaged.replicas
3
Storaged 服务的副本数。 spec.storaged.images
vesoft/nebula-storaged
Storaged 服务的容器镜像。 spec.storaged.version
v3.2.1
Storaged 服务的版本号。 spec.storaged.dataVolumeClaim.storageClassName
- Storaged 服务的数据盘存储配置。 spec.storaged.logVolumeClaim.storageClassName
- Storaged 服务的日志盘存储配置。 spec.reference.name
- 依赖的控制器名称。 spec.schedulerName
- 调度器名称。 spec.imagePullPolicy
NebulaGraph 镜像的拉取策略。关于拉取策略详情,请参考 Image pull policy。 镜像拉取策略。
-
创建 NebulaGraph 集群。
kubectl create -f apps_v1alpha1_nebulacluster.yaml
返回:
nebulacluster.apps.nebula-graph.io/nebula created
-
查看 NebulaGraph 集群状态。
kubectl get nebulaclusters.apps.nebula-graph.io nebula
返回:
NAME GRAPHD-DESIRED GRAPHD-READY METAD-DESIRED METAD-READY STORAGED-DESIRED STORAGED-READY AGE nebula 1 1 1 1 3 3 86s
删除集群¶
使用 Kubectl 删除 NebulaGraph 集群的命令如下:
kubectl delete -f apps_v1alpha1_nebulacluster.yaml
后续操作¶
最后更新:
February 23, 2023