专栏名称: OSC开源社区
OSChina 开源中国 官方微信账号
目录
相关文章推荐
程序猿  ·  完美解释了递归,哈哈哈哈 ·  4 天前  
码农翻身  ·  国外巨头们开始“抄”国产技术了! ·  3 天前  
程序员的那些事  ·  趣图:Python 和 Pycharm 闭环了? ·  4 天前  
程序员的那些事  ·  趣图:某些大厂“吃”企鹅 ·  1 周前  
51好读  ›  专栏  ›  OSC开源社区

谷歌开源的 Kubernetes 机器学习工具集 | 软件推介

OSC开源社区  · 公众号  · 程序员  · 2017-12-17 08:30

正文


Kubeflow 是谷歌发布的一个机器学习工具库

授权协议:Apache

开发语言:Python

操作系统:跨平台

开发厂商:Google


简介


Kubeflow 是谷歌发布的一个机器学习工具库,Kubeflow 项目旨在使 Kubernetes 上的机器学习变的轻松、便捷、可扩展,其目标不是重建其他服务,而是提供一种简便的方式找到最好的 OSS 解决方案。该库包含包含的清单用于创建:


  • 用于创建和管理交互式 Jupyter notebook 的 JupyterHub

  • 可配置为使用 CPU 或 GPU,并通过单一设置调整至单个集群大小的 TensorFlow 训练控制器(Tensorflow Training Controller)

  • TF 服务容器(TF Serving container)


该文档详述在可运行 Kubernetes 的任何环境中运行 kubeflow 项目的步骤。


Kubeflow 目标


其目标是通过发挥 Kubernetes 的特长,从而更便捷地运用机器学习:


  • 在不同的基础设施上实现简单、可重复的便携式部署(笔记本 ML 装备 训练集群 生产集群)

  • 部署和管理松散耦合的微服务

  • 根据需求进行扩展


由于机器学习从业者可供使用的工具非常多,所以核心目标是你可以根据需求自定义堆栈,并让系统处理无赖的东西」。虽然我们已开始使用少许技术,但我们正在与很多不同项目展开合作,以涵盖更多额外的工具。最终,我们希望给出一组简单的清单,只要在 Kubernetes 已运行的地方便能轻松使用 ML 堆栈,并可根据部署的集群实现自我配置。


设置


该文档假设你已经有一个可用的 Kubernetes 集群。对于具体的 Kubernetes 安装,可能需要额外的配置。


Minikube


Minikube 是一个让我们在本地运行 Kubernetes 更方便的工具。Minikube 会在笔记本的虚拟环境中运行一个单结点 Kubernetes 集群,从而令用户可以在该环境中试验它或执行日常的开发工作。下面的步骤适用于 Minikube 集群,本文档当前使用的是最新版 0.23.0,我们必须配置 Kubectl 才能访问 Minikube。


谷歌 Kubernetes 引擎


谷歌 Kubernetes 引擎是一个可用于部署容器化应用的托管环境。它融合了提高开发生产力、有效利用资源、自动化运维和开源灵活性方面的最新创新技术,能够加快模型进入市场以及迭代的时间。


谷歌在容器中运行生产工作负载的经验已超过 15 年,他们将在此期间学到的经验知识融入到了 Kubernetes 中。因此,Kubernetes 是行业领先的开源容器协调系统,为 Kubernetes Engine 提供技术支持。


如果读者正在使用谷歌 Kubernetes 引擎,在创建清单前,我们应该先授予自己所要求的 RBAC 角色,因而才能创建或编辑其它 RBAC 角色。


kubectl create clusterrolebinding default-admin --clusterrole=cluster-admin [email protected]



推荐阅读

要火!Python 纳入高考科目;PHP、JS 等主流编程语言爆安全漏洞

Java 10 新特性解密,引入类型推断机制

必备 SQL 查询优化技巧,提升网站访问速度

Spring boot + LayIM + t-io 好友申请通知的实现

Linux 运维人员最常用 150 个命令汇总

点击“阅读原文”查看更多精彩内容