RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1936833 - Support version 1.1 of the OCF Resource Agent API standard
Summary: Support version 1.1 of the OCF Resource Agent API standard
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: pcs
Version: 8.5
Hardware: All
OS: All
high
high
Target Milestone: rc
: 8.6
Assignee: Ondrej Mular
QA Contact: cluster-qe@redhat.com
Steven J. Levine
URL:
Whiteboard:
: 2003045 2049745 2060847 (view as bug list)
Depends On: 1384485 1936696 2018969
Blocks: 2003045 2060847
TreeView+ depends on / blocked
 
Reported: 2021-03-09 10:24 UTC by Tomas Jelinek
Modified: 2022-05-10 15:24 UTC (History)
15 users (show)

Fixed In Version: pcs-0.10.11-2.el8
Doc Type: Enhancement
Doc Text:
.`pcs` suppport for OCF Resource Agent API 1.1 standard The `pcs` command-line interface now supports OCF 1.1 resource and STONITH agents. An OCF 1.1 agent's metadata must comply with the OCF 1.1 schema. If an OCF 1.1 agent's metadata does not comply with the OCF 1.1 schema, `pcs` considers the agent invalid and will not create or update a resource of the agent unless the `--force` option is specified. The `pcsd` Web UI and `pcs` commands for listing agents omit OCF 1.1 agents with invalid metadata from the listing. An OCF agent that declares that it implements any OCF version other than 1.1, or does not declare a version at all, is validated against the OCF 1.0 schema. Validation issues are reported as warnings, but for those agents it is not necessary to specify the `--force` option when creating or updating a resource of the agent.
Clone Of: 1936696
: 2003045 2018969 2060847 (view as bug list)
Environment:
Last Closed: 2022-05-10 14:50:42 UTC
Type: Feature Request
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 1885293 1 high CLOSED Support new role terminology in pacemaker 2.1 2023-06-14 10:10:17 UTC
Red Hat Product Errata RHEA-2022:1978 0 None None None 2022-05-10 14:51:15 UTC

Internal Links: 2036633

Description Tomas Jelinek 2021-03-09 10:24:00 UTC
+++ This bug was initially created as a clone of Bug #1936696 +++

The upstream ClusterLabs community is preparing to release version 1.1 of the OCF Resource Agent API standard, which will include a number of new features and clarifications compared to the previous version.

The RHEL High-Availability components will need to support this for RHEL 9.0, and a subset of support could be added as of 8.5 (any of the things mentioned as optional below).

Some key aspects that might require changes (agents refers to all OCF agents whether supplied by resource-agents, pacemaker, or some other package) are listed below. Some of these might warrant (or already have) their own BZs.

* The version number changes to 1.1
** In RHEL 9, agent meta-data should advertise 1.1 support. In RHEL 8, agents that use the old role names should continue to advertise 1.0 support, while agents that don't use role names could (but don't have to) advertise 1.1 support.
** pacemaker should set the OCF_RA_VERSION_MINOR environment variable to 1 instead of 0 in RHEL 9 and optionally 8

* The role names are now "promoted" and "unpromoted" instead of "Master" and "Slave".
** pacemaker should use the new names in help, logs, and output in 9 but not 8. In 9 and optionally 8, all names should be supported in user configurations; the crm_resource --master option should be renamed to --promoted, with the old option accepted for backward compatibility; the crm_master command should be renamed to pcmk_promotion, with the old name symlinked for backward compatibility; and relevant clone notification environment variables (OCF_RESKEY_CRM_meta_notify_master_resource etc.) should be provided with both the old and new names.
** Agents should use the new names in meta-data, help, etc., in 9 but not 8. Agents should use the new crm_resource --promoted option, crm_promotion command, and clone notification variables names in 9 and optionally 8 if supported by pacemaker. If agents parse pacemaker output for role names, they should look for either set of names in 9 and optionally 8.
** pcs should support all names in user input in 9 and optionally 8. The new names should be used in help and output in 9 but not 8. Any commands, options, etc., named after the old names should be renamed to the new ones with the old ones accepted for backward compatibility, in 9 and optionally 8.
** Note: promotion score node attribute names (master-*) are not part of the standard and are not changing at this time. However, anything outside pacemaker should use the crm_master or crm_promotion command instead of dealing with these attributes directly.

