Rundeck使用文档

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 20

Rundeck 使用文档

RunDeck 是用 Java/Grails 写的开源工具,帮助用户在数据中心或者云环境中自


动化各种操作和流程。通过命令行或者 web 界面,用户可以对任意数量的服务器
进行操作。使用 project 和 tag 分类管理服务器,使用 job 管理操作。

一、 安装
Rundeck 只需要在控制节点上安装即可,client 节点不需要安装。控制节点通过 ssh 将
控制指令发送 client node,控制节点成为 server 节点。
1、 下载安装包:
地址 http://rundeck.org/downloads.html 可以下载 release 的各个版本,压缩包
有 rpm、jar、deb、tar 各类压缩包。
2、 安装环境:
a) 这里使用 jar 包安装, Rundeck 要求 Java 版本 1.6,安装期间用的 JDK、JVM,
安装前要设置好 JAVA_HOME。查看当前机器使用的 Java 版本的命令:java
–version
b) 网络端口,Rundeck 默认使用 tcp 端口 4440(http),4443(https)。查看网络端
口是否已经被使用。
3、 安装:
a) 定义 RDECK_BASE 环境变量
Export RDECK_BASE=/opt/rundeck
b) 创建 RDECK_BASE 环境变量设置的安装目录
Mkdir –p $RDECK_BASE
c) 复制安装用到的 laucher jar 包到安装目录
Cp rundeck-launcher-2.1.1.jar $RDECK_BASE
d) 切换当前路径到安装目录,进行安装操作
Cd $RDECK_BASE
Java –jar rundeck-launcher-2.1.1.jar
执行完上述命令,Rundeck 开始执行安装。
e) 等到执行输出下面信息,表示安装成功:
2014-05-20 13:35:51.127::INFO: Started SocketConnector@0.0.0.0:4440
f) 设置 shell 环境变量:
PATH=$PATH:$RDECK_BASE/tools/bin
MANPATH=$MANPATH:$RDECK_BASE/docs/man
4、 SSH 配置
Server 节点和 client 节点之间传送命令通过 SSH 发送, 因此需要配置 SSH 的 public key。
server 端配置:
当有提示时,全部回车。密码为空。产生~/.ssh/id_dsa.pub 文件.
ssh-keygen -t rsa
Client 端配置:
当有提示时,全部回车。密码为空。
ssh-keygen -t rsa
将 Server 端产生的~/.ssh/id_dsa.pub 文件复制到 Client 端的
~/.ssh/authorized_keys 文件。
设置 authorized_keys 权限
$ chmod 600 authorized_keys
设置.ssh 目录权限
$ chmod 700 .ssh
5、 client 节点管理配置:
Rundeck 的 client 节点的管理是通过在 resources.xml 配置文件中添加,删除,修
改 node 标签内的选项来管理的。Node 标签实例:
<node name="strongbad" type="Node"
description="a development host"
hostname="host:portno"
osArch="i386" osFamily="unix" osName="Darwin" osVersion="9.2.2"
tags=test
username="alexh"/>
resources.xml 配置文件在每个 project 的 etc 目录下,按照 project 来配置 node
节点的,也就是说每个 project 都有自己的 node 列表。这里是使用 launcher 安装
的,resources.xml 的路径为:
$RDECK_BASE/projects/myproj/etc/resources.xml。
二、使用
1、 startup and shutdown
rundeck 的安装方式的不同启用的方式也不同,rundeckd 脚本提供以下的操作:
rundeckd [start|stop|restart|condrestart|status]
使用 launcher 方式安装产生的 Rundeckd 脚本的位置为:
$RDECK_BASE/server/sbin/rundeckd
Startup
$RDECK_BASE/server/sbin/rundeckd start
Shutdown
$RDECK_BASE/server/sbin/rundeckd stop
2、 login
rundeck 默认使用 4440 端口,登陆 Rundeck 需要在浏览器地址栏输入 ip:port(比
如 172.18.9.122:4440) ,ip 即为 Rundeck 所安装的 server 的 IP。4440 端口没有
被占用并且 Rundeckd 完全启动的情况下,浏览器会显示登陆界面。默认的用户
名:”admin”,密码:”admin”。
3、 create project
Rundeck 使用 project 管理各类操作,每一个操作都位于一个具体的 project 中。
同一个 server 中可以创建多个不同的 project,各个 project 相互独立。Project
配置可以导出, 并导入到另外的 server 中。 新安装的 server 上没有 project 范例。
a) project 的配置文件
project 的配置文件(project.properties),launcer 安装情况下该配置文件
的位置:
$RDECK_BASE/projects/myproj/etc/project.properties。
b) project setup
创建一个 project 可以使用控制台 shell 工具 rd-project,也可以在图形控制
界面中点击”new project”按钮来创建一个 project。图 2-1 是点击“new
project”按钮后出现的界面。
图 2-1
Project 创建完成后页面会返回到 project 页面中,系统行正常情况下可以在
任意时刻创建 project。图 2-2 是 project 创建成功后返回 project 页面。

