侧边栏壁纸
  • 累计撰写 244 篇文章
  • 累计创建 16 个标签
  • 累计收到 0 条评论
隐藏侧边栏

Kubernetes 部署 OpenFaaS

kaixindeken
2021-02-23 / 0 评论 / 0 点赞 / 129 阅读 / 1,957 字

本教程基于真实的服务器环境。

一、准备

  • Kubernetes 集群

二、安装 fass-cli

在 MacOS,Windows(Git Bash) 和 Linux 可以用如下命令安装:

# MacOS 和 Linux

$ curl -sL https://cli.openfaas.com | sudo sh

# Windows
$ curl -sL https://cli.openfaas.com | sh

CLI 在 MacOS 上还可以通过 brew 命令安装:

$ brew install faas-cli

三、部署 OpenFaaS

官方给出三种部署方式: arkadehelm 和纯 YAML 文件。

我们选择最简单的配置方式 纯 YAML 文件

  • 下载 OpenFaaS 代码包

    $ git clone https://github.com/openfaas/faas-netes
    
  • 创建 OpenFaaS 命名空间

    $ cd faas-netes
    $ kubectl apply -f ./namespaces.yml
    
  • 创建密码( $PASSWORD 为自定密码 )

    $ kubectl -n openfaas create secret generic basic-auth \
    --from-literal=basic-auth-user=admin \
    --from-literal=basic-auth-password=$PASSWORD
    
  • 安装所有组件

    $ kubectl apply -f ./yaml/
    
  • 检测是否创建成功

    $ kubectl get pod -n openfaas
    

当然也可以选择 helm 的配置方式

  • 安装 Helm 3 (已安装可跳过)

    $ curl -sSLf https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash
    
  • 执行如下命令会创建两个命名空间,一个用于 OpenFaaS 核心服务,另一个用于函数服务。

    $ kubectl apply -f https://raw.githubusercontent.com/openfaas/faas-netes/master/namespaces.yml
    
  • 将 OpenFaaS 加入 helm 资源列表

    $ helm repo add openfaas https://openfaas.github.io/faas-netes/
    
  • 设置用户并部署 OpenFaaS 服务( $PASSWORD 为自定密码 )

    $ kubectl -n openfaas create secret generic basic-auth \
    --from-literal=basic-auth-user=admin \
    --from-literal=basic-auth-password=$PASSWORD
    
  • 验证安装

    • 通过如下命令获取服务的 IP 和端口
    $ kubectl get svc -n openfaas gateway-external -o wide
    
    • 设置环境变量
    $ export OPENFAAS_URL=http://<服务器 IP 地址>:31112
    
    • 通过刚刚设置的 $PASSWORD 登录,测试连接
    echo -n $PASSWORD | faas-cli login -g $OPENFAAS_URL -u admin --password-stdin
    
    faas-cli version
    
    • 访问 http://<服务器 IP 地址>:31112 登陆测试,可部署模版函数(如 NodeInfo 模板)测试 OpenFaas 能够使用

更多详情参考[这里](

0

评论区