Pacemaker에서 Apache 리소스를 시작할 수 없습니다.

Pacemaker에서 Apache 리소스를 시작할 수 없습니다.

저는 Pacemaker와 Corosync를 사용하여 CentOS7을 실행하는 3개 노드가 있는 기본 Apache HA 클러스터를 설정하고 있습니다. 어떤 이유로 PC에서 Apache 리소스를 시작할 수 없습니다.

클러스터 IP: 192.168.200.40

# pcs resource show ClusterIP
     Resource: ClusterIP (class=ocf provider=heartbeat type=IPaddr2)
      Attributes: cidr_netmask=24 ip=192.168.200.40
      Operations: monitor interval=20s (ClusterIP-monitor-interval-20s)
                  start interval=0s timeout=20s (ClusterIP-start-interval-0s)
                  stop interval=0s timeout=20s (ClusterIP-stop-interval-0s)



# pcs resource show WebServer
 Resource: WebServer (class=ocf provider=heartbeat type=apache)
  Attributes: configfile=/etc/httpd/conf/httpd.conf statusurl=http://localhost/server-status
  Operations: monitor interval=1min (WebServer-monitor-interval-1min)
              start interval=0s timeout=40s (WebServer-start-interval-0s)
              stop interval=0s timeout=60s (WebServer-stop-interval-0s)



# pcs status
Cluster name: 
WARNING: corosync and pacemaker node names do not match (IPs used in setup?)
Stack: corosync
Current DC: server3.example.com (version 1.1.18-11.el7_5.2-2b07d5c5a9) - partition with quorum
Last updated: Thu Jun  7 21:59:09 2018
Last change: Thu Jun  7 21:45:23 2018 by root via cibadmin on server1.example.com

3 nodes configured
2 resources configured

Online: [ server1.example.com server2.example.com server3.example.com ]

Full list of resources:

 ClusterIP  (ocf::heartbeat:IPaddr2):   Started server2.example.com
 WebServer  (ocf::heartbeat:apache):    Stopped

Failed Actions:
* WebServer_start_0 on server3.example.com 'unknown error' (1): call=49, status=Timed Out, exitreason='',
    last-rc-change='Thu Jun  7 21:46:03 2018', queued=0ms, exec=40002ms
* WebServer_start_0 on server1.example.com 'unknown error' (1): call=53, status=Timed Out, exitreason='',
    last-rc-change='Thu Jun  7 21:45:23 2018', queued=0ms, exec=40003ms
* WebServer_start_0 on server2.example.com 'unknown error' (1): call=47, status=Timed Out, exitreason='',
    last-rc-change='Thu Jun  7 21:46:43 2018', queued=1ms, exec=40002ms


Daemon Status:
  corosync: active/enabled
  pacemaker: active/enabled
  pcsd: active/enabled

httpd 인스턴스는활성화됨그리고달리기세 노드 모두에서. 클러스터 IP와 각 노드 IP 모두 웹 페이지에 액세스할 수 있습니다. ClusterIP 리소스는 장애 조치에도 적합합니다. 이 상황에서 Apache 리소스에 어떤 문제가 발생할 수 있습니까?

매우 감사합니다!

고쳐 쓰다:

다음은 디버그 출력의 추가 정보입니다. Apache가 포트에 바인딩할 수 없는 것으로 보이지만 Apache 로그에는 오류가 없으며 systemctl status httpd모든 노드에서 녹색으로 나타납니다. 클러스터 IP와 각 노드 IP로 웹 페이지를 열 수 있습니다. ClusterIP 리소스 장애 조치도 잘 작동합니다. Apache 리소스가 심장 박동기에서 작동하지 않는 이유를 아시나요?

# pcs resource debug-start WebServer --full
Operation start for WebServer (ocf:heartbeat:apache) failed: 'Timed Out' (2)
 >  stderr: ERROR: (98)Address already in use: AH00072: make_sock: could not bind to address [::]:80 (98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down AH00015: Unable to open logs
 >  stderr: INFO: apache not running
 >  stderr: INFO: waiting for apache /etc/httpd/conf/httpd.conf to come up
 >  stderr: INFO: apache not running
 >  stderr: INFO: waiting for apache /etc/httpd/conf/httpd.conf to come up
 >  stderr: INFO: apache not running
 >  stderr: INFO: waiting for apache /etc/httpd/conf/httpd.conf to come up
 >  stderr: INFO: apache not running

답변1

httpdPID 파일 위치 때문인 것 같습니다 . 나는 같은 문제가 있었고 " PidFile /var/run/httpd.pid" 를 추가하고 리소스를 httpd.conf비활성화 한 다음 시작 하여 리소스가 작동하여 문제를 해결했습니다.webserverhttpdwebserver

긴 간격 후에 답변을 추가하는 것은 관련이 없지만 누군가에게 도움이 될 수 있다는 것을 알고 있습니다.

관련 정보