SlideShare une entreprise Scribd logo
1  sur  19
Rundeck How-To:
Advanced Cluster Settings
Nathan Fluegel May 30, 2019
Agenda
● Cluster Architecture
● Job Ownership
○ Scheduled jobs
○ One-off jobs
● Heartbeat Setting
● Cluster Remote Execution Policy
● Load Policy
● Auto-Takeover Policy
● Do you need these settings?
Job Ownership:
Scheduled Jobs
Scheduled jobs are always owned by a
single Rundeck server cluster member.
The default job owner is the cluster where
the schedule was first created.
If I had been logged in to Server1 when I
first set a schedule for JobA, JobA’s
scheduled runs will happen on Server1.
This behavior can be over-ridden through Cluster
Manager.
Job Ownership:
One-off Jobs
Jobs that are run at a point in time are owned
by a single Rundeck server instance within the
cluster.
By default, the job owner is the server instance
a user is connected to when the job run is
initiated.
If I had been logged in to Server1 when I
initiated a job run for JobA, that run happened
on Server1.
This default behavior can be over-ridden by
Cluster Remote Execution Policies.
Heartbeat
Settings
“Heartbeat” is a setting used with all
Rundeck servers to measure whether a
another server is still alive and able to
execute jobs.
The results of a heartbeat check can be
used to determine logically whether a
particular server can be depended on by
other settings or processes, such as
remote execution or autotakeover policies.
# heartbeat interval in seconds
rundeck.clusterMode.heartbeat.interval=30
# initial delay after startup to send heartbeat
rundeck.clusterMode.heartbeat.delay=10
# remote execute/abort message processing interval
in seconds
rundeck.clusterMode.remoteExec.process.interval=10
# age in seconds since last heartbeat to consider
another member inactive
rundeck.clusterMode.heartbeat.considerInactive=150
# age in seconds since last heartbeat to consider
another member dead
rundeck.clusterMode.heartbeat.considerDead=300
Heartbeat Settings
Configuration
Cluster Remote
Execution Policy
Based on policy configurations, Rundeck
Enterprise cluster members may forward
job executions to other cluster members.
The default policy is to have each job
executed locally. If a job is executed in a
project which is not assigned to a specific
profile, the default policy is used.
You can define multiple profiles and assign
different projects to different profiles.
Execution policies are defined on each
server in rundeck-config.properties.
rundeck.clusterMode.remoteExecution.policy = <Policy>
Valid settings for <Policy>:
None
Default. Executes locally only
Random
Executes randomly among allowed members
RoundRobin
Executes round-robin style among allowed members
Preset
Executes on one other preset member
Load
Executes on a member based on load (Cluster 2.3.0+)
Cluster Remote
Execution
Configuration
Policy
Policy setting indicates what method of
assignment will be used for jobs in a
particular policy.
rundeck.clusterMode.remoteExecution.config.allowedTags =
<List of Member Tags>
“Allowed” tags indicate any machines that could have a job assigned
to them as part of this policy.
rundeck.clusterMode.remoteExecution.config.preferredTags =
<List of Member Tags>
“Preferred” tags indicate machines that should be given job executions
by preference as part of this policy. Preferred machines should be a
subset of your allowed machine. If your policy has both allowed and
preferred machines, allowed tags would usually only receive a job if
there are no Preferred+Allowed tagged machines available.
Cluster Remote
Execution
Configuration
Member Tags
Tags are used to restrict which Cluster
Members could be assigned to run a
remote execution.
Tags are not the only way to define which
cluster members could receive jobs but
they are the most flexible and are
commonly used.
Tags are assigned to individual servers
by being added in each
framework.properties file as
desired.
rundeck.clusterMode.remoteExecution.config.allowed = <List
of Allowed Members>
Self - Execute locally
Other - Any other member except this one
UUID - A particular UUID
/regex/ - A regular expression matching a UUID
rundeck.clusterMode.remoteExecution.config.activeOnly =
true/false
Cluster Remote
Execution
Configuration
List of Allowed Members
Rather than using tags, you can define
allowed members statically.
If used in conjunction with tags, the
tagged servers would be used by
preference.
Active Only
If set to true, jobs will only be delegated
to an active machine (one with a
heartbeat).
rundeck.clusterMode.remoteExecution.profiles = profile1,
profile2
This setting is un-necessary if you’re only using one defined profile.
rundeck.clusterMode.remoteExecution.profile.profile1.projec
ts=projectA, projectB
The optional project name setting is provided in the context of a
specific profile. Typically, this would only occur if you have more than
one profile in play.
Cluster Remote
Execution
Configuration
Profile Name
Profile names are used to distinguish
multiple profiles from one another for
more complex configurations.
Project Name
Each policy can be associated with one
or more projects, if desired. This can be
used to determine if jobs in a specific
project should always be executed on
specific machines.
rundeck.clusterMode.remoteExecution.config.criteria =
threadRatio,load
This setting identifies which criteria will be used to compute load for
this policy.
rundeck.clusterMode.remoteExecution.config.weights =
1.0,1.5
Defines relative computational value of the criteria. In this example,
load is weighted at 50% more than threadRatio.
rundeck.clusterMode.remoteExecution.config.groupWeight=1,0,
0,0
Cluster members are sorted by weighted load and placed into groups.
Each group has a weight and the policy randomly chooses a group
based on the proportional weight of the group. A group member is
then chosen randomly and used.
This setting defines four groups, each with 25% of available members.
Weights define 100% chance of using group 1.
Cluster Remote
Execution
Configuration
Load Balanced Policy
When a remote execution configuration
policy is set to load, jobs will be assigned
to servers based on statistics calculated
through the heartbeat process. Load is
calculated based on thread ratio and
percentage of CPU for each member.
Example #1
rundeck.clusterMode.remoteExecution.policy = Random
rundeck.clusterMode.remoteExecution.config.allowed
= other
rundeck.clusterMode.remoteExecution.config.activeOn
ly = true
Example #2
rundeck.clusterMode.remoteExecution.policy =
RoundRobin
rundeck.clusterMode.remoteExecution.config.allowed
= self,/1C519C5A-4E78-4BE9-85EC-.+/
rundeck.clusterMode.remoteExecution.config.activeOn
ly = true
Cluster Remote
Execution
Configuration
Example #1
A simple policy that sends all jobs to
a random peer machine as long as
that machine has a heartbeat.
Example #2
Round robin assignment among self
and any instances with a UUID that
matches the regex.
rundeck.clusterMode.remoteExecution.profiles = profile1, profile2
Example #3
rundeck.clusterMode.remoteExecution.profile.profile1.policy= RoundRobin
rundeck.clusterMode.remoteExecution.profile.profile1.projects=projectA,projectB
rundeck.clusterMode.remoteExecution.profile.profile1.config.allowed = other
rundeck.clusterMode.remoteExecution.profile.profile1.config.allowedTags = *
rundeck.clusterMode.remoteExecution.profile.profile1.config.preferredTags =
worker,secondary
rundeck.clusterMode.remoteExecution.profile.profile1.config.activeOnly = true
Example #4
rundeck.clusterMode.remoteExecution.profile.profile2.policy = Preset
rundeck.clusterMode.remoteExecution.profile.profile2.config.allowed = eff4405a-
58aa-4f14-b7bd-68e1e44b53d4
rundeck.clusterMode.remoteExecution.profile.profile2.config.activeOnly = true
Cluster Remote Execution Configuration - Examples
Auto-Takeover
Policy
If a cluster member goes down, an auto-
takeover policy helps moved scheduled
jobs to another cluster member.
Autotakeover uses heartbeat settings to
determine whether a machine is alive or
not for purposes of triggering autotakeover.
For non-scheduled jobs, autotakeover will
not kick in. Instead, your remote execution
policies can account for this situation.
# enables autotakeover for members detected as "dead"
rundeck.clusterMode.autotakeover.enabled=true
# policy indicates which nodes to take over. "Any": all dead nodes. "Static": only allowed uuids
rundeck.clusterMode.autotakeover.policy=any
# delay in seconds to wait after sending autotakeover proposal
rundeck.clusterMode.autotakeover.delay = 60
# sleep in minimum seconds between autotakeover attempts for a particular destination
rundeck.clusterMode.autotakeover.sleep = 300
# Name servers to act as takeover destinations, by UUID
rundeck.clusterMode.autotakeover.config.allowed=<uuid1>,<uuid2>,...
Auto-Takeover Configuration
Do you need these settings?

