Flags: --conversion if set, scaffold the conversion webhook --defaulting if set, scaffold the defaulting webhook --force attempt to create resource even if it already exists --group string resource Group -h, --help help for webhook --kind string resource Kind --plural string resource irregular plural form --programmatic-validation if set, scaffold the validating webhook --version string resource Version
mkdir demo-operator cd demo-operator kubebuilder init --domain demo.com --repo demo.com/tutorial
这一步创建了 Go module 工程基本的模板文件,引入了必要的依赖
如果不用–repo参数,也可以先
1
go mod init demo.com/tutorial
手动初始化一个go module工程
打印的日志
1 2 3 4 5 6 7 8
Writing kustomize manifests for you to edit... Writing scaffold for you to edit... Get controller runtime: $ go get sigs.k8s.io/controller-runtime@v0.10.0 Update dependencies: $ go mod tidy Next: define a resource with: $ kubebuilder create api
[root@paas-m-k8s-master-1 ~]# kubectl plugin list The following compatible plugins are available:
/root/.krew/bin/kubectl-krew
krew命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
[root@paas-m-k8s-master-1 ~]# kubectl krew krew is the kubectl plugin manager. You can invoke krew through kubectl: "kubectl krew [command]..."
Usage: kubectl krew [command]
Available Commands: help Help about any command index Manage custom plugin indexes info Show information about an available plugin install Install kubectl plugins list List installed kubectl plugins search Discover kubectl plugins uninstall Uninstall plugins update Update the local copy of the plugin index upgrade Upgrade installed plugins to newer versions version Show krew version and diagnostics
比较简单,命令参数不多。
搜素
安装
1
kubectl krew install ns
查看安装
1 2 3 4 5
[root@paas-m-k8s-master-1 ~]# kubectl krew list PLUGIN VERSION krew v0.4.4 ns v0.9.5
Error: unable to build kubernetes objects from release manifest: error validating “”: error validating data: [ValidationError(Alertmanager.spec): unknown field “alertmanagerConfigNamespaceSelector” in com.coreos.monitoring.v1.Alertmanager.spec, ValidationError(Alertmanager.spec): unknown field “alertmanagerConfigSelector” in com.coreos.monitoring.v1.Alertmanager.spec]