Kubeless 是一個基于 Kubernetes 的 Serverless 框架。
創(chuàng)建 Kubeless 相關(guān)的資源文件。
export RELEASE=$(curl -s https://api.github.com/repos/kubeless/kubeless/releases/latest | grep tag_name | cut -d '"' -f 4)
kubectl create ns kubeless
kubectl create -f https://github.com/kubeless/kubeless/releases/download/$RELEASE/kubeless-$RELEASE.yaml
創(chuàng)建 Kubeless CLI 可執(zhí)行文件:
export OS=$(uname -s| tr '[:upper:]' '[:lower:]')
curl -OL https://github.com/kubeless/kubeless/releases/download/$RELEASE/kubeless_$OS-amd64.zip && \
unzip kubeless_$OS-amd64.zip && \
sudo mv bundles/kubeless_$OS-amd64/kubeless /usr/local/bin/
示例函數(shù)(Python,test.py ):
def hello(event, context):
print event
return event['data']
kubeless function deploy hello --runtime python2.7 \
--from-file test.py \
--handler test.hello
- hello :函數(shù)名。
- --runtime python2.7 :執(zhí)行環(huán)境是 Python 2.7
- --from-file :源文件
- --handler :執(zhí)行函數(shù)。
kubeless function deploy hello --runtime python2.7 \
--from-file test.py \
--handler test.hello
測試函數(shù):
kubeless function call hello --data 'Hello world!'
kubectl proxy -p 8080
再開一個新的終端:
curl -L --data '{"Another": "Echo"}' \
--header "Content-Type:application/json" \
localhost:8080/api/v1/namespaces/default/services/hello:http-function-port/proxy/