Contenu connexe

Tendances

忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜
忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜
忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜Masahito Zembutsu
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)NTT DATA Technology & Innovation
 
S13 Oracle Database を Microsoft Azure 上で運用する為に~基本事項とベストプラクティス
S13 Oracle Database を Microsoft Azure 上で運用する為に~基本事項とベストプラクティスS13 Oracle Database を Microsoft Azure 上で運用する為に~基本事項とベストプラクティス
S13 Oracle Database を Microsoft Azure 上で運用する為に~基本事項とベストプラクティスMicrosoft Azure Japan
 
今さら聞けないソフトウエアエンジアニアリング(要求編)
今さら聞けないソフトウエアエンジアニアリング(要求編) 今さら聞けないソフトウエアエンジアニアリング(要求編)
今さら聞けないソフトウエアエンジアニアリング(要求編) 豆寄席 (株式会社豆蔵)
 
MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話Yoshinori Matsunobu
 
JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 )
JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 ) JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 )
JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 ) Hironobu Isoda
 
[D31] PostgreSQLでスケールアウト構成を構築しよう by Yugo Nagata
[D31] PostgreSQLでスケールアウト構成を構築しよう by Yugo Nagata[D31] PostgreSQLでスケールアウト構成を構築しよう by Yugo Nagata
[D31] PostgreSQLでスケールアウト構成を構築しよう by Yugo NagataInsight Technology, Inc.
 
Standard Edition 2でも使えるOracle Database 12c Release 2オススメ新機能
Standard Edition 2でも使えるOracle Database 12c Release 2オススメ新機能Standard Edition 2でも使えるOracle Database 12c Release 2オススメ新機能
Standard Edition 2でも使えるOracle Database 12c Release 2オススメ新機能Ryota Watabe
 
GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)
GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)
GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)オラクルエンジニア通信
 
DevOpsにおけるAnsibleの立ち位置と使い所
DevOpsにおけるAnsibleの立ち位置と使い所DevOpsにおけるAnsibleの立ち位置と使い所
DevOpsにおけるAnsibleの立ち位置と使い所Hidetoshi Hirokawa
 
性能測定道 事始め編
性能測定道 事始め編性能測定道 事始め編
性能測定道 事始め編Yuto Hayamizu
 
詳説データベース輪読会: 分散合意その2
詳説データベース輪読会: 分散合意その2詳説データベース輪読会: 分散合意その2
詳説データベース輪読会: 分散合意その2Sho Nakazono
 
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version -
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version - ビッグデータ処理データベースの全体像と使い分け - 2017年 Version -
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version - Tetsutaro Watanabe
 
200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6
200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6
200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6Hironobu Isoda
 
[SC03] Active Directory の DR 対策~天災/人災/サイバー攻撃、その時あなたの IT 基盤は利用継続できますか?
[SC03] Active Directory の DR 対策~天災/人災/サイバー攻撃、その時あなたの IT 基盤は利用継続できますか? [SC03] Active Directory の DR 対策~天災/人災/サイバー攻撃、その時あなたの IT 基盤は利用継続できますか?
[SC03] Active Directory の DR 対策~天災/人災/サイバー攻撃、その時あなたの IT 基盤は利用継続できますか? de:code 2017
 
SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係datastaxjp
 
Oracle Cloud Platform:IDCSを使ったアイデンティティ・ドメイン管理者ガイド
Oracle Cloud Platform:IDCSを使ったアイデンティティ・ドメイン管理者ガイドOracle Cloud Platform:IDCSを使ったアイデンティティ・ドメイン管理者ガイド
Oracle Cloud Platform:IDCSを使ったアイデンティティ・ドメイン管理者ガイドオラクルエンジニア通信
 

Tendances (20)

忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜
忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜
忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
 
S13 Oracle Database を Microsoft Azure 上で運用する為に~基本事項とベストプラクティス
S13 Oracle Database を Microsoft Azure 上で運用する為に~基本事項とベストプラクティスS13 Oracle Database を Microsoft Azure 上で運用する為に~基本事項とベストプラクティス
S13 Oracle Database を Microsoft Azure 上で運用する為に~基本事項とベストプラクティス
 
今さら聞けないソフトウエアエンジアニアリング(要求編)
今さら聞けないソフトウエアエンジアニアリング(要求編) 今さら聞けないソフトウエアエンジアニアリング(要求編)
今さら聞けないソフトウエアエンジアニアリング(要求編)
 
MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話MHA for MySQLとDeNAのオープンソースの話
MHA for MySQLとDeNAのオープンソースの話
 
OCI Logging 概要
OCI Logging 概要OCI Logging 概要
OCI Logging 概要
 
JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 )
JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 ) JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 )
JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 )
 
[D31] PostgreSQLでスケールアウト構成を構築しよう by Yugo Nagata
[D31] PostgreSQLでスケールアウト構成を構築しよう by Yugo Nagata[D31] PostgreSQLでスケールアウト構成を構築しよう by Yugo Nagata
[D31] PostgreSQLでスケールアウト構成を構築しよう by Yugo Nagata
 
Standard Edition 2でも使えるOracle Database 12c Release 2オススメ新機能
Standard Edition 2でも使えるOracle Database 12c Release 2オススメ新機能Standard Edition 2でも使えるOracle Database 12c Release 2オススメ新機能
Standard Edition 2でも使えるOracle Database 12c Release 2オススメ新機能
 
GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)
GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)
GoldenGateテクニカルセミナー2「Oracle GoldenGate 新機能情報」(2016/5/11)
 
DevOpsにおけるAnsibleの立ち位置と使い所
DevOpsにおけるAnsibleの立ち位置と使い所DevOpsにおけるAnsibleの立ち位置と使い所
DevOpsにおけるAnsibleの立ち位置と使い所
 
Oracle GoldenGate R12.2 セットアップガイド
Oracle GoldenGate R12.2 セットアップガイドOracle GoldenGate R12.2 セットアップガイド
Oracle GoldenGate R12.2 セットアップガイド
 
性能測定道 事始め編
性能測定道 事始め編性能測定道 事始め編
性能測定道 事始め編
 
詳説データベース輪読会: 分散合意その2
詳説データベース輪読会: 分散合意その2詳説データベース輪読会: 分散合意その2
詳説データベース輪読会: 分散合意その2
 
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version -
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version - ビッグデータ処理データベースの全体像と使い分け - 2017年 Version -
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version -
 
200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6
200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6
200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 #jjug_ccc #ccc_g6
 
