26.5. 펜싱 및 리소스를 사용하여 고가용성 클러스터 구성
다음 절차에서는 ha_cluster
시스템 역할을 사용하여 펜싱 장치, 클러스터 리소스, 리소스 그룹, 복제된 리소스가 포함된 고가용성 클러스터를 생성합니다.
ha_cluster
시스템 역할은 지정된 노드의 기존 클러스터 구성을 대체합니다. 역할에 지정되지 않은 모든 설정은 손실됩니다.
사전 요구 사항
- 제어 노드와 관리형 노드가 준비되었습니다.
- 관리 노드에서 플레이북을 실행할 수 있는 사용자로 제어 노드에 로그인되어 있습니다.
-
관리형 노드에 연결하는 데 사용하는 계정에는
sudo
권한이 있습니다. - 클러스터 구성원에게 RHEL 및 RHEL 고가용성 애드온에 대한 활성 서브스크립션 적용 범위로 사용할 시스템이 있습니다.
- 인벤토리 파일은 ha_cluster 시스템 역할에 대한 인벤토리 지정에 설명된 대로 클러스터 노드를 지정합니다.
절차
다음 콘텐츠를 사용하여 플레이북 파일(예:
~/playbook.yml
)을 생성합니다.--- - name: Create a high availability cluster that includes a fencing device and resources hosts: node1 node2 roles: - rhel-system-roles.ha_cluster vars: ha_cluster_cluster_name: my-new-cluster ha_cluster_hacluster_password: <password> ha_cluster_manage_firewall: true ha_cluster_manage_selinux: true ha_cluster_resource_primitives: - id: xvm-fencing agent: 'stonith:fence_xvm' instance_attrs: - attrs: - name: pcmk_host_list value: node1 node2 - id: simple-resource agent: 'ocf:pacemaker:Dummy' - id: resource-with-options agent: 'ocf:pacemaker:Dummy' instance_attrs: - attrs: - name: fake value: fake-value - name: passwd value: passwd-value meta_attrs: - attrs: - name: target-role value: Started - name: is-managed value: 'true' operations: - action: start attrs: - name: timeout value: '30s' - action: monitor attrs: - name: timeout value: '5' - name: interval value: '1min' - id: dummy-1 agent: 'ocf:pacemaker:Dummy' - id: dummy-2 agent: 'ocf:pacemaker:Dummy' - id: dummy-3 agent: 'ocf:pacemaker:Dummy' - id: simple-clone agent: 'ocf:pacemaker:Dummy' - id: clone-with-options agent: 'ocf:pacemaker:Dummy' ha_cluster_resource_groups: - id: simple-group resource_ids: - dummy-1 - dummy-2 meta_attrs: - attrs: - name: target-role value: Started - name: is-managed value: 'true' - id: cloned-group resource_ids: - dummy-3 ha_cluster_resource_clones: - resource_id: simple-clone - resource_id: clone-with-options promotable: yes id: custom-clone-id meta_attrs: - attrs: - name: clone-max value: '2' - name: clone-node-max value: '1' - resource_id: cloned-group promotable: yes
이 예제 플레이북 파일은
firewalld
및selinux
서비스를 실행하는 클러스터를 구성합니다. 클러스터에는 펜싱, 여러 리소스, 리소스 그룹이 포함됩니다. 리소스 그룹에 대한 리소스 복제도 포함되어 있습니다.프로덕션용 플레이북 파일을 생성할 때 자격 증명 모음은 Ansible Vault로 콘텐츠 암호화에 설명된 대로 암호를 암호화합니다.
플레이북 구문을 확인합니다.
$ ansible-playbook --syntax-check ~/playbook.yml
이 명령은 구문만 검증하고 잘못되었지만 유효한 구성으로부터 보호하지 않습니다.
플레이북을 실행합니다.
$ ansible-playbook ~/playbook.yml
추가 리소스
-
/usr/share/ansible/roles/rhel-system-roles.ha_cluster/README.md
파일 -
/usr/share/doc/rhel-system-roles/ha_cluster/
directory