cloudera.cluster.service_role_config_group module – Manage a cluster service role config group.

Note

This module is part of the cloudera.cluster collection (version 4.4.0).

To install it, use: ansible-galaxy collection install cloudera.cluster. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: cloudera.cluster.service_role_config_group.

Synopsis

  • Manage a cluster service role config group.

Requirements

The below requirements are needed on the host that executes this module.

  • cm-client

Parameters

Parameter

Comments

agent_header

aliases: user_agent

string

Set the HTTP user agent header when interacting with the CM API endpoint.

Default: "ClouderaFoundry"

cluster

aliases: cluster_name

string / required

The associated cluster.

debug

aliases: debug_endpoints

boolean

Capture the HTTP interaction logs with the CM API endpoint.

Choices:

  • false ← (default)

  • true

display_name

string

The display name for this role config group in the Cloudera Manager UI.

force_tls

boolean

Flag to force TLS during CM API endpoint discovery.

If False, discovery will first try HTTP and follow any redirects.

Choices:

  • false ← (default)

  • true

host

aliases: hostname

string

Hostname of the CM API endpoint.

If set, the host parameter will trigger CM API endpoint discovery, which will follow redirects.

Mutually exclusive with url.

message

aliases: msg

string

Message to log for any changes to the entity.

Default: "Managed by Ansible"

password

string / required

Password for access to the CM API endpoint.

This parameter is set to no_log.

port

integer

Port of the CM API endpoint.

If set, CM API endpoint discovery will connect to the designated port first and will follow redirects.

Default: 7180

proxy_server

aliases: proxy, http_proxy

string

Set the HTTP/S proxy server when interacting with the CM API endpoint.

purge

boolean

Flag indicating whether to reset role associations to only the declared roles.

Choices:

  • false ← (default)

  • true

role_config_group

aliases: role_config_group_name, name

string / required

A role config group to manage.

role_type

aliases: type

string

The role type defining the role config group.

role_type is only valid during creation.

To change the role_type of an existing role config group, you must explicitly delete and recreate the role config group.

roles

aliases: role_association, role_membership, membership

list / elements=string

A list of roles associated, i.e. using, the role config group.

If purge=False, any new roles will be moved to use the role config group.

If purge=True, any roles not specified in the list will be reset to the base role config group for the service.

service

aliases: service_name

string / required

The associated service.

ssl_ca_cert

aliases: tls_cert, ssl_cert

path

Path to SSL CA certificate to use for validation.

state

string

The presence or absence of the role config group.

On state=absent, any associated role will be moved to the service’s default group, i.e. the base role config group.

NOTE: you cannot remove a base role config group.

Choices:

  • "present" ← (default)

  • "absent"

url

aliases: endpoint, cm_endpoint_url

string

The CM API endpoint URL and should include scheme, host, port, and API root path.

Mutually exclusive with host.

username

aliases: user

string / required

Username for access to the CM API endpoint.

verify_tls

boolean

Verify the TLS certificates for the CM API endpoint.

Choices:

  • false

  • true ← (default)

version

aliases: api_version

string

API version of the CM API endpoint.

Default: "True"

Attributes

Attribute

Support

Description

check_mode

Support: full

Can run in check_mode and return changed status prediction without modifying target

diff_mode

Support: full

Will return details on what has changed (or possibly needs changing in check_mode), when in diff mode

platform

Platforms: all

Target OS/families that can be operated against

Examples

---
- name: Create a role config group
  cloudera.cluster.service_role_config_group:
    host: example.cloudera.com
    username: "jane_smith"
    password: "S&peR4Ec*re"
    cluster: example-cluster
    service: HDFS
    role_config_group: Example-DATANODE
    type: DATANODE

- name: Create or update a role config group with role associations
  cloudera.cluster.service_role_config_group:
    host: example.cloudera.com
    username: "jane_smith"
    password: "S&peR4Ec*re"
    cluster: example-cluster
    service: HDFS
    type: DATANODE
    role_config_group: Example-DATANODE
    roles:
      - hdfs-DATANODE-a9a5b7d344404d8a304ff4b3779679a1

- name: Append a role association to a role config group
  cloudera.cluster.cluster_service_role_config:
    host: example.cloudera.com
    username: "jane_smith"
    password: "S&peR4Ec*re"
    cluster: example-cluster
    service: example-service
    role_config_group: Example-DATANODE
    roles:
      - hdfs-DATANODE-7f3a9da5805a46e3100bae67424355ac # Now two roles

- name: Update (purge) role associations to a role config group
  cloudera.cluster.cluster_service_role_config:
    host: example.cloudera.com
    username: "jane_smith"
    password: "S&peR4Ec*re"
    cluster: example-cluster
    service: example-service
    role_config_group: Example-DATANODE
    roles:
      - hdfs-DATANODE-7f3a9da5805a46e3100bae67424355ac # Now only one role
    purge: yes

- name: Reset all role associations to a role config group
  cloudera.cluster.cluster_service_role_config:
    host: example.cloudera.com
    username: "jane_smith"
    password: "S&peR4Ec*re"
    cluster: example-cluster
    service: example-service
    role_config_group: Example-DATANODE
    roles: []
    purge: yes

- name: Remove a role config group
  cloudera.cluster.service_role_config_group:
    host: example.cloudera.com
    username: "jane_smith"
    password: "S&peR4Ec*re"
    cluster: example-cluster
    service: HDFS
    role_config_group: Example-DATANODE
    state: absent
-

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

role_config_group

dictionary

A service role config group.

Returned: always

base

boolean

Flag indicating whether this is a base group.

Returned: always

display_name

string

A user-friendly name of the role config group, as would have been shown in the web UI.

Returned: when supported

name

string

The unique name of this role config group.

Returned: always

role_names

list / elements=string

List of role names associated with this role config group.

Returned: when supported

role_type

string

The type of the roles in this group.

Returned: always

service_name

string

The service name associated with this role config group.

Returned: always


Authors

  • Webster Mudge (@wmudge)

Collection links