0. 前置条件
- 安装go
安装步骤略。
1. 下载operator-sdk源码包
bash
https://github.com/operator-framework/operator-sdk
1.1 选择适合当前go版本的operator版本,在operator-sdk/go.mod文件中可以查看Operator-sdk使用的go版本。
2. 编译
源码包下载后,解压,进入到根目录,执行:
bash
make install
3. 打包二进制可执行文件
bash
cd /operator-sdk-1.31.0/cmd/operator-sdk/
go build -o operator-sdk main.go
编译成功后,会在目录下生成一个operator-sdk二进制文件。
4. 复制到/usr/local/bin目录下
bash
cp ./operator-sdk /usr/local/bin/
chmod -R 777 /usr/local/bin/operator-sdk
# 检查是否安装成功
operator-sdk -version
5. 使用operator-sdk创建一个operator
参考:Quickstart for Go-based Operators | Operator SDK
5.1 创建一个文件夹redis-operator
5.2 执行init
bash
mkdir redis-operator
cd redis-operator
operator-sdk init --domain example.com --repo github.com/xiaozhuge/redis-operator
5.3 创建api
bash
operator-sdk create api --group db --version v1alpha1 --kind RedisCluster --resource --controller
5.4 生成crd
修改结构体后,需要重新生成crd。
bash
make manifests