5.6. 고급 등록 방법


경우에 따라 다른 서브스크립션 유형에 다른 역할을 등록해야 할 수 있습니다. 예를 들어 컨트롤러 노드만 OpenStack Platform 서브스크립션에 서브스크립션하고 Ceph Storage 노드를 Ceph Storage 서브스크립션에 가입하려고 할 수 있습니다. 이 섹션에서는 다양한 역할에 별도의 서브스크립션을 할당하는 데 도움이 되는 몇 가지 고급 등록 방법을 제공합니다.

구성 후크

한 가지 방법은 역할별 스크립트를 작성하고 역할별 후크를 사용하여 포함하는 것입니다. 예를 들어 다음 코드 조각을 OS::TripleO::ControllerExtraConfigPre 리소스의 템플릿에 추가하여 컨트롤러 노드만 이러한 서브스크립션 세부 정보를 수신할 수 있습니다.

ControllerRegistrationConfig:
  type: OS::Heat::SoftwareConfig
  properties:
    group: script
    config: |
      #!/bin/sh
      sudo subscription-manager register --org 1234567 \
        --activationkey "my-openstack"
      sudo subscription-manager attach --pool 1a85f9223e3d5e43013e3d6e8ff506fd
      sudo subscription-manager repos --enable rhel-7-server-rpms \
        --enable rhel-7-server-extras-rpms \
        --enable rhel-7-server-rh-common-rpms \
        --enable rhel-ha-for-rhel-7-server-rpms \
        --enable rhel-7-server-openstack-13-rpms \
        --enable rhel-7-server-rhceph-3-mon-rpms

ControllerRegistrationDeployment:
  type: OS::Heat::SoftwareDeployment
  properties:
    server: {get_param: server}
    config: {get_resource: ControllerRegistrationConfig}
    actions: ['CREATE','UPDATE']
    input_values:
      deploy_identifier: {get_param: DeployIdentifier}
Copy to Clipboard Toggle word wrap

이 스크립트는 subscription-manager 명령 집합을 사용하여 시스템을 등록하고, 서브스크립션을 연결하며, 필요한 리포지토리를 활성화합니다.

후크에 대한 자세한 내용은 4장. 구성 후크 을 참조하십시오.

Ansible 기반 구성

director의 동적 인벤토리 스크립트를 사용하여 특정 역할에 대한 Ansible 기반 등록을 수행할 수 있습니다. 예를 들어 다음 플레이를 사용하여 컨트롤러 노드를 등록하려고 할 수 있습니다.

---
- name: Register Controller nodes
  hosts: Controller
  become: yes
  vars:
    repos:
      - rhel-7-server-rpms
      - rhel-7-server-extras-rpms
      - rhel-7-server-rh-common-rpms
      - rhel-ha-for-rhel-7-server-rpms
      - rhel-7-server-openstack-13-rpms
      - rhel-7-server-rhceph-3-mon-rpms
  tasks:
    - name: Register system
      redhat_subscription:
        activationkey: my-openstack
        org_id: 1234567
        pool_ids: 1a85f9223e3d5e43013e3d6e8ff506fd
    - name: Disable all repos
      command: "subscription-manager repos --disable *"
    - name: Enable Controller node repos
      command: "subscription-manager repos --enable {{ item }}"
      with_items: "{{ repos }}"
Copy to Clipboard Toggle word wrap

이 플레이에는 세 가지 작업이 포함되어 있습니다. - 활성화 키를 사용하여 노드 등록 - 자동 사용 리포지토리 비활성화 - 컨트롤러 노드와 관련된 리포지토리만 활성화합니다. 리포지토리는 repos 변수를 사용하여 나열됩니다.

오버클라우드를 배포한 후 Ansible이 오버클라우드에 대해 플레이북(ansible-osp-registration.yml)을 실행하도록 다음 명령을 실행할 수 있습니다.

$ ansible-playbook -i /usr/bin/tripleo-ansible-inventory ansible-osp-registration.yml
Copy to Clipboard Toggle word wrap

이 명령은 다음을 수행합니다. - 동적 인벤토리 스크립트를 실행하여 호스트 및 그룹 목록을 가져옵니다. - 플레이북의 hosts 매개 변수에 정의된 그룹의 노드에 플레이북 작업을 적용합니다. 이 경우에는 Controller 그룹입니다.

오버클라우드에서 실행 중인 Ansible 자동화에 대한 자세한 내용은 Director 설치 및 사용 가이드의 "Ansible 자동화 실행" 을 참조하십시오.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat