7.5.2. 클러스터에 클러스터 서비스 추가

클러스터에 클러스터 서비스를 추가하려면, 다음 절차를 따르십시오.
  1. 클러스터의 노드 중 하나에서 /etc/cluster/cluster.conf를 엽니다.
  2. 각 서비스에 대해 rm 요소 내에 service 부분을 추가합니다. 예:
    
        <rm>
            <service autostart="1" domain="" exclusive="0" name="" recovery="restart">
    
            </service>
        </rm>
    
    
  3. service 요소에서 다음의 매개 변수 (속성)를 설정합니다:
    • autostart — 클러스터가 시작될 때 서비스를 자동으로 시작할지에 대한 여부를 지정합니다. 활성화하려면 '1'을 비활성화하려면 '0'을 사용합니다. 디폴트 값은 활성화입니다.
    • domain — 장애 조치 도메인을 지정합니다. (필요한 경우)
    • exclusive — 다른 서비스가 실행되고 있지 않는 노드에서만 서비스를 실행하는 정책을 지정합니다.
    • recovery — 서비스의 복구 정책을 지정합니다. 이 옵션은 서비스를 재배치, 다시 시작, 비활성화, 다시 시작-비활성화합니다.
  4. 사용하고자 하는 리소스의 유형에 따라, 글로벌 또는 특정 서비스 리소스를 갖는 서비스를 배치합니다.
    예를 들어 글로벌 리소스를 사용하는 Apache 서비스는 다음과 같습니다:
    
        <rm>
            <resources>
                    <fs name="web_fs" device="/dev/sdd2" mountpoint="/var/www" fstype="ext3"/>
                    <ip address="127.143.131.100" monitor_link="yes" sleeptime="10"/>
                    <apache config_file="conf/httpd.conf" name="example_server" server_root="/etc/httpd" shutdown_wait="0"/>
            </resources>
            <service autostart="1" domain="example_pri" exclusive="0" name="example_apache" recovery="relocate">
                    <fs ref="web_fs"/>
                    <ip ref="127.143.131.100"/>
                    <apache ref="example_server"/>
            </service>
        </rm>
    
    
    예를 들어, 특정 서비스 리소스를 사용하는 Apache 서비스는 다음과 같습니다:
    
        <rm>
            <service autostart="0" domain="example_pri" exclusive="0" name="example_apache2" recovery="relocate">
                    <fs name="web_fs2" device="/dev/sdd3" mountpoint="/var/www2" fstype="ext3"/>
                    <ip address="127.143.131.101" monitor_link="yes" sleeptime="10"/>
                    <apache config_file="conf/httpd.conf" name="example_server2" server_root="/etc/httpd" shutdown_wait="0"/>
            </service>
        </rm>
    
    
    • example_apache — 이 서비스는 글로벌 리소스 web_fs, 127.143.131.100, example_server를 사용합니다.
    • example_apache2 — 이 서비스는 특정 서비스 리소스 web_fs2, 127.143.131.101, example_server2를 사용합니다.
  5. 값을 증가시켜 config_version 속성을 업데이트합니다 (예: config_version="2"에서 config_version="3">로 변경)
  6. /etc/cluster/cluster.conf를 저장합니다.
  7. (옵션) ccs_config_validate 명령을 실행하여 클러스터 스키마 (cluster.rng)에 대해 업데이트된 파일의 유효성을 검사합니다. 예:
    [root@example-01 ~]# ccs_config_validate 
    Configuration validates
    
  8. cman_tool version -r 명령을 실행하여 설정을 나머지 클러스터 노드에 전달합니다.
  9. 업데이트된 설정 파일이 전달되었는지 확인합니다.
  10. 7.8절. “설정 확인 ”으로 이동합니다.

예 7.10. 서비스 추가와 함께 cluster.conf: 하나는 글로벌 리소스를 사용하고 하나는 특정 서비스 리소스를 사용


<cluster name="mycluster" config_version="3">
   <clusternodes>
     <clusternode name="node-01.example.com" nodeid="1">
         <fence>
            <method name="APC">
              <device name="apc" port="1"/>
             </method>
         </fence>
     </clusternode>
     <clusternode name="node-02.example.com" nodeid="2">
         <fence>
            <method name="APC">
              <device name="apc" port="2"/>
            </method>
         </fence>
     </clusternode>
     <clusternode name="node-03.example.com" nodeid="3">
         <fence>
            <method name="APC">
              <device name="apc" port="3"/>
            </method>
         </fence>
     </clusternode>
   </clusternodes>
   <fencedevices>
         <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/>
   </fencedevices>
   <rm>
       <failoverdomains>
           <failoverdomain name="example_pri" nofailback="0" ordered="1" restricted="0">
               <failoverdomainnode name="node-01.example.com" priority="1"/>
               <failoverdomainnode name="node-02.example.com" priority="2"/>
               <failoverdomainnode name="node-03.example.com" priority="3"/>
           </failoverdomain>
       </failoverdomains>
       <resources>
           <fs name="web_fs" device="/dev/sdd2" mountpoint="/var/www" fstype="ext3"/>
           <ip address="127.143.131.100" monitor_link="yes" sleeptime="10"/>
           <apache config_file="conf/httpd.conf" name="example_server" server_root="/etc/httpd" shutdown_wait="0"/>
       </resources>
       <service autostart="1" domain="example_pri" exclusive="0" name="example_apache" recovery="relocate">
           <fs ref="web_fs"/>
           <ip ref="127.143.131.100"/>
           <apache ref="example_server"/>
       </service>
       <service autostart="0" domain="example_pri" exclusive="0" name="example_apache2" recovery="relocate">
           <fs name="web_fs2" device="/dev/sdd3" mountpoint="/var/www2" fstype="ext3"/>
           <ip address="127.143.131.101" monitor_link="yes" sleeptime="10"/>
           <apache config_file="conf/httpd.conf" name="example_server2" server_root="/etc/httpd" shutdown_wait="0"/>
       </service>
   </rm>
</cluster>