Server IP : 184.107.3.203 / Your IP : 216.73.216.51 Web Server : Apache System : Linux dedicated2.avenfashion.com.ph 4.18.0-553.40.1.el8_10.x86_64 #1 SMP Mon Feb 10 12:11:18 EST 2025 x86_64 User : adminteladeoro ( 1015) PHP Version : 8.2.28 Disable Function : exec,passthru,shell_exec,system MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /usr/lib/python3.6/site-packages/sos/collector/clusters/__pycache__/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
3 ~ �g> � @ s@ d dl Z d dlmZ d dlmZ d dlmZ G dd� de�ZdS )� N)�ElementTree)�Cluster)�sos_parse_versionc @ sH e Zd ZdZd gZdZdZdddgZd d� Zdd � Z dd� Z dd� ZdS )� pacemakerz+Pacemaker High Availability Cluster ManagerT�online�Collect nodes listed as online�offline�Collect nodes listed as offline� only-corosyncF�)Only use corosync.conf to enumerate nodesc C s� g | _ y\| jd�sRy| j� W n2 tk rP } z| jd|� �� W Y d d }~X nX | j s`| j� W n2 tk r� } z| jd|� �� W Y d d }~X nX dd� | j D �}|r�| jddj|�� d�� | j S ) Nz only-corosynczHFalling back to sourcing corosync.conf. Could not parse crm_mon output: z(Could not determine nodes from cluster: c S s g | ]}d |kr|�qS )�.� )�.0�nr r �/usr/lib/python3.6/pacemaker.py� <listcomp>/ s z'pacemaker.get_nodes.<locals>.<listcomp>zWARNING: Node addresses '�,z�' may not resolve locally if you are not running on a node in the cluster. Try using option '-c pacemaker.only-corosync' if these connections fail.)�nodes� get_option�get_nodes_from_crm� Exception�log_warn�get_nodes_from_corosyncZ log_error�join)�self�errZ_shortsr r r � get_nodes s ""zpacemaker.get_nodesc C s� d}| j d�}|d dkrJ|d j� d jd�d }t|�td�krNd }nd S | j d|� �dd �}|d dkr|| j|d � d S )zG Try to parse crm_mon output for node list and status. z--output-as=xmlzcrm_mon --versionZstatusr �output� �-z2.0.3z--as-xmlNzcrm_mon --one-shot --inactive T)Z need_root)Zexec_primary_cmd�splitr � parse_crm_xml)r ZxmloptZ_verZcverZ_outr r r r 9 s zpacemaker.get_nodes_from_crmc C sz t j|�}|jd�}x`|D ]X}|j}| jd�rL|d dkrL| jj|d � q| jd�r|d dkr| jj|d � qW dS )zA Parse the xml output string provided by crm_mon r r �true�namer ZfalseN)r Z fromstring�findZattribr r �append)r Z xmlstringZ_xmlr �nodeZ_noder r r r! M s zpacemaker.parse_crm_xmlc C sH | j d� | jjd�}tjd|�}x |D ]}| jj|d j� � q(W dS )z� As a fallback measure, read corosync.conf to get the node list. Note that this prevents us from separating online nodes from offline nodes. z_WARNING: unable to distinguish online nodes from offline nodes when sourcing from corosync.confz/etc/corosync/corosync.confz((\sring0_addr:)(.*))r N���)r ZprimaryZ read_file�re�findallr r% �strip)r Zccr r&