[SC03] Active Directory の DR 対策~天災/人災/サイバー攻撃、その時あなたの IT 基盤は利用継続できますか?
[SC03] Active Directory の DR 対策~天災/人災/サイバー攻撃、その時あなたの IT 基盤は利用継続できますか? [SC03] Active Directory の DR 対策~天災/人災/サイバー攻撃、その時あなたの IT 基盤は利用継続できますか?
[SC03] Active Directory の DR 対策~天災/人災/サイバー攻撃、その時あなたの IT 基盤は利用継続できますか?
 
SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係SparkとCassandraの美味しい関係
SparkとCassandraの美味しい関係
 
Oracle Cloud Platform:IDCSを使ったアイデンティティ・ドメイン管理者ガイド
Oracle Cloud Platform:IDCSを使ったアイデンティティ・ドメイン管理者ガイドOracle Cloud Platform:IDCSを使ったアイデンティティ・ドメイン管理者ガイド
Oracle Cloud Platform:IDCSを使ったアイデンティティ・ドメイン管理者ガイド
 
Spring Cloud Data Flow の紹介 #streamctjp
Spring Cloud Data Flow の紹介  #streamctjpSpring Cloud Data Flow の紹介  #streamctjp
Spring Cloud Data Flow の紹介 #streamctjp
 

Similaire à Advanced Cluster Settings

Effective service and resource management with systemd
Effective service and resource management with systemdEffective service and resource management with systemd
Effective service and resource management with systemdDavid Timothy Strauss
 
MySQL always-up with Galera Cluster
MySQL always-up with Galera ClusterMySQL always-up with Galera Cluster
MySQL always-up with Galera ClusterFromDual GmbH
 
Parallel and Distributed Computing Chapter 7
Parallel and Distributed Computing Chapter 7Parallel and Distributed Computing Chapter 7
Parallel and Distributed Computing Chapter 7AbdullahMunir32
 
Cgroup resource mgmt_v1
Cgroup resource mgmt_v1Cgroup resource mgmt_v1
Cgroup resource mgmt_v1sprdd
 
Cgroup resource mgmt_v1
Cgroup resource mgmt_v1Cgroup resource mgmt_v1
Cgroup resource mgmt_v1sprdd
 
Getting data into Rudder
Getting data into RudderGetting data into Rudder
Getting data into RudderRUDDER
 
RAC-Installing your First Cluster and Database
RAC-Installing your First Cluster and DatabaseRAC-Installing your First Cluster and Database
RAC-Installing your First Cluster and DatabaseNikhil Kumar
 
Percona Cluster Installation with High Availability
Percona Cluster Installation with High AvailabilityPercona Cluster Installation with High Availability
Percona Cluster Installation with High AvailabilityRam Gautam
 
Presto Testing Tools: Benchto & Tempto (Presto Boston Meetup 10062015)
Presto Testing Tools: Benchto & Tempto (Presto Boston Meetup 10062015)Presto Testing Tools: Benchto & Tempto (Presto Boston Meetup 10062015)
Presto Testing Tools: Benchto & Tempto (Presto Boston Meetup 10062015)Matt Fuller
 
Scalable Soa
Scalable SoaScalable Soa
Scalable SoaWSO2
 
Summit demystifying systemd1
Summit demystifying systemd1Summit demystifying systemd1
Summit demystifying systemd1Susant Sahani
 
Scripts that automate OWASP ZAP as part of a continuous delivery pipeline
Scripts that automate OWASP ZAP as part of a continuous delivery pipelineScripts that automate OWASP ZAP as part of a continuous delivery pipeline
Scripts that automate OWASP ZAP as part of a continuous delivery pipelineSherif Mansour
 
Process scheduling
Process schedulingProcess scheduling
Process schedulingHao-Ran Liu
 
Saltcheck: a tool in the salt toolbox
Saltcheck: a tool in the salt toolboxSaltcheck: a tool in the salt toolbox
Saltcheck: a tool in the salt toolboxChristian McHugh
 
Group Policy Windows Server 2008
Group Policy Windows Server 2008Group Policy Windows Server 2008
Group Policy Windows Server 2008Unitek Eduation
 
JBoss Drools - Open-Source Business Logic Platform
JBoss Drools - Open-Source Business Logic PlatformJBoss Drools - Open-Source Business Logic Platform
JBoss Drools - Open-Source Business Logic Platformelliando dias
 
Oracle cluster installation with grid and iscsi
Oracle cluster  installation with grid and iscsiOracle cluster  installation with grid and iscsi
Oracle cluster installation with grid and iscsiChanaka Lasantha
 

Similaire à Advanced Cluster Settings (20)

Kranthi kumar implement_ci_cd_my_notes
Kranthi kumar implement_ci_cd_my_notesKranthi kumar implement_ci_cd_my_notes
Kranthi kumar implement_ci_cd_my_notes
 
Effective service and resource management with systemd
Effective service and resource management with systemdEffective service and resource management with systemd
Effective service and resource management with systemd
 
70 640 Lesson07 Ppt 041009
70 640 Lesson07 Ppt 04100970 640 Lesson07 Ppt 041009
70 640 Lesson07 Ppt 041009
 
MySQL always-up with Galera Cluster
MySQL always-up with Galera ClusterMySQL always-up with Galera Cluster
MySQL always-up with Galera Cluster
 
