使用Nebula Operator在K8s部署
目录安装Nebula Operator依赖安装 CertManager安装 OpenKruise安装Nebula Operator安装Nebula Cluster访问Nebula Cluster在开始安装之前要做一些准备工作,在你的服务器上要安装如下的基础工具。KubectlHelmDocker因为是基于K8s进行部署的,所以要提前准备好K8s集群安装Nebula Operator依赖然后我们安装
·
目录
在开始安装之前要做一些准备工作,在你的服务器上要安装如下的基础工具。
- Kubectl
- Helm
- Docker
因为是基于K8s进行部署的,所以要提前准备好K8s集群
安装Nebula Operator依赖
然后我们安装一些Operator的依赖
安装 CertManager
安装命令
helm install cert-manager cert-manager --repo https://charts.jetstack.io \
--namespace cert-manager --create-namespace --version v1.3.1 \
--set installCRDs=true
过一会儿我们查看Pod跑起来没有
安装 OpenKruise
安装命令
helm install kruise \
https://github.com/openkruise/kruise/releases/download/v0.8.1/kruise-chart.tgz
过一会儿进行查看
添加 Nebula Operator Charts
helm repo add nebula-operator https://vesoft-inc.github.io/nebula-operator/charts
helm repo update
至此为止需要的依赖就已经全部安装完成,就可以开始安装Nebula Operator了
安装Nebula Operator
安装命令
helm install nebula-operator nebula-operator/nebula-operator \
--namespace nebula-operator-system --create-namespace --version 0.8.0 \
--set image.kubeRBACProxy.image=kubesphere/kube-rbac-proxy:v0.8.0 \
--set image.kubeScheduler.image=kubesphere/kube-scheduler:v1.18.8
过一会儿检查Pod跑起来没有
至此Nebula Operator就已经就绪了,接下来安装Nebula Cluster
安装Nebula Cluster
首先需要获取Storageclass,我本地只有nfs所以我就使用nfs,其他可以视情况而定。
# 创建 Nebula Cluster 的名称
$ export NEBULA_CLUSTER_NAME=nebula
# 创建 Nebula Cluster 的 namespace
$ export NEBULA_CLUSTER_NAMESPACE=nebula
# 创建 Nebula Cluster 的 StorageClass 名称,这里设置为之前查找到的 alicloud-disk-ssd
$ export STORAGE_CLASS_NAME=alicloud-disk-ssd
# 创建 Nebula Cluster 中每个组建所使用存储的大小
$ export STORAGE_SIZE_GRAPHD=20Gi
$ export STORAGE_SIZE_METAD=20Gi
$ export STORAGE_SIZE_STORAGED=20Gi
# 创建 Nebula Cluster
$ helm install ${NEBULA_CLUSTER_NAME} nebula-operator/nebula-cluster \
--namespace ${NEBULA_CLUSTER_NAMESPACE} --create-namespace --version 0.1.0 \
--set nameOverride=${NEBULA_CLUSTER_NAME} \
--set nebula.storageClassName="${STORAGE_CLASS_NAME}" \
--set nebula.graphd.storage="${STORAGE_SIZE_GRAPHD}" \
--set nebula.metad.storage="${STORAGE_SIZE_METAD}" \
--set nebula.storaged.storage="${STORAGE_SIZE_STORAGED}"
# 稍等一会儿,检测 Nebula Cluster 是否启动正常
$ kubectl -n ${NEBULA_CLUSTER_NAMESPACE} get nebulacluster
NAME GRAPHD-DESIRED GRAPHD-READY METAD-DESIRED METAD-READY STORAGED-DESIRED STORAGED-READY AGE
nebula 2 2 3 3 3 3 4m10s
$ kubectl -n ${NEBULA_CLUSTER_NAMESPACE} get pod
NAME READY STATUS RESTARTS AGE
nebula-graphd-0 1/1 Running 0 96s
nebula-graphd-1 1/1 Running 0 96s
nebula-metad-0 1/1 Running 0 97s
nebula-metad-1 1/1 Running 0 97s
nebula-metad-2 1/1 Running 0 97s
nebula-storaged-0 1/1 Running 0 97s
nebula-storaged-1 1/1 Running 0 97s
nebula-storaged-2 1/1 Running 0 97s
访问Nebula Cluster
K8s内部访问
首先,在 Kubernetes 中启动一个 Nebula Graph Console,执行命令如下:
$ cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: Pod
metadata:
name: nebula-console
spec:
containers:
- name: nebula-console
image: vesoft/nebula-console:v2.0.1
command:
- sleep
- "1000000"
EOF
然后通过刚才创建的Nebula Graph Console来访问集群
至此整个部署流程,就完全结束了。
更多推荐
已为社区贡献3条内容
所有评论(0)