在 K8s 上运行 GraphScope

本文将详细介绍:

  1. 如何基于 Kubernetes 集群部署 GraphScope ;
  2. 背后的工作细节;
  3. 如何在分布式环境中使用自己构建的 GraphScope 开发镜像。
    快速访问:https://github.com/alibaba/GraphScope

上篇文章介绍了 GraphScope 可以很容易在单机环境下进行部署。然而在真实的工业场景中,需要处理的图数据规模十分巨大,已远远超过了单机的处理能力。因此除单机部署方式外,借助 vineyard 提供的分布式内存数据管理能力,GraphScope 也支持在 Kubernetes 集群上运行。

前置准备
在开始之前,请确保当前环境满足下述条件之一:

Linux 系统:ubuntu18.04+ 或 centos7+;
macOS (Big Sur) 11.2.1+。
以及具备以下依赖:

Docker
kubectl
一套可用的 K8s 环境,可以是
一个 K8s 集群
或者是 kind/minikube 之类的单机模拟集群的工具
由于 minikube 在服务暴露上与 Kubernetes 不兼容,因此本文以 Kind[1] 为例,介绍如何在本地单机构建一个虚拟 Kubernetes 集群并做部署。如果想搭建一个真实的多节点集群,可以参照 K8s 官方支持的文档[2]搭建;如果你不想手动管理一个 Kubernetes 集群,也可以选择一个经过认证的平台来托管部署服务,如 Aliyun ACK[3] 、AWS EKS[4] 等。

如果已经满足依赖并安装完 kind 之后,首先通过以下命令初始化一个本地虚拟集群:

$ kind create cluster
如果你不想手动逐个安装依赖,也可以使用 GraphScope 提供的脚本,来安装需要的依赖并初始化虚拟集群:

$ wget -O - https://raw.githubusercontent.com/alibaba/GraphScope/main/scripts/install_deps.sh | bash -s – --k8s
脚本的执行过程会安装所需依赖并尝试检测通过 Kind 拉起 Kubernetes 集群。如果你选择不使用 Kind,也可以使用社区支持的其它工具[5]搭建 Kubernetes 群集。

完成本地虚拟化集群的拉起后,我们可以运行如下命令来查看 Kubernetes 配置是正确的:

$ kubectl get nodes

NAME STATUS ROLES AGE VERSION
node1 Ready 5d9h v1.22.3-aliyun.1
如果上述命令报错,则说明集群并未准备就绪。请参考 Kubernetes 相关文档[6] 查看问题。

为了完整运行下文中的示例,你还需要在本机上安装 GraphScope Python 客户端。

pip3 install graphscope
通过 Python 进行集群部署
GraphScope 以 docker 镜像的方式发布引擎组件。默认情况下,如果运行 GraphScope 的机器不存在对应镜像,则会拉取当前版本的最新镜像,因此,请确保你的集群可以正常访问公共镜像仓库。

会话(session)[7]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值