Parallel and Distributed Computing Chapter 7
Parallel and Distributed Computing Chapter 7Parallel and Distributed Computing Chapter 7
Parallel and Distributed Computing Chapter 7
 
Cgroup resource mgmt_v1
Cgroup resource mgmt_v1Cgroup resource mgmt_v1
Cgroup resource mgmt_v1
 
Cgroup resource mgmt_v1
Cgroup resource mgmt_v1Cgroup resource mgmt_v1
Cgroup resource mgmt_v1
 
Getting data into Rudder
Getting data into RudderGetting data into Rudder
Getting data into Rudder
 
RAC-Installing your First Cluster and Database
RAC-Installing your First Cluster and DatabaseRAC-Installing your First Cluster and Database
RAC-Installing your First Cluster and Database
 
Percona Cluster Installation with High Availability
Percona Cluster Installation with High AvailabilityPercona Cluster Installation with High Availability
Percona Cluster Installation with High Availability
 
Presto Testing Tools: Benchto & Tempto (Presto Boston Meetup 10062015)
Presto Testing Tools: Benchto & Tempto (Presto Boston Meetup 10062015)Presto Testing Tools: Benchto & Tempto (Presto Boston Meetup 10062015)
Presto Testing Tools: Benchto & Tempto (Presto Boston Meetup 10062015)
 
Scalable Soa
Scalable SoaScalable Soa
Scalable Soa
 
Summit demystifying systemd1
Summit demystifying systemd1Summit demystifying systemd1
Summit demystifying systemd1
 
Scripts that automate OWASP ZAP as part of a continuous delivery pipeline
Scripts that automate OWASP ZAP as part of a continuous delivery pipelineScripts that automate OWASP ZAP as part of a continuous delivery pipeline
Scripts that automate OWASP ZAP as part of a continuous delivery pipeline
 
Process scheduling
Process schedulingProcess scheduling
Process scheduling
 
Saltcheck: a tool in the salt toolbox
Saltcheck: a tool in the salt toolboxSaltcheck: a tool in the salt toolbox
Saltcheck: a tool in the salt toolbox
 
Group Policy Windows Server 2008
Group Policy Windows Server 2008Group Policy Windows Server 2008
Group Policy Windows Server 2008
 
JBoss Drools - Open-Source Business Logic Platform
JBoss Drools - Open-Source Business Logic PlatformJBoss Drools - Open-Source Business Logic Platform
JBoss Drools - Open-Source Business Logic Platform
 
IBM QRadar BB & Rules
IBM QRadar BB & RulesIBM QRadar BB & Rules
IBM QRadar BB & Rules
 
Oracle cluster installation with grid and iscsi
Oracle cluster  installation with grid and iscsiOracle cluster  installation with grid and iscsi
Oracle cluster installation with grid and iscsi
 

Plus de Rundeck

Rundeck Community Office Hours: Using Variables with Job Steps
Rundeck Community Office Hours:  Using Variables with Job Steps Rundeck Community Office Hours:  Using Variables with Job Steps
Rundeck Community Office Hours: Using Variables with Job Steps Rundeck
 
Introducing PagerDuty Process Automation
Introducing PagerDuty Process AutomationIntroducing PagerDuty Process Automation
Introducing PagerDuty Process AutomationRundeck
 
How to Build a Custom Plugin in Rundeck
How to Build a Custom Plugin in RundeckHow to Build a Custom Plugin in Rundeck
How to Build a Custom Plugin in RundeckRundeck
 
Lunch and learn: Getting started with Rundeck & Ansible
Lunch and learn:  Getting started with Rundeck & AnsibleLunch and learn:  Getting started with Rundeck & Ansible
Lunch and learn: Getting started with Rundeck & AnsibleRundeck
 
Self Service Cloud Operations: Safely Delegate the Management of your Cloud ...
Self Service Cloud Operations:  Safely Delegate the Management of your Cloud ...Self Service Cloud Operations:  Safely Delegate the Management of your Cloud ...
Self Service Cloud Operations: Safely Delegate the Management of your Cloud ...Rundeck
 
Rundeck Office Hours: Best Practices Access Control Policies
Rundeck Office Hours:  Best Practices Access Control PoliciesRundeck Office Hours:  Best Practices Access Control Policies
Rundeck Office Hours: Best Practices Access Control PoliciesRundeck
 
Mastering Secrets Management in Rundeck
Mastering Secrets Management in RundeckMastering Secrets Management in Rundeck
Mastering Secrets Management in RundeckRundeck
 
What's New in Rundeck 3.4
What's New in Rundeck 3.4   What's New in Rundeck 3.4
What's New in Rundeck 3.4 Rundeck
 
Automate Yourself Out of a Job: Safely Delegate the Management of your Azure...
Automate Yourself Out of a Job:  Safely Delegate the Management of your Azure...Automate Yourself Out of a Job:  Safely Delegate the Management of your Azure...
Automate Yourself Out of a Job: Safely Delegate the Management of your Azure...Rundeck
 
