首先 OpenFaaS 可以部署在 k8s, OpenShift, Docker Swarm 上,其中官方推荐使用 k8s
Install faas-cli
如果是Mac的话,可以直接 brew install faas-cli
Create two namespaces openfaas & openfaas-fn
kubectl apply -f https://raw.githubusercontent.com/openfaas/faas-netes/master/namespaces.yml
安装
本地dev安装
- create secret: 
kubectl -n openfaas create secret generic basic-auth --from-literal=basic-auth-user=admin --from-literal=basic-auth-password=admin - clone the project: 
git clone https://github.com/openfaas/faas-netes - install: 
cd faas-netes,kubectl apply -f ./yaml会安装一系列pod/service/configmap… - setup credential: 
export OPENFAAS_URL=http://<your-ip>:31112,echo -n 'admin' | faas-cli login --password-stdin第一步设置的secret - visit: 
http://<your-ip>:31112 
Production安装推荐使用 Helm
添加helm repohelm repo add openfaas https://openfaas.github.io/faas-netes/
1  | helm repo update \  | 
具体的configuration,可以看这里
尝试 Deploy Function
完成上述安装步骤之后,就可以尝试部署Function了;deploy function可以通过UI/Restful API/CLI多种方式实现,其实都是内部调用api..
首先看下UI方式,点击Deploy New Function
选择一个感兴趣的尝试,当然我选择,输入字符,输出ASCII logo的func
点击右下角Deploy之后,可以直观的看到,这里OpenFaaS的策略是,部署image为pod,等待状态变为Ready即可; 输入字符,点击invoke就可以得到结果
上述方法是在UI上直接操作,太黑盒了;可以使用faas-cli来创建;先删除这个Function
1  | # 下面的命令效果跟UI操作一样  | 
下一篇,尝试创建一个自己的Function