图 2-2
Project 创建成功后会在 server 上生成该 project 的配置文件
project.properties,以及一个 bootstrap 类型的 resource model 文件,
resource model 文件包含该 project 相关的 node 信息。Project 的 node 列表
如图 2-3
图 2-3
Project 所在的 server 节点会在节点名称后面显示红色 server 字样。
c) resource setup
生成的 resource model 文件中记录了 Rundeck server 可以调用的节点的元数
据,每个 project 都有自己的 resource model 文件,resource.xml。
与 controltier 类似,Rundeck 的 node 节点也有 tags 属性,可以使用 tags
对 node 节点进行分类管理。XML 文档的 node 标签事例:
<node name=”homestar”
Tags=”tag1,tag2”
osFamily=”unix”
hostname=”192.168.1.2”
username=”alex” />
hostname 和 name 值在使用 SSH 连接时使用,hostname 用以标识远程主,命令
的执行者是 username。如果 server 和 node 节点使用的端口不是 SSH 默认的 22
端口,可以再 hostname 标签中指定,例如:hostname=”192.168.1.2:2022”。
Rundeck 也支持使用远程的 web site URL 资源。

d) command line create project


使用 shell 工具 rd-project 创建 project。在 Rundeck 的 server 端执行 shell,例如
创建一个名称为 example 的 project。
rd-project –a create –p example
也可以在创建 project 的时候指定其属性值,比如设置 project.ssh-keypath 属性
值。
rd-project –a create –p example –project.sh-keypath=/private/ssh.key
4、 JOB
节点的管理工作以执行 job 的方式实现,将在节点上执行一系列的操作封装到一个
job 中,执行 job 进程即可进行对节点的管理工作。在多个节点上执行操作时,可以
设定当在一个节点上执行失败时是否继续在后续节点上执行。
Job 的访问可以在用户 ACL 中定义用户的权限,限制用户对 job 的操作。
a) Job group
随着使用时间的逐渐增长,job 的数量也会逐渐增多。这时需要使用 group 来管理
Job,group 是 job 的逻辑集合。在 Rundeck 的界面控制中可以看到 group 显示为目
录的形式,每个 group 目录下有对应的 job 列表。一个 job 中可以包含另外的 job。
b) Job UUID
UUID 在创建 job 时生成的用来唯一标识 job 的序列号,也可以按照序列声称的格式
自己编写 UUID 号。使用 UUID 可以对 job 执行重命名,改变所在组操作。
c) Jobs list and filtering
Listing
用户登陆进系统后, 切换到 jobs 工具栏下可以看到该用户权限下的所有 job。在 group
目录下列出该组内的所有 job。点击 job 名称将会看到,该 job 的简单描述,job 的
执行次数,执行成功的比例,执行的平均间隔时间。
Filtering
系统支持从 job name,group,description 三个条件进行搜索,每个条件都支持正则
表达式搜索。