Super-Charge Your Site Reliability Practices with Runbook Automation
Super-Charge Your Site Reliability Practices with Runbook Automation Super-Charge Your Site Reliability Practices with Runbook Automation
Super-Charge Your Site Reliability Practices with Runbook Automation Rundeck
 
Introduction to Rundeck
Introduction to Rundeck Introduction to Rundeck
Introduction to Rundeck Rundeck
 
Automated Remediation with Rundeck + Sensu
Automated Remediation with Rundeck + SensuAutomated Remediation with Rundeck + Sensu
Automated Remediation with Rundeck + SensuRundeck
 
Modernizing Incident Response
Modernizing Incident Response Modernizing Incident Response
Modernizing Incident Response Rundeck
 
Runbook Automation: Old News or a Key to Unlock Performance? [DOES2020]
Runbook Automation: Old News or a Key to Unlock Performance? [DOES2020]Runbook Automation: Old News or a Key to Unlock Performance? [DOES2020]
Runbook Automation: Old News or a Key to Unlock Performance? [DOES2020]Rundeck
 
Datadog + Rundeck at DASH 2020
Datadog + Rundeck at DASH 2020Datadog + Rundeck at DASH 2020
Datadog + Rundeck at DASH 2020Rundeck
 
Rundeck Overview
Rundeck OverviewRundeck Overview
Rundeck OverviewRundeck
 
Empower Devs, Simplify Ops, and Accelerate your Digital Transformation
Empower Devs, Simplify Ops, and Accelerate your Digital TransformationEmpower Devs, Simplify Ops, and Accelerate your Digital Transformation
Empower Devs, Simplify Ops, and Accelerate your Digital TransformationRundeck
 
Maximizing Your Rundeck Migration
Maximizing Your Rundeck Migration Maximizing Your Rundeck Migration
Maximizing Your Rundeck Migration Rundeck
 
Business Continuity for Humans: Keeping Your Business Running When Your Peopl...
Business Continuity for Humans: Keeping Your Business Running When Your Peopl...Business Continuity for Humans: Keeping Your Business Running When Your Peopl...
Business Continuity for Humans: Keeping Your Business Running When Your Peopl...Rundeck
 
PagerDuty + Rundeck = Shorter Incidents, Fewer Escalations
PagerDuty + Rundeck = Shorter Incidents, Fewer EscalationsPagerDuty + Rundeck = Shorter Incidents, Fewer Escalations
PagerDuty + Rundeck = Shorter Incidents, Fewer EscalationsRundeck
 

Plus de Rundeck (20)

Rundeck Community Office Hours: Using Variables with Job Steps
Rundeck Community Office Hours:  Using Variables with Job Steps Rundeck Community Office Hours:  Using Variables with Job Steps
Rundeck Community Office Hours: Using Variables with Job Steps
 
Introducing PagerDuty Process Automation
Introducing PagerDuty Process AutomationIntroducing PagerDuty Process Automation
Introducing PagerDuty Process Automation
 
How to Build a Custom Plugin in Rundeck
How to Build a Custom Plugin in RundeckHow to Build a Custom Plugin in Rundeck
How to Build a Custom Plugin in Rundeck
 
Lunch and learn: Getting started with Rundeck & Ansible
Lunch and learn:  Getting started with Rundeck & AnsibleLunch and learn:  Getting started with Rundeck & Ansible
Lunch and learn: Getting started with Rundeck & Ansible
 
Self Service Cloud Operations: Safely Delegate the Management of your Cloud ...
Self Service Cloud Operations:  Safely Delegate the Management of your Cloud ...Self Service Cloud Operations:  Safely Delegate the Management of your Cloud ...
Self Service Cloud Operations: Safely Delegate the Management of your Cloud ...
 
Rundeck Office Hours: Best Practices Access Control Policies
Rundeck Office Hours:  Best Practices Access Control PoliciesRundeck Office Hours:  Best Practices Access Control Policies
Rundeck Office Hours: Best Practices Access Control Policies
 
Mastering Secrets Management in Rundeck
Mastering Secrets Management in RundeckMastering Secrets Management in Rundeck
Mastering Secrets Management in Rundeck
 
What's New in Rundeck 3.4
What's New in Rundeck 3.4   What's New in Rundeck 3.4
What's New in Rundeck 3.4
 
Automate Yourself Out of a Job: Safely Delegate the Management of your Azure...
Automate Yourself Out of a Job:  Safely Delegate the Management of your Azure...Automate Yourself Out of a Job:  Safely Delegate the Management of your Azure...
Automate Yourself Out of a Job: Safely Delegate the Management of your Azure...
 
Super-Charge Your Site Reliability Practices with Runbook Automation
Super-Charge Your Site Reliability Practices with Runbook Automation Super-Charge Your Site Reliability Practices with Runbook Automation
Super-Charge Your Site Reliability Practices with Runbook Automation
 
Introduction to Rundeck
Introduction to Rundeck Introduction to Rundeck
Introduction to Rundeck
 
Automated Remediation with Rundeck + Sensu
Automated Remediation with Rundeck + SensuAutomated Remediation with Rundeck + Sensu
Automated Remediation with Rundeck + Sensu
 
