├── Gopkg.lock
├── Gopkg.toml
├── README.md
├── bin
├── build
├── cmd 实际程序入口
├── config.toml
├── deploy
├── hack
├── pkg 调用的入口
├── templates
└── vendor 第三方的包
- kubernetes的版本在1.14及以上
- 安装lvm插件
- 创建名字为vgdata的卷组(VG)
可以运行 ./hack/test.sh
脚本编译所有插件
- 先部署
deploy/csi-plugin/
下的yaml文件创建CSI的许可以及自定义资源 - 再部署
deploy/csi-plugin/lvm
下的yaml文件,创建辅助pod
- 创建
deploy/crd.yaml
创建storagelabel自定义资源(历史遗留问题)
有两种方式部署ETCD
- 在kubernetes中部署,以NodePort方式暴露服务,使用ETCD-Operator
- 在本机上部署
# 把etcd后换成你的etcd服务地址
./coordinator --etcd 127.0.0.1:30085 --port 8888
# coordinator后换成coordinator的ip
./csi-plugin --endpoint unix://var/lib/kubelet/plugins/lvmplugin.csi.alibabacloud.com/csi.sock --nodeid `hostname` --coordinator master:50051 &
# coordinator后换成coordinator的ip
./catch-up --coordinator master:50051 --node `hostname` &
# 需要一个config文件在同级目录,参考 config.toml
# 根据hostname修改里面[node]的内容,其他暂时不用修改