在条件输入框内输入要搜索的条件后,点击 filter 按钮执行搜索操作。

d) Viewing job detail


如果用户有编辑 job 的权限,用户鼠标移动到 job 的编辑按钮上就会弹出 job 的详细
信息,鼠标移动到弹出框外,关闭该弹出框。
点击 job 的名字将跳转到另一个页面执行 job,有编辑 job 的权限可以执行 job 的编
辑操作。

e) Running a job
执行 job 可以通过在 jobs 栏列出的 job 执行操作。点击 job 列表中每个 job 左侧的
run 图标执行这个 job,如果你不能看到 run 图标表示你没有执行该 job 的权限。

Job 的 run 图标。


如果你在 job 的单独页面执行 run 操作

Job run 图标
执行 run 操作之后将会弹出对话框,显示 job 的执行状态,有 kill job 的权限可以 kill
掉正在执行的 job。
f) Choose execution options
点击 run 图标之后,执行选定的 job 定义的操作。这时候页面将出现 Activity 栏下,
显示该 job 的执行进度,和执行的状态,执行过程中的输出,执行报告,和 job 的
定义,以及重新执行按钮,有编辑权限的可以对 job 执行编辑操作。点击 Activity
栏将显示已经存在的执行记录。
g) Creating jobs
在 jobs 栏下,点击”Create job”按钮执行创建 job。菜单栏列出创建 job 和编辑 job
按钮。

单机创建 job 按钮,弹出创建 job 的页面,在该页面内,job name 输入框输入”info”,


group 输入框输入”adm/resource”。意为在 adm 组内的 resource 组添加 job,如果
resource 组存在则在该组内创建 job,如果不存在则创建 resource 组。如果使用自己
赋予 job 的 UUID 可以在 UUID 输入框中输入自己编写的编号(自己的编号要符合
系统 UUID 编号的格式) ,如果不输入 UUID 系统将自己生成一个编号。
"Dispatch to Nodes”选择 job 执行的远程 node 对象。远程 node 对象的选择可以使用
filter 来选择要执行的 node,也可以指定具体 node 的 hostname 来指定,还可以使
用反向选择除了某些 node 之外的其他节点。
略去创建 job 的 work flow 步骤,点击 create 按钮,创建 job。

Job 创建成功之后回到 jobs 栏下,查看所有的 job。使用 group 结构组织 job,每个


group 显示为一个目录形式,点击目录前的折叠按钮将隐藏/展开该目录下的 job。
点击 job 前面的 run 图标,运行该 job,在弹出的页面中点击 run job now 按钮,执
行这个 job。看到 job 执行的进度条,点击进度条将会跳转的到 job 执行的页面,如
下所示:

h) Multiple executions
默认情况下,job 执行模式是单次执行,即是 job 执行期间 work flow 定义的操作只
执行一次。但是 job 执行的操作和 node 节点上的其他进程存在交互的情况下在 job
执行期间需要多次执行 work flow 定义的操作。然而,在某些情况下 job 执行期间多
次运行 work flow 定义的操作是很有必要的。
要在 job 中设置 multiple execution 可以编辑 job 的定义,在 multiple execution 的单
选框中选择”yes”,而不是默认的”no”。如下图所示:

i) Node dispatching and filtering