* The "unique" agent meta-data field has been deprecated in favor of two new fields, "unique-group" and "reloadable". Agents that support "reloadable" should support the new "reload-params" action.
** Pacemaker should support reloadable if present, otherwise unique if present, and support the reload-params action if present, otherwise reload if present, in 9 and optionally 8.
** Agents should provide both the old and new meta-data names, and the reload-params action if appropriate, in 9 and optionally 8.

* A number of new agent meta-data fields ("required", "deprecated", etc.) give additional hints for user interfaces.
** Agents should provide these in 9 and optionally 8.
** pcs can support these as desired.

* The new OCF_OUTPUT_FORMAT environment variable may be supported to indicate that the agent should output text or XML.
** Pacemaker's crm_resource and stonith_admin commands could set this appropriate to user-specified options before calling agents (at least for validate-all, which is the target use case).
** Agents may support this as desired.

* The OCF_CHECK_LEVEL environment variable may be supported for the validate-all action, to select host-independent or host-specific validation.
** Agents may support this as desired.
** Pacemaker could add an option to crm_resource and stonith_admin for check level when performing validation or monitoring.
** pcs could use the new pacemaker tool options if supported.

* Agent exit statuses have been clarified and expanded.
** Agents may support the new usage as desired. (Pacemaker already does.)

I may have missed some other places changes are needed, but those should be the most important.

Once adopted, the standard will be available at https://github.com/ClusterLabs/OCF-spec/tree/master/ra/1.1

This has been filed against 8.5 in case a subset will be implemented there, but may be cloned for or reassigned to 9.0, and some items could get their own bzs if separate tracking is desired

Comment 2 Ken Gaillot 2021-04-08 23:00:43 UTC
Pacemaker role name changes that could affect pcs:

* Using the new role names in "role" in <op>, <rsc_location>, or <resource_set>, or in "rsc-role" or "with-rsc-role" in <rsc_ticket> or <rsc_colocation>, requires CIB schema 3.7 (i.e. "cibadmin --upgrade" or equivalent must be run on an existing cluster to use the new names).

* The crm_resource --master option has been deprecated (in help only) and replaced with a new --promoted option. The old name will continue to work for now but should be updated if pcs uses it.

* The crm_master command has been deprecated (in help only) and replaced with a new crm_attribute --promotion option that defaults to --lifetime=reboot (example: "crm_master -l reboot -v 10" becomes "crm_attribute --promotion -v 10"). The old command will continue to work for now but should be updated if pcs uses it.

* When showing ban constraints, crm_mon --output-as=xml (and --as-xml) will now show promoted-only=true/false in addition to master_only=true/false, which is now deprecated (via schema comment only). master_only will still be available but should be replaced if pcs currently checks it.

All of the above will be available in 8.5, and support can be checked by testing the CRM feature set against 3.9.0.

Additionally, in 9.0, Pacemaker will use the new names in all tool output, so anywhere pcs is parsing role names from output, it will need to be updated. This will not be a feature set bump since it is a build-time option, but support can be checked by testing whether "pacemakerd --features" contains "compat-2.0" (if it does, tool output uses the old names). (The "compat-2.0" feature can also be used to check the unrelated change of whether tool output uses ocf::provider or ocf:provider.)

Comment 13 Tomas Jelinek 2021-09-22 13:43:20 UTC
*** Bug 2003045 has been marked as a duplicate of this bug. ***

Comment 15 Miroslav Lisik 2021-11-23 08:22:05 UTC
DevTestResults:

[root@r8-node-01 ~]# rpm -q pcs
pcs-0.10.11-2.el8.x86_64

[root@r8-node-01 ~]# crm_resource --show-metadata=ocf:pacemaker:Dummy | xmllint --xpath /resource-agent/version -
<version>1.1</version>
[root@r8-node-01 ~]# pcs resource create dummy ocf:pacemaker:Dummy
[root@r8-node-01 ~]# pcs resource
  * dummy       (ocf::pacemaker:Dummy):  Started r8-node-01

Comment 20 Steven J. Levine 2022-02-03 20:39:45 UTC
*** Bug 2049745 has been marked as a duplicate of this bug. ***

Comment 22 Michal Mazourek 2022-02-04 16:12:07 UTC
The same test was done as for bz2018969 comment 8.
Marking as VERIFIED for pcs-0.10.12-5.el8.

Comment 33 Tomas Jelinek 2022-03-04 13:00:56 UTC
*** Bug 2060847 has been marked as a duplicate of this bug. ***

Comment 35 errata-xmlrpc 2022-05-10 14:50:42 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (pcs bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2022:1978


Note You need to log in before you can comment on or make changes to this bug.