摘要:目前已经有一批优秀的架构开源项目,就是其中的佼佼者。这是一个自学研讨会,学习如何构建部署和运行函数。在文档中有他们两个的指南。在中我们使用发布函数。在此屏幕上检查服务是否显示为如果你期间有遇到任何问题,请查阅的部署指南。
今天大多数公司在开发应用程序并将其部署在服务器上的时候,无论是选择公有云还是私有的数据中心,都需要提前了解究竟需要多少台服务器、多大容量的存储和数据库的功能等。并需要部署运行应用程序和依赖的软件到基础设施之上。假设我们不想在这些细节上花费精力,是否有一种简单的架构模型能够满足我们这种想法?这个答案已经存在,这就是今天软件架构世界中新鲜但是很热门的一个话题——Serverless(无服务器)架构。
目前已经有一批优秀的serverless架构开源项目,OpenFaas就是其中的佼佼者。奈何其中的中文资料比较少,我也是边学边翻译,希望能够抛砖引玉,助力serverless的发展。
这是一个自学研讨会,学习如何构建、部署和运行OpenFaas 函数。
Lab1 - OpenFaas的准备工作OpenFaas可以在Docker Swarm和Kubernetes的过几个主要平台之上运行。在此教程里,我们将会在的您本地电脑使用Docker Swarm来入门。
预备条件 DockerMac
Docker CE for Mac Edge Edition
Windows
仅针对windows10 专业版或企业版
安装Docker CE for Windows
安装Git Bash
备注:所有步骤中请使用Git Bash:不要尝试使用WSL或Bash for Windows。
Linux - Ubuntu 或 Debian
Docker CE for Linux
你可以从Docker Store中安装Docker CE设置一个单节点的Docker Swarm
OpenFaas在Docker Swarm和Kubernetes上工作。因为Docker Swarm很容易设置,所以在此Workshop中我们使用Docker Swarm。在文档中有他们两个的指南。
在你的笔记本或虚拟机中设置一个单节点的Docker Swarm:
$ docker swarm init
如果运行此命令出错,加上 --advertise-addr 你的IP 参数。Docker Hub
注册一个Docker Hub账号。Docker Hub允许你在互联网中发布自己的Docker镜像来用于多节点集群或社区共享。在Workshop中我们使用Docker Hub发布函数。
你可以在这里注册:Docker Hub
备注:Docker Hub也可以设置为自动构建镜像。
打开一个终端或者Git Bash窗口,然后使用上面注册的用户名登陆Docker Hub。
$ docker loginOpenFaas CLI
你可以在mac上使用brew或者在Linu和mac上使用一个集成脚本来安装OpenFaas CLI。
在Mac或Linux上终端中输入:
$ curl -sL cli.openfaas.com | sudo sh
对于windows平台,从releases page中下载最新的的faas-cli.exe。你可以把它放在一个local文件夹或者在C:Windows路径中,这样它就可以在命令行中使用。
如果你是一个高级Windows用户,把CLI放在你自定义的文件夹中,然后把此文件夹添加到环境变量。
我们将会使用faas-创建新函数的脚手架,build,deploy和invoke函数。你可以从faas-cli —help中找到这些命令。
测试faas-cli
打开一个终端或Git Bash窗口,然后输入:
$ faas-cli help $ faas-cli version部署OpenFaas
发布OpenFaas的说明文档修改了很多次,因为我们努力使他简单。接下来将会在60秒左右的时间使得OpenFaas部署起来。
首先clone项目
git clone https://github.com/openfaas/faas
然后使用git检出到最新版本
$ cd faas && git checkout master
备注:你也可以在project release page中找到最新导入release版本。
现在使用Docker Swarm部署stack
$ ./deploy_stack.sh
你现在应该已经把OpenFaas部署了。
如果你现在在一个共享WIFI连接中,它将会需要几分钟时间拉取镜像并启动。
在此屏幕上检查服务是否显示为1/1:
$ docker service ls
如果你期间有遇到任何问题,请查阅Docker Swarm的 部署指南。
现在进入Lab 2。
未完待续文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/95702.html
摘要:是完全开源的联盟区块链底层技术平台,由金融区块链合作联盟深圳简称金链盟成立开源工作组通力打造。我们鼓励机构成员开发者等社区伙伴参与开源共建事业,有你在一起,会更了不起。 FISCOBCOS是完全开源的联盟区块链底层技术平台,由金融区块链合作联盟(深圳)(简称金链盟)成立开源工作组通力打造。开源工作组成员包括博彦科技、华为、深证通、神州数码、四方精创、腾讯、微众银行、亦笔科技和越秀金科等...
摘要:微软本次提出的主要是为服务网格提供通用接口,以便能让有更加通用的规范就像当初那样子这里我不想引起其他问题,但生态中还是存在着各种各样的选择,希望大家理性选择,同时需要注意的是这个中公布的厂商中唯独没有的存在。 「K8S 生态周报」内容主要包含我所接触到的 K8S 生态相关的每周值得推荐的一些信息。欢迎订阅知乎专栏「k8s生态」。 KubeCon EU 举办 2019 年第一个 Kube...
摘要:微软本次提出的主要是为服务网格提供通用接口,以便能让有更加通用的规范就像当初那样子这里我不想引起其他问题,但生态中还是存在着各种各样的选择,希望大家理性选择,同时需要注意的是这个中公布的厂商中唯独没有的存在。 「K8S 生态周报」内容主要包含我所接触到的 K8S 生态相关的每周值得推荐的一些信息。欢迎订阅知乎专栏「k8s生态」。 KubeCon EU 举办 2019 年第一个 Kube...
摘要:是微软创投加速器的成员,本周我们的和参加了微软创投加速器的。同学在培训中表现出色获得了微软赠送的纪念品。 SegmentFault是微软创投加速器的成员,本周我们的@joyqi和@lvye参加了微软创投加速器的Windows Azure Workshop。lvye同学在培训中表现出色获得了微软赠送的纪念品。 showImg(http://segmentfault.com/img/bV...
摘要:维基百科抽象工厂的例子构建模式当构建一个复杂对象时,就可以使用建造者模式。在中,类中的方法就是适配器模式的例子,把一个数组转换为一个集合。这种设计模式的好处是方便添加一种车巴士,只需要继承类。 写在前面 评判一个程序员是否优秀,就是 show me the code。优秀的代码可读性强,高内聚低耦合,可扩展。想要写优秀的代码,做个优秀的程序员,就需要多看看大牛写的开源框架,吸取其中的精...
阅读 1780·2023-04-25 14:33
阅读 3381·2021-11-22 15:22
阅读 2178·2021-09-30 09:48
阅读 2685·2021-09-14 18:01
阅读 1743·2019-08-30 15:55
阅读 3007·2019-08-30 15:53
阅读 2141·2019-08-30 15:44
阅读 650·2019-08-30 10:58