Job 创建之后可以选择 job 在本地(Rundeck 所在的 server)执行或者在远程的 node
上执行(如果你需要的情况下可以包括 Rundeck 所在的 server)。
在用户界面中,选择 dispatch to nodes 单选框,将会弹出如下所示 node 设置页面:
1、 filters
可以在 filter 输入框中输入选择 node 节点的条件,比如:name,tags 等,输入的
条件中可以使用正则表达式。 在 matched nodes 一栏中可以看到符合条件的 node
节点。Precedence to 的 included 表示在符合条件的节点上执行,excluded 表示
反向选择,在除了符合条件的节点之外的节点上执行。
2、 threadcount
设置 job 执行的最大线程数,值为 1 表示远程 node 节点之间按顺序执行 work
flow,大于 1 表示有多于一个远程 node 节点在同时执行 work flow。
3、 rank order
设置 ”rank attribute” 和 ”rand order” 可以改变 远程 node 节点之间执行 job 的
顺序,系统默认使用 name (nodename 属性) 对远程的 node 进行升序排序。因
此可以在”rank attribute” 中设置 node 的其他属性改变 node 的排序。改变 “rank
order” 选择 descending 可以对 node 节点使用降序排序。
如果你指定的 node 属性值为整型数值将按照数值类型排序,而不会使用字符类
型排序;否则将使用字符串类型进行排序,而不是按数值类型排序。
j) scheduled jobs
定时执行 job。

通过界面设置定时执行 job 的时间,和 UNIX 的 crontab 的设置一样。是 UNIX 的


crontab 设置的界面化操作。
k) job notification
job 通知就是 job 事件的触发,可以设置 job 开始执行,执行成功,执行失败发送邮
件。如果你需要邮件通知,在 send notification 中选择 yes 单选按钮。

当 job 开始执行的时候会触发 start 通知,将会发邮件到 start 设置邮箱中。


当 job 执行完成在所有的 node 节点上执行都是 success 将返回 success,触发 success
通知发送邮件到设置的邮箱中。当 job 执行 failed 或取消 job 的执行将返回 fail,触
发 fail 通知发送邮件到设置的邮箱中。
l) job history
在 job 页面点击 Activity for this job 下的 recent 按钮,将看到 job 的执行记录。可以
在 job 执行记录列表中点击任意一个记录查看 job 的执行过程。也可以在 Activity
栏下看到所有的相关的 job 记录,在 Activity 栏下可以对 job 的执行记录进行搜索。

m) killing job
立即 kill 掉当前正在运行的 job,注意:这里 kill job 是 kill 掉 job 正在运行的进程。
n) deleting job
在 job 的编辑页右下角有鼠标放上显示红色 X 的图标,点击该图标将删除该 job。
o) updating and copying jobs
job 创建成功之后可以编辑 job 的所有的内容,除了 UUID。

类似的,要复制一个已经定义好的 job,只需要点击”duplicate a new job” 按钮即可。

p) exporting job definition


在 Rundeck 图形控制台创建的 job 可以使用 xml 或者 YAML 格式文件导出 job 的定
义,可以使用导出的 XML 或者 YAML 文件导入 job。Job 的导入导出可以使用图形
界面完成也可以使用 rd-jobs shell 工具完成。在 job 定义标签页下,点击”Download
Definition” 按钮菜单可以选择使用 XML 或 YAML 格式文件下载 job 的定义。

q) importing job definitions


导入 job 定义的操作在 job 创建页面完成,点击”create job” 按钮再选择 ”upload
Definition”
在弹出的页面中选择要导入的 job 文件。

“When a job with the same name already exists” 选项:


Update:如果系统中存在和当前要导入的 job 同名的,将覆盖到原来的同名的 job
Skip:如果系统中存在和当前要导入的 job 同名的,将放弃 job 的导入
Create:如果系统中存在和当前要导入的 job 同名的,将继续执行并创建新的 job。
“Imported Jobs”选项:
Preserve UUIDs:使用 job 文件中原有的 UUID,由于系统中的 UUID 具有唯一性,所
以一旦系统中有相同的 UUID 存在,则导入 job 的操作将失败。
Remove UUIDs:不适用 job 文件中原有的 UUID,导入操作将更新一个已经存在的 job
定义或者生产新的 UUID。
r) job options
options 可以定义 jobs 的 workflow 需要的参数,在 job 执行时将参数传递给脚本。
参数的值可以是用户动态输入的形式,也可以使静态的值以下拉菜单列表的形式出
现。参数的个数根据 job 脚本的需要定义,没有限制。
1、 input types
在 GUI 用户界面中 input types 定义 option 参数的类型,在 job 执行时调用 option
参数。类型选项:
Plain:普通 option 类型,为 text 类型
Secure:secure 类型,用户使用时输入,输入的内容不存入数据库,输入直接
显示在脚本中。
Secure remote authentication:secure 类型,远程授权调用,输入内容不显示在
脚本中。
2、 options editor
在已经创建的 job 中 可以修改 options 的定义,可以添加新的 option 项也可以
修改已有的 option 选项。
Option 总页面显示所有 option 的定义和每个 option 的默认值。点击”edit” 选项,
进入 option 编辑页或者点击 option 名称进入该 option 的编辑页面。

