Skip to content

pcs-0.12.0 alpha1

Pre-release
Pre-release
Compare
Choose a tag to compare
@CtrlZmaster CtrlZmaster released this 12 Jul 13:17
· 100 commits to main since this release

Please be advised that this is an alpha release which is not feature complete. The pcs 0.12 series is designed to be compatible with Pacemaker 3.x on top of Corosync 3.x. This release therefore brings a lot of deprecations and also removals of previously deprecated features. This milestone also marks slowing down of feature development for the pcs 0.11 series and stopping maintenance of the pcs 0.10 series.

The most notable changes are:
All of the deprecated show commands were removed. Use config and status commands instead which better indicate the desired output.

Resource commands no longer accept stonith resources and vice-versa. This was done to prevent mixups and unintended consequences since there is a difference in behavior of some resource and stonith commands.

When working with resource agent configuration, validation of options by the agents is now enabled by default, but only produces warnings instead of errors. Since this was not widely used until now, there might be bogus warnings. Pcs is running the validate-all action of the agent, so please report any incorrect warnings to the maintainers of the specific agent.

New option, --yes, was introduced for approving dangerous actions like sbd device setup. This deprecates --force in this context which might have also disabled critical checks in addition to approving the action. The --force option will be used exclusively to disable critical checks in the future, the current behavior remains unchanged.

The --wait option was deprecated in resource commands (see changelog for exceptions). You can now follow up the resource commands with the new pcs status wait and pcs status query commands. This allows for checking that the resource is in a specified state instead of hardcoded values specific to each command.

Previously, there was a built-in support of pcs-web-ui that displayed instructions to install pcs-web-ui if it was absent. Now, the pcs-web-ui backend is disabled by default at build time. Even if pcs-web-ui is installed manually, it will not work without the backend in pcs. To enable the backend, --enable-webui option must be specified when running ./configure.

Other changes include deprecating features not supported in Pacemaker 3, which will be removed in the final pcs 0.12 version after Pacemaker 3 becomes available. Please, pay special attention to the removed, changed and deprecated sections of the changelog.

Complete change log for this release:

Removed

  • Using spaces in dates in location constraint rules (rhbz#2163953)
  • Delimiting stonith devices with a comma in pcs stonith level add | clear | delete | remove commands
  • Ambiguous syntax of pcs stonith level clear | delete | remove
  • Legacy role names are no longer accepted by pcs, use Promoted, Unpromoted, --promoted, promotable, promoted-max
  • Using stonith resources in pcs resource commands and resources in pcs stonith commands, as well as --brief, --no-strict, --safe and --simulate flags of pcs stonith disable command (RHEL-35428)
  • Ability to create stonith resource in a group from pcs stonith create command (RHEL-35428)
  • command stonith.create_in_group from API v1 and v2 (RHEL-35428)
  • Command pcs cluster pcsd-status, replaced with pcs status pcsd or pcs pcsd status (deprecated since 0.10.9)
  • Command pcs cluster certkey, replaced with pcs pcsd certkey (deprecated since 0.10.9)
  • Command pcs resource | stonith [op] defaults <name>=<value>..., replaced with pcs resource | stonith [op] defaults update (deprecated since 0.10.7)
  • Command pcs acl show, replaced with pcs acl config (deprecated since 0.10.9)
  • Command pcs alert show, replaced with pcs alert config (deprecated since 0.10.9)
  • Commands pcs constraint [location | colocation | order | ticket] show | list, replaced with pcs constraint [location | colocation | order | ticket] config (deprecated since 0.10.9)
  • Commands pcs property show, pcs property list, replaced with pcs property config (deprecated since 0.10.9)
  • Command pcs tag list, replaced with pcs tag config (deprecated since 0.10.9)
  • --autodelete flag of pcs resource move command (deprecated since 0.11)

Added

  • Support for output formats json and cmd to resources/stonith defaults and resource/stonith op defaults config commands (RHEL-38487)
  • Add lib commands cib_options.resource_defaults_config and cib_options.operation_defaults_config to API v2
  • Add lib command cluster.wait_for_pcmk_idle to API v2
  • Add lib command status.resources_status to API v2
  • Add pcs status wait CLI command (RHEL-38491)
  • Add pcs status query resource CLI commands (RHEL-38489)
  • Add commands constraint.location.add_rule_to_constraint and constraint.location.create_with_rule to API v2
  • Using --yes to confirm 'pcs cluster destroy', 'pcs quorum unblock', 'pcs stonith confirm', 'pcs stonith sbd device setup' and 'pcs stonith sbd watchdog test' commands (RHEL-36612)
  • Using --overwrite to confirm 'pcs cluster report' overwriting files (RHEL-36612)
  • Pkg-config with info for webui is now provided.

Fixed

  • Do not put empty uid/gid corosync configuration options to an uidgid file when not specified in pcs cluster uidgid add command. Empty options cause corosync start failure. (ghissue#772)
  • Do not allow fencing levels other than 1..9 (RHEL-38479)
  • Adjust OCF metadata processing to support the latest pacemaker changes (RHEL-27492)
  • Use different process creation method for multiprocessing module in order to avoid deadlock on process termination. (ghissue#780, RHEL-38478)
  • Unified the way score is defined in constraints commands (RHEL-34792)
  • Do not wrap pcs output to terminal width if pcs's stdout is redirected (RHEL-38481)
  • Report an error when an invalid resource-discovery is specified (RHEL-38480)
  • 'pcs booth destroy' now works for nodes without a cluster (such as arbitrators) (RHEL-38486)
  • Validate SBD_DELAY_START and SBD_STARTMODE options (RHEL-38484)

Changed

  • When creating or updating a resource or stonith, its options are now validated by the resource or stonith agent. Unless --agent-validation is specified, this does not prevent misconfiguring the resource or stonith. (RHEL-35670)
  • Standalone webui backend support in pcsd is now optional. It can be enabled by adding --enable-webui option to ./configure command. (RHEL-29739)

Deprecated

  • Pcs produces warnings about features planned to be removed in pacemaker 3:
    • score in order constraints
    • using rkt in bundles
    • upstart and nagios resources
    • some date-spec and duration options in rules
  • Specifying rules as multiple arguments, use a single string argument instead
  • Specifying score as a standalone value in pcs constraint location add and pcs constraint colocation add, use score=value instead (RHEL-34792)
  • --wait option in resource commands except pcs resource restart | move, and in the commands pcs cluster node add-guest | add-remote. Instead use:
    • pcs status wait to wait for the cluster to settle into stable state
    • pcs status query resource commands to verify that the resource is in the expected state after the wait
  • Using --force to confirm 'pcs cluster destroy', 'pcs quorum unblock', 'pcs stonith confirm', 'pcs stonith sbd device setup' and 'pcs stonith sbd watchdog test' commands, use --yes instead (RHEL-36612)
  • Using --force to confirm overwriting files in pcs cluster report, use --overwrite instead (RHEL-36612)
  • Assigning and unassigning ACL roles without specifying 'user' or 'group' keyword

Thanks / congratulations to everyone who contributed to this release, including Ivan Devat, Michal Pospisil, Miroslav Lisik, Ondrej Mular, Peter Romancik and Tomas Jelinek.