Modernizing Incident Response
Modernizing Incident Response Modernizing Incident Response
Modernizing Incident Response
 
Runbook Automation: Old News or a Key to Unlock Performance? [DOES2020]
Runbook Automation: Old News or a Key to Unlock Performance? [DOES2020]Runbook Automation: Old News or a Key to Unlock Performance? [DOES2020]
Runbook Automation: Old News or a Key to Unlock Performance? [DOES2020]
 
Datadog + Rundeck at DASH 2020
Datadog + Rundeck at DASH 2020Datadog + Rundeck at DASH 2020
Datadog + Rundeck at DASH 2020
 
Rundeck Overview
Rundeck OverviewRundeck Overview
Rundeck Overview
 
Empower Devs, Simplify Ops, and Accelerate your Digital Transformation
Empower Devs, Simplify Ops, and Accelerate your Digital TransformationEmpower Devs, Simplify Ops, and Accelerate your Digital Transformation
Empower Devs, Simplify Ops, and Accelerate your Digital Transformation
 
Maximizing Your Rundeck Migration
Maximizing Your Rundeck Migration Maximizing Your Rundeck Migration
Maximizing Your Rundeck Migration
 
Business Continuity for Humans: Keeping Your Business Running When Your Peopl...
Business Continuity for Humans: Keeping Your Business Running When Your Peopl...Business Continuity for Humans: Keeping Your Business Running When Your Peopl...
Business Continuity for Humans: Keeping Your Business Running When Your Peopl...
 
PagerDuty + Rundeck = Shorter Incidents, Fewer Escalations
PagerDuty + Rundeck = Shorter Incidents, Fewer EscalationsPagerDuty + Rundeck = Shorter Incidents, Fewer Escalations
PagerDuty + Rundeck = Shorter Incidents, Fewer Escalations
 

Dernier

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 