3、 defining an option
添加新的 option 通过点击”add an option”进入 option 定义页面,或者点击 option
后面的”edit”选项编辑已有的 option 定义。完成 option 的各项设置后点击”save”
保存 option 的设置, 如果不保存对该 option 的设置点击 discard,
放弃对该 option
的修改。
Option 定义的各个选项:
Identification:option 的名称,job 脚本调用该 option 的参数时需要通过 option
的 name 来获取 option 的值。例如定义了一个 option name 为 host,那么在脚
本中调用需要时用${option.host}来引用这个 option name 的值。
Input type:该选项有 ”plain, secure, secure remote authentication”三个可选,使
用 plain 之外的其他两个选项不能输入多个值。
Default value:option 默认值,如果 option 没有被设置或者被用户指定,在执行
job,command-line,API 时将使用该 option 的默认值。注意:在 command-line,api
调用的时候指定 option 值为空,将改写 option 的默认值。
Allowed value:option 可取的值,这个选项包括一个静态的值列表,或者提供
选项值的 URL,多个值使用逗号分隔”,”。也可以使用其它的数据值通过”remote
URL”。
Restrictions:option 显示和输入值的限制,如果” Enforced from values” 选项设
置为 true,option 将只显示可选值的下拉列表。
Requirement:设置这个 option 的值在 job 执行时是否是必须的。选择”NO”,即
为 job 在执行期间这个 option 的值可以为空。选择”YES”即为 job 执行时该 option
不允许使用空值。
Multi-valued:定义用户是否可以输入多个值。选择”NO”,即为只允许用户输入
一个值。选择”YES”为允许用户输入多个值。
设置完 option 的定义之后点击”Save”将该 option 的定义添加到 job 中。选
择”Cancel”将放弃对 option 的操作。
4、 Script usage
Job 中定义的 option 可以作为 job 的脚本参数也可以在脚本的内部引用 option
的值。Option 在 job 的上下文变量为:option.NAME。
例如:有个名称为”hello”的 job 并有一个 option 名称为”message”。

Option 用法:
Option 作为脚本参数,引用形式:${option.message}
下面简单介绍一下 option 在脚本中的使用方法:
#! /bin/bash
Echo envvar=$RD_OPTION_MESSAGE message 作为环境变量引用
Echo args=$1 message 作为脚本的参数向量
Echo message=@option.message@ 使用标志语法访问 message
当用户运行”hello”这个 job 的时候,界面将提示输入”message”的值。

加入用户输入了”howdy”这个值,上面的脚本输出应该为:
Envar=howdy
Args=howdy
Message=howdy
如果你定义的 option 是”Required”的,如果不输入值 job 将无法执行直到输入
值。反之,如果不是”Required”的,该 option 可以不输入值使这个 option 设置
为空,这时脚本的执行结果应该为:
Envar=
Args=
Message=
Secure Options
Option 可以被标记为”Secure”,在 GUI 中显示密码提示,secure 类 option 的值没
有和其他的 option 的值存放在一起。
存在两种 secure 类 option:
Secure:这种类型的 option 的值显示在脚本和命令行中
Secure remote authentication:这种类型的 option 的值不显示在脚本和命令行中,
只用于节点的授权和执行命令授权。
Secure 类 option 不支持输入多个值
Secure 类 option 不支持对节点授权,节点执行操作需要授权必须使用 secure
remote authentication。

