Apache OpenWhisk CLI 安装及使用指南
1. 项目介绍
Apache OpenWhisk 是一个分布式事件驱动的 serverless 计算框架,它允许开发者执行轻量级功能(或称为“动作”)以响应特定事件。OpenWhisk CLI(命令行界面)是与 OpenWhisk 服务交互的主要工具,支持创建、部署和管理各种类型的动作,如 Python、Java 和.NET Core 等。
2. 项目快速启动
2.1 下载二进制文件
前往 OpenWhisk CLI 的 GitHub 发布页面,选择对应操作系统的二进制文件下载。
2.2 配置环境
在终端中解压下载的文件并设置可执行权限:
tar xvfz openwhisk-cli.tar.gz
cd openwhisk-cli
chmod +x wsk
export PATH=$(pwd):$PATH
2.3 连接到 OpenWhisk 服务
首次运行时,你需要登录并设置你的 API 密钥:
./wsk property set --apihost <openwhisk-api-host> --auth <openwhisk-auth-key>
将 <openwhisk-api-host>
和 <openwhisk-auth-key>
替换为你自己的 OpenWhisk 实例信息。
2.4 快速测试
创建一个简单的 HelloWorld 动作并调用它:
echo 'function main(args) { return {"payload": "Hello, World!"}; }' > helloworld.js
./wsk action create helloWorld helloworld.js
./wsk action invoke helloWorld --result
你应该能看到类似下面的输出:
{
"payload": "Hello, World!"
}
3. 应用案例和最佳实践
- 使用
wsktrigger
命令创建触发器,将 OpenWhisk 动作与外部事件源连接。 - 利用
wskpackage
管理包,封装共享库或服务接口。 - 在 CI/CD 流程中集成
wskdeploy
,自动化部署和更新 OpenWhisk 资源。
例如,在持续集成环境中,你可以使用以下命令部署 OpenWhisk 项目:
wskdeploy -m manifest.yaml
确保有一个名为 manifest.yaml
的部署描述文件。
4. 典型生态项目
OpenWhisk 支持多种语言的运行时,包括但不限于:
- Python: 默认支持 Python 2 和 3,可以利用内置库或通过 ZIP 包导入额外依赖。
- Java: 开发 Java 动作,用于构建更复杂的服务。
- NET Core: .NET 开发者可以利用 C# 创建服务,享受跨平台的优势。
此外,OpenWhisk 还可以与其他云服务(如 Slack 或 API Gateway)集成,实现事件驱动的应用逻辑。
本文档提供了基本的 OpenWhisk CLI 操作指导,要了解更多详细信息,建议访问 Apache OpenWhisk 的官方文档和示例仓库。