版权声明:本文为博主原创文章,未经博主允许欢迎转载,但请注明出处。 https://blog.csdn.net/liumiaocn/article/details/89205653
这篇文章介绍一下如何在Rundeck中Plugin相关的内容。
Plugin的作用
Plugin一般用于对Rundeck的功能进行扩展,尤其是在某些工具进集成方面,这种功能的扩展在Rundeck中往往以plugin的方式进行。
在哪里找到可用的Plugin
在下面的网址可以看到Rundeck所整理的目前相关的Plugin的列表,虽然远远比不上Jenkins的生态,但是也是非常不错了。
Plugin类型
使用限制分类
根据使用限制,在官方列出的Plugin被分为三种类型:
- Community:社区提供,无使用限制
- Rundeck Supported: Rundeck提供,无使用限制
- Enterprise exclusive:Rundeck提供,仅供商业版Rundeck使用
功能类别分类
按照对Rundeck功能特性的支持的分类,主要分为如下类型服务的plugin:
- Workflow Step
- Node Execution
- File Copier
- Resource Model Source
- Resource Format
- Notification
- Streaming Logging
- Execution File Storage
- Storage Facility
- Orchestrator
- Log Filters
插件开发
Rundeck提供了三种Rundeck开发的方式:
- Java plugin 开发方法: 使用Java来进行插件开发,插件以jar文件的形式存在
- Script Plugin开发方式: 使用shell脚本等方式进行插件的开发,以zip文件的形式存在
- Groovy Plugin开发方式: 使用groovy脚本来进行开发,比如Notification和Logging相关的plugin
插件使用方式
Rundeck的插件只需要将上述生成结果文件拷贝到plugin目录中即可,plugin目录如下所示:
plugin目录:$RDECK_BASE/libext
注:环境变量RDECK_BASE如果没有被修改,缺省值为:/var/lib/rundeck/
Plugin示例:Ansible相关
举例来说,为了支持使用Ansible的用户更好地使用Rundeck,在3.0.20的Rundeck的官方镜像中,已经包含了如下相关的Ansilbe插件安装,可以直接使用。
- Node Executor相关
- Workflow Node Step相关
- Workflow Step相关
- Resource Model Source相关
其他内容
参考内容
https://www.rundeck.com/open-source
https://docs.rundeck.com/docs/administration/configuration/plugins/index.html
https://www.rundeck.com/integrations/plugins
https://docs.rundeck.com/docs/developer/plugin-development.html#script-plugin-development