Nodes
概述:node 为 Rundeck 可以访问的物理节点或虚拟节点,节点具有各种属性,通过设
置键/值对来扩展节点的属性,比较常用的属性”tag” ,使用 tag 属性来对节点进行分类管理。
Node 节点的管理是按照 project 来分类的,每个 project 都有各自的 node 列表。节点添加和
删除操作是通过编辑 project 的配置文件 resource.xml 来实现的。节点的管理也可以通过插
件提供的 URL 地址来实现,将 node 节点信息导入。本文后面提到的插件设置可以实现这一
功能。Rundeck 的 node 节点列表如下所示:

节点的选择:
Node 节点常用的一个功能是节点的选择,常用的选择有两种:一个是指定 name 属性选择
单一的节点。另一个是通过正则表达式形成节点列表,指定一系列的节点。选择多个节点的
方式有指定 tag 的值,或正则表达式。 如下所示通过指定 tag 值来选择节点,job 中的节点
选择方式与这里所讲述的一致。

使用正则表达式选择节点,如下所示:
ACL(Access Control Policy)
Rundeck 的访问控制规则来设置用户或者用户组的访问权限,控制用户或用户组只能对指定
的资源进行访问。Rundeck 的资源类型包括:project, job, node, commands 和 API。每一个操
作的执行都需要赋予执行者一定的权限。Rundeck 的用户管理按照角色管理的方式进行,每
一个用户都需要赋予一个角色。
ACL 在本版本的 Rundeck 中是应用 YAML 格式文档来配置用户的权限的,在该文档中设置系
统的资源和用户对资源的权限。Rundeck 中在指定的目录中设置任意命名的以 aclpolicy 结尾
的配置文档在系统中均生效。
如下所示是系统/etc/rundeck 目录下的配置文件列表:

配置文件如下所示:
[root@public-multirole-p-vnetz rundeck]# cat X3.aclpolicy
description: user, x3.
context:
project: 'X3'
for:
resource:
- equals:
kind: job
allow: [read] # allow read/create all kinds
- equals:
kind: node
allow: [read,create,update,refresh]
- equals:
kind: event
allow: [read,create]
adhoc:
- allow: [read,runAs,killAs,run,kill] # allow read/running/killing adhoc jobs
job:
- match:
group: 'x3 计算节点更新'
name: '.*'
allow: [read,run,runAs,kill,killAs] # allow read/write/delete/run/kill of all jobs
node:
- allow: [read,run] # allow read/run for all nodes
by:
username: x3
---
description: x3
context:
application: 'rundeck'
for:
resource:
- equals:
kind: project
allow: [read] # allow create of projects
- equals:
kind: system
allow: [read]
- equals:
kind: user
allow: [read]
project:
- match:
name: 'X3'
allow: [read] # allow view/admin of all projects
storage:
- allow: [read,create] # allow read/create/update/delete for all /keys/* storage content
by:
username: 'x3|x3deployer'

command line tools


Rundeck 提供了一系列的命令工具,常见的命令行工具有 dispatch, rd-jobs, rd-project,
rd-queue, rd-setup, run 几个工具。这几个工具要求以 admin 的角色使用,所以需要在
framework.properties 文件中配置 admin 用户名和密码。配置文件如下所示:

Admin 的密码要求和 realm.properties 中 admin 的密码一致。否则将无法通过认证,无法执


