{"id":879,"date":"2019-07-23T09:32:15","date_gmt":"2019-07-23T15:32:15","guid":{"rendered":"https:\/\/ugit.siua.ac.cr\/?p=879"},"modified":"2019-09-25T14:24:31","modified_gmt":"2019-09-25T20:24:31","slug":"ha-en-proxmox","status":"publish","type":"post","link":"https:\/\/sada.services\/?p=879","title":{"rendered":"PROXMOX: HA (Alta Disponinilidad)"},"content":{"rendered":"\n<ul class=\"wp-block-list\"><li>Los archivos de configuraci\u00f3n est\u00e1n en:<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>cd \/etc\/pve\/ha\/<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\"><li>Todas las configuraciones son compartidas con todos los nodos<\/li><li>Para ver el archivo de configuraci\u00f3n de los recursos<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>nano \/etc\/pve\/ha\/resources.cfg<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\"><li>Valores<ul><li>group: grupo de alta disponibilidad<\/li><li>max_relocate: N\u00daMERO ENTERO m\u00e1ximo que veces que se intentar\u00e1 ubicar un servicio si falla al iniciar<\/li><li>max_restart: N\u00daMERO ENTERO m\u00e1ximo de veces que se intentar\u00e1 resetear un servicio si falla al iniciar<\/li><li>state:<ul><li>started: CRM tratar\u00e1 de arrancar el servicio<\/li><li>stopped: CRM trata de mantener el servicio en stop<\/li><li>disabled: CRM establece el servicio detenido, y no trata de ubicar el servicio en otro nodo<\/li><li>ignored: el recursos se elimina del status manager por lo que CRM y LRM no tocan el recurso m\u00e1s<\/li><\/ul><\/li><\/ul><\/li><li>El archivo de los grupos est\u00e1 en:<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>nano \/etc\/pve\/ha\/groups.cfg<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\"><li>valores<ul><li>nodes: nodos miembros del grupo, se le puede dar prioridad a cada nodo y los servicios se migran al de mayor prioridad.<\/li><li>nofailback\n (default=0): El CRM intenta ejecutar servicios en el nodo con la \nprioridad m\u00e1s alta. Si viene un nodo con mayor prioridad En l\u00ednea, el \nCRM migra el servicio a ese nodo. Habilitar nofailback previene ese \ncomportamiento. Cuando un nodo PVE vuelve a la vida, las m\u00e1quinas \nvirtuales que antes estaban corriendo en este nodo no volver\u00e1 de nuevo<\/li><li>restricted (default =0): Los servicios solo se ubicaran en los nodos que pertenecen al grupo&nbsp;<\/li><\/ul><\/li><li>Se pueden crear grupos de un nodo para controlar mejor a donde se migra<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>ha-manager groupadd prefer_node1 --nodes node1<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\"><li>Ejemplo: si deseamos que los servicios corran en el nodo1 de ser posible, pero si nodo1 no esta disponible los servicios se distribuyan en los nodo 2 y 3 y si no en el nodo4<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>ha-manager groupadd mygroup1 -nodes \"node1:2,node2:1,node3:1,node4\"<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">C\u00f3mo funciona<\/h2>\n\n\n\n<p>Proxmox utiliza dos demonios para que la alta disponibilidad funcione<\/p>\n\n\n\n<p>pve-ha-lrm:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Local Resource Manager (LRM) , que controla los servicios que est\u00e1n corriendo en la m\u00e1quina local<\/li><li>El archivo de estado est\u00e1 en nano \/etc\/pve\/nodes\/poseidon\/lrm_status<\/li><li>Para ver el log:&nbsp;<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>journalctl -u pve-ha-lrm <\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\"><li>pve-ha-crm:\n Cluster Resource Manager (CRM), que toma las decisiones del todo el \ncluster, se encarga de enviar comandos a LRM, procesa los resultados y \nmueve recursos si algo falla<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Estado del servicio<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Para consultarlos:<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>ha-manager status<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>stopped<\/strong>: el servicio est\u00e1 detenido (confirmado por LRM). Si LRM detecta que un servicio en \u00abstopped\u00bb todav\u00eda est\u00e1 corriendo lo detiene<\/li><li><strong>request_stop<\/strong>: El servicio debe ser detenido. El CRM espera la confirmaci\u00f3n del LRM.<\/li><li>stopping: El servicio debe ser detenido. CRM espera la confirmaci\u00f3n de LRM<\/li><li>started: El servicio est\u00e1 corriendo.&nbsp;<\/li><li>fence: ??<\/li><li>freeze: se usa este estado cuando se est\u00e1 reiniciando el nodo o el LRM<\/li><li>ignored: hace que se ignore la configuraci\u00f3n de HA temporalmente<\/li><li>migrate: cuando se est\u00e1 migrando en vivo el servicio a otro nodo<\/li><li>error: El servicio est\u00e1 deshabilitado por errores en LRM<\/li><li>queued: El servicio se acaba de agregar, y el CRM no lo ha visto hasta ahora.<\/li><li>disabled: El servicio est\u00e1 detenido<\/li><\/ul>\n\n\n\n<p>Comandos<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Para saber la configuraci\u00f3n <\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code> ha-manager config<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\"><li>Para saber el estado<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>ha-manager status<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\"><li>Remover un recurso de HA<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>ha-manager remove vm:100<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\"><li>Migrar a otro nodo<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>ha-manager migrate vm:100 node2<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\"><li>La migraci\u00f3n si est\u00e1 encendida la m\u00e1quina puede durar un tiempo, por lo que es mejor a veces apagar la m\u00e1quina y luego migrar para esto:<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>ha-manager relocate vm:100 node2\n<\/code><\/pre>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Esta gu\u00eda explica c\u00f3mo configurar la alta disponibilidad en proxmox 5<\/p>\n","protected":false},"author":2,"featured_media":2001,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[174,173,12],"class_list":["post-879","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-proxmox","tag-alta-disponibilidad","tag-ha","tag-proxmox"],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":6}},"_links":{"self":[{"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/posts\/879","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/sada.services\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=879"}],"version-history":[{"count":2,"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/posts\/879\/revisions"}],"predecessor-version":[{"id":2083,"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/posts\/879\/revisions\/2083"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/media\/2001"}],"wp:attachment":[{"href":"https:\/\/sada.services\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=879"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sada.services\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=879"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sada.services\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=879"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}