Dernier (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 

Advanced Cluster Settings

  • 1. Rundeck How-To: Advanced Cluster Settings Nathan Fluegel May 30, 2019
  • 2. Agenda ● Cluster Architecture ● Job Ownership ○ Scheduled jobs ○ One-off jobs ● Heartbeat Setting ● Cluster Remote Execution Policy ● Load Policy ● Auto-Takeover Policy ● Do you need these settings?
  • 3.
  • 4.
  • 5. Job Ownership: Scheduled Jobs Scheduled jobs are always owned by a single Rundeck server cluster member. The default job owner is the cluster where the schedule was first created. If I had been logged in to Server1 when I first set a schedule for JobA, JobA’s scheduled runs will happen on Server1. This behavior can be over-ridden through Cluster Manager.
  • 6. Job Ownership: One-off Jobs Jobs that are run at a point in time are owned by a single Rundeck server instance within the cluster. By default, the job owner is the server instance a user is connected to when the job run is initiated. If I had been logged in to Server1 when I initiated a job run for JobA, that run happened on Server1. This default behavior can be over-ridden by Cluster Remote Execution Policies.
  • 7. Heartbeat Settings “Heartbeat” is a setting used with all Rundeck servers to measure whether a another server is still alive and able to execute jobs. The results of a heartbeat check can be used to determine logically whether a particular server can be depended on by other settings or processes, such as remote execution or autotakeover policies.
  • 8. # heartbeat interval in seconds rundeck.clusterMode.heartbeat.interval=30 # initial delay after startup to send heartbeat rundeck.clusterMode.heartbeat.delay=10 # remote execute/abort message processing interval in seconds rundeck.clusterMode.remoteExec.process.interval=10 # age in seconds since last heartbeat to consider another member inactive rundeck.clusterMode.heartbeat.considerInactive=150 # age in seconds since last heartbeat to consider another member dead rundeck.clusterMode.heartbeat.considerDead=300 Heartbeat Settings Configuration
  • 9. Cluster Remote Execution Policy Based on policy configurations, Rundeck Enterprise cluster members may forward job executions to other cluster members. The default policy is to have each job executed locally. If a job is executed in a project which is not assigned to a specific profile, the default policy is used. You can define multiple profiles and assign different projects to different profiles. Execution policies are defined on each server in rundeck-config.properties.
  • 10. rundeck.clusterMode.remoteExecution.policy = <Policy> Valid settings for <Policy>: None Default. Executes locally only Random Executes randomly among allowed members RoundRobin Executes round-robin style among allowed members Preset Executes on one other preset member Load Executes on a member based on load (Cluster 2.3.0+) Cluster Remote Execution Configuration Policy Policy setting indicates what method of assignment will be used for jobs in a particular policy.
  • 11. rundeck.clusterMode.remoteExecution.config.allowedTags = <List of Member Tags> “Allowed” tags indicate any machines that could have a job assigned to them as part of this policy. rundeck.clusterMode.remoteExecution.config.preferredTags = <List of Member Tags> “Preferred” tags indicate machines that should be given job executions by preference as part of this policy. Preferred machines should be a subset of your allowed machine. If your policy has both allowed and preferred machines, allowed tags would usually only receive a job if there are no Preferred+Allowed tagged machines available. Cluster Remote Execution Configuration Member Tags Tags are used to restrict which Cluster Members could be assigned to run a remote execution. Tags are not the only way to define which cluster members could receive jobs but they are the most flexible and are commonly used. Tags are assigned to individual servers by being added in each framework.properties file as desired.
  • 12. rundeck.clusterMode.remoteExecution.config.allowed = <List of Allowed Members> Self - Execute locally Other - Any other member except this one UUID - A particular UUID /regex/ - A regular expression matching a UUID rundeck.clusterMode.remoteExecution.config.activeOnly = true/false Cluster Remote Execution Configuration List of Allowed Members Rather than using tags, you can define allowed members statically. If used in conjunction with tags, the tagged servers would be used by preference. Active Only If set to true, jobs will only be delegated to an active machine (one with a heartbeat).
  • 13. rundeck.clusterMode.remoteExecution.profiles = profile1, profile2 This setting is un-necessary if you’re only using one defined profile. rundeck.clusterMode.remoteExecution.profile.profile1.projec ts=projectA, projectB The optional project name setting is provided in the context of a specific profile. Typically, this would only occur if you have more than one profile in play. Cluster Remote Execution Configuration Profile Name Profile names are used to distinguish multiple profiles from one another for more complex configurations. Project Name Each policy can be associated with one or more projects, if desired. This can be used to determine if jobs in a specific project should always be executed on specific machines.
  • 14. rundeck.clusterMode.remoteExecution.config.criteria = threadRatio,load This setting identifies which criteria will be used to compute load for this policy. rundeck.clusterMode.remoteExecution.config.weights = 1.0,1.5 Defines relative computational value of the criteria. In this example, load is weighted at 50% more than threadRatio. rundeck.clusterMode.remoteExecution.config.groupWeight=1,0, 0,0 Cluster members are sorted by weighted load and placed into groups. Each group has a weight and the policy randomly chooses a group based on the proportional weight of the group. A group member is then chosen randomly and used. This setting defines four groups, each with 25% of available members. Weights define 100% chance of using group 1. Cluster Remote Execution Configuration Load Balanced Policy When a remote execution configuration policy is set to load, jobs will be assigned to servers based on statistics calculated through the heartbeat process. Load is calculated based on thread ratio and percentage of CPU for each member.
  • 15. Example #1 rundeck.clusterMode.remoteExecution.policy = Random rundeck.clusterMode.remoteExecution.config.allowed = other rundeck.clusterMode.remoteExecution.config.activeOn ly = true Example #2 rundeck.clusterMode.remoteExecution.policy = RoundRobin rundeck.clusterMode.remoteExecution.config.allowed = self,/1C519C5A-4E78-4BE9-85EC-.+/ rundeck.clusterMode.remoteExecution.config.activeOn ly = true Cluster Remote Execution Configuration Example #1 A simple policy that sends all jobs to a random peer machine as long as that machine has a heartbeat. Example #2 Round robin assignment among self and any instances with a UUID that matches the regex.
  • 16. rundeck.clusterMode.remoteExecution.profiles = profile1, profile2 Example #3 rundeck.clusterMode.remoteExecution.profile.profile1.policy= RoundRobin rundeck.clusterMode.remoteExecution.profile.profile1.projects=projectA,projectB rundeck.clusterMode.remoteExecution.profile.profile1.config.allowed = other rundeck.clusterMode.remoteExecution.profile.profile1.config.allowedTags = * rundeck.clusterMode.remoteExecution.profile.profile1.config.preferredTags = worker,secondary rundeck.clusterMode.remoteExecution.profile.profile1.config.activeOnly = true Example #4 rundeck.clusterMode.remoteExecution.profile.profile2.policy = Preset rundeck.clusterMode.remoteExecution.profile.profile2.config.allowed = eff4405a- 58aa-4f14-b7bd-68e1e44b53d4 rundeck.clusterMode.remoteExecution.profile.profile2.config.activeOnly = true Cluster Remote Execution Configuration - Examples
  • 17. Auto-Takeover Policy If a cluster member goes down, an auto- takeover policy helps moved scheduled jobs to another cluster member. Autotakeover uses heartbeat settings to determine whether a machine is alive or not for purposes of triggering autotakeover. For non-scheduled jobs, autotakeover will not kick in. Instead, your remote execution policies can account for this situation.
  • 18. # enables autotakeover for members detected as "dead" rundeck.clusterMode.autotakeover.enabled=true # policy indicates which nodes to take over. "Any": all dead nodes. "Static": only allowed uuids rundeck.clusterMode.autotakeover.policy=any # delay in seconds to wait after sending autotakeover proposal rundeck.clusterMode.autotakeover.delay = 60 # sleep in minimum seconds between autotakeover attempts for a particular destination rundeck.clusterMode.autotakeover.sleep = 300 # Name servers to act as takeover destinations, by UUID rundeck.clusterMode.autotakeover.config.allowed=<uuid1>,<uuid2>,... Auto-Takeover Configuration
  • 19. Do you need these settings?