行命令行工具。
Dispatch 命令行工具用于在指定的节点上执行命令或者脚本文件。例如:
执行命令:
dispatch -F 'hostname: web.*' -K -- apachectl status
表示在 hostname 为 web.开头的机器上执行 apachectl status 命令,当其中一台机器执行失
败时继续在下一台机器上执行 Apachectl status 命令。
执行脚本:
dispatch -F 'tags: dev' -K -C 3 -- sh -c update.sh
表示在 tag 属性中有 dev 的机器上执行 update.sh 脚本文件,使用三个线程执行,执行期间
有一台机器执行错误继续执行。
可以使用 –s 参数指定脚本在 Rundeck 的 server 端的路径,例如:
dispatch -F 'tags: web' -s myscript.sh
表示在 tag 属性中有 web 字符串的机器上执行 myscript.sh 脚本,这里建议脚本文件的路径
使用全路径,便于理解。
Rd-jobs 工具可以在命令行下执行 job 的输出列表,创建,删除,备份,恢复操作。
Rd-project 执行 project 的创建操作
Rd-queue 用于线上正在执行的 job 列表,follow 用于输出正在执行的 job 的输出,或者 kill
掉正在执行的 job。
Rd-setup 用于在节点上安装 Rundeck 软件
Run 用于执行 Rundeck server 上的 job,只能在 Rundeck server 上使用该命令。

Backup and Recovery


Rundeck 的备份和恢复常用的方式用两种,一种方式是直接复制 Rundeck 的数据库文件,这种
方式复制时要求 Rundeck 处于 stop 状态。另一种备份方式是导出系统中所有的 job 定义。
复制数据库文件:
由于安装方式的差异,RPM 安装:/var/lib/rundeck/data 目录下的数据库文件,launcher
安装:${RDECK_BASE}/server/data 目录。
Log 日 志,RPM 安装: /var/lib/rundeck/logs/目录下的日志 文件, launcher 安装 :
${RDECK_BASE}/var/logs/目录。
导出 job 定义:
导出 job 定义是按照 project 依次导出 project 中的 job 定义:
Rd-jobs list –f /store jobs xml path/project.xml –p projectname
恢复:
复制数据库文件要求 Rundeck 处于 stop 状态,将恢复的数据库文件,复制到指定的目录,
start Rundeck 即可。导入 job 定义文件如下所示:
rd-jobs load –f /job define xml path/project.xml –p project
导出 job 定义如下所示:

Authenticating users
Rundeck 的认证有三种方式,PropertyFileLoginModule,LDAP,PAM。这里介绍一下使用
PropertyFileLoginModule 方式,这种方式使用最简单,也就是修改 realm.properties 文件来定
义用户的和角色。即是在 realm.properties 文件中添加用户,密码,角色。
密码可以使用明文经过 MD5 加密的密文,也可以直接使用密码明文。
如下所示为 realm.properties 中的用户列表。

Logs
Rundeck 的日志存放路径根据安装方式的不同存放的路径也不同:
RPM 安装日志存放路径: /var/log/rundeck/
Launcher 安装日志存放路径:$RDECK_BASE/server/logs
Rundeck 中日志文件列表:
.
|-- command.log
|-- rundeck.audit.log
|-- rundeck.jobs.log
|-- rundeck.options.log
|-- rundeck.log
`-- service.log
在 launcher 安装日志的路径如下:
Service.log 位于$RDECK_BASE/var/log/目录中
Command.log 位于$RDECK_BASE/var/logs/目录中
Rundeck.audit.log, Rundeck.jobs.log, Rundeck.options.log, Rundeck.log 位于
$RDECK_BASE/server/logs/ 目录下。
在 RPM 安装日志的路径 为/var/log/rundeck/目录。
Command.log :记录 Rundeck 的 shell 命令行工具的执行日志。
Rundeck.audit.log :依据 aclpolicy 制定的规则记录认证登陆日志。
Rundeck.job.log :记录 job 的定义修改日志。
Rundeck.options.log :远程 HTTP 请求 JSON 数据的日志。
Rundeck.log : Rundeck 整天的应用日志。
Service.log :Rundeck 运行期间标准输入/输出的信息日志。

You might also like