{"id":1223,"date":"2019-11-28T17:58:25","date_gmt":"2019-11-28T09:58:25","guid":{"rendered":"https:\/\/nj.transwarp.cn:8180\/?p=1223"},"modified":"2021-06-17T10:11:15","modified_gmt":"2021-06-17T02:11:15","slug":"%e5%bc%82%e5%b8%b8%e6%83%85%e5%86%b5%e4%b8%8b%e5%a6%82%e4%bd%95%e5%85%b3%e9%97%admanage%e9%ab%98%e5%8f%af%e7%94%a8ha","status":"publish","type":"post","link":"https:\/\/kbwp.transwarp.cn\/?p=1223","title":{"rendered":"\u5f02\u5e38\u60c5\u51b5\u4e0b\u5982\u4f55\u5173\u95edmanage\u9ad8\u53ef\u7528HA"},"content":{"rendered":"<h3>\u6982\u8981\u63cf\u8ff0<\/h3>\n<hr \/>\n<p>\u4e00\u4e9b\u4e0d\u89c4\u8303\u7684\u64cd\u4f5c\u5bfc\u81f4 Manager 8180 \u9875\u9762\u65e0\u6cd5\u5173\u95ed Manager \u9ad8\u53ef\u7528\uff0c\u9700\u8981\u5728\u540e\u53f0\u64cd\u4f5c\u5220\u9664 Manager \u9ad8\u53ef\u7528\uff0c\u6765\u5b8c\u6210 Manager \u7684\u4fee\u590d\uff1b<br \/>\n\u672c\u6848\u4f8b\u96c6\u7fa4\u73af\u5883\uff1aManager 6.0-2019-01-25\uff0cTDH 6.0.2<\/p>\n<h3>\u8be6\u7ec6\u8bf4\u660e<\/h3>\n<hr \/>\n<p>\u540e\u53f0\u5173\u95ed Manager \u9ad8\u53ef\u7528\u7684\u6d41\u7a0b\u5982\u4e0b\uff1a<\/p>\n<ol>\n<li>\u505c\u6b62 Manager \u548c Manager-db\uff0c\u5e76\u901a\u8fc7\u4fee\u6539\u914d\u7f6e\u6587\u4ef6\u5173\u95ed Manager HA<\/li>\n<li>\u5c06 Manager-TXSQL \u6570\u636e\u8fc1\u79fb\u5230 MariaDB\uff0c\u5e76\u66f4\u65b0\u6743\u9650<\/li>\n<li>\u767b\u5f55 Manager \u6570\u636e\u5e93\u505c\u6b62\u6b63\u5728\u8fd0\u884c\u7684\u4efb\u52a1<\/li>\n<li>\u4fee\u6539 Manager-db \u7684\u767b\u5f55\u8fde\u63a5\u65b9\u5f0f<\/li>\n<li>\u5220\u9664 Manager HA \u76f8\u5173\u7684 container<\/li>\n<li>\u767b\u5f55 MariDB \u5220\u9664 Manager HA \u7684\u5b89\u88c5\u4fe1\u606f<\/li>\n<li>\u5220\u9664 Manager HA \u76f8\u5173\u7684\u76ee\u5f55\u6587\u4ef6<\/li>\n<\/ol>\n<h4>1\u3001\u505c\u6b62 Manager \u548c Manager-db\uff0c\u5e76\u901a\u8fc7\u4fee\u6539\u914d\u7f6e\u6587\u4ef6\u5173\u95ed Manager HA<\/h4>\n<p>\u6267\u884c\u4e0b\u9762\u547d\u4ee4\uff0c\u624b\u52a8\u505c\u6b62 manager \u8fdb\u7a0b\u548c manager db\uff0c\u9700\u8981\u5728\u6bcf\u4e2a Manager server \u8282\u70b9\u90fd\u64cd\u4f5c<\/p>\n<pre><code class=\"language-shell\">\/etc\/init.d\/transwarp-manager stop\n\/etc\/init.d\/transwarp-manager-db stop<\/code><\/pre>\n<p>\u5728\u914d\u7f6e\u6587\u4ef6\u4e2d\u5173\u95edHA\uff0c\u9700\u8981\u5728\u6bcf\u4e2a Manager \u8282\u70b9\u90fd\u64cd\u4f5c\uff0c\u6d89\u53ca\u5230\u7684\u914d\u7f6e\u6587\u4ef6\uff1a<\/p>\n<p><strong><code>\/etc\/transwarp-manager\/master\/ha.properties<\/code><\/strong><br \/>\n<strong><code>\/etc\/transwarp-manager\/master\/application.conf<\/code><\/strong><\/p>\n<p>\u5c06\u6587\u4ef6 ha.properties \u4e2d\u7684\u53c2\u6570 <strong><code>\u201ctranswarp.manager.master.ha.enable\u201d<\/code><\/strong> \u503c\u4fee\u6539\u4e3a <strong>false<\/strong><br \/>\n\u5c06\u6587\u4ef6 application.conf \u4e2d\u7684\u53c2\u6570 <strong><code>\u201cha.enabled\u201d <\/code><\/strong>\u503c\u4fee\u6539\u4e3a <strong>false<\/strong><\/p>\n<p>\u4fee\u6539\u540e\u7684\u53c2\u6570\u5982\u4e0b\uff1a<\/p>\n<p><img decoding=\"async\" src=\"\/wp-content\/uploads\/2019\/11\/\u56fe\u72472.png\" alt=\"\" \/><\/p>\n<h4>2\u3001\u5c06 Manager-TXSQL \u6570\u636e\u8fc1\u79fb\u5230 MariaDB\uff0c\u5e76\u66f4\u65b0\u6743\u9650<\/h4>\n<h5>2.1 \u5907\u4efd\u6570\u636e\u5e93\u6570\u636e\u4fe1\u606f<\/h5>\n<p><strong>\u4e00\u5b9a\u8981\u5907\u4efd\u5982\u4e0b\u6570\u636e\u6587\u4ef6<\/strong>\uff0c\u6d89\u53ca\u5230\u7684\u9700\u8981\u5907\u4efd\u7684\u6587\u4ef6\uff1a<\/p>\n<p><strong><code>\/var\/lib\/transwarp-manager\/master\/data\/mysql\/* \u548c \/etc\/transwarp-manager\/master\/mysql_dump.out<\/code><\/strong><\/p>\n<p>\u53ef\u4ee5\u53c2\u8003\u5982\u4e0b\u65b9\u5f0f cp \u4e00\u4efd\u5230\u5176\u4ed6\u76ee\u5f55\uff1a<\/p>\n<pre><code class=\"language-shell\">cp -r \/var\/lib\/transwarp-manager\/master\/data\/mysql \/root\/mysql_manager_data\ncp \/etc\/transwarp-manager\/master\/mysql_dump.out \/root\/mysql_dump-ha.out<\/code><\/pre>\n<p>\u5907\u4efd\u5b8c\u6bd5\u4e4b\u540e\uff0c\u6e05\u7a7a <strong><code>\/var\/lib\/transwarp-manager\/master\/data\/mysql<\/code><\/strong>\uff0c<strong>\u6ce8\u610f\u662f\u53ea\u6e05\u7a7a\u8be5\u76ee\u5f55\u4e0b\u7684\u6570\u636e\uff0c\u76ee\u5f55\u8981\u4fdd\u7559<\/strong><\/p>\n<pre><code class=\"language-shell\">rm -rfv \/var\/lib\/transwarp-manager\/master\/data\/mysql\/*<\/code><\/pre>\n<h5>2.2 Manager-TXSQL \u6570\u636e\u8fc1\u79fb\u5230 MariaDB<\/h5>\n<p>\u6267\u884c\u4e0b\u9762\u547d\u4ee4\u542f\u52a8 Manager-db \u6570\u636e\u5e93\uff08MariaDB\uff09\uff1a<\/p>\n<pre><code class=\"language-shell\">\/etc\/init.d\/transwarp-manager-db start<\/code><\/pre>\n<p>\u6267\u884c\u4e0b\u9762\u547d\u4ee4\u5c06 Manager-Txsql \u7684\u6570\u636e\u5bfc\u51fa\u5230 manager-txsql_dump.out \u6587\u4ef6\u4e2d\uff0c<strong>\u6ce8\u610f\u4e0b\u9762\u4f7f\u7528\u5230\u7684\u5bc6\u7801 \u201c538043184\u201d \u662f\u6587\u4ef6 \/etc\/manager\/conf\/db.properties \u4e2d db.password \u5bf9\u5e94\u7684\u5bc6\u7801<\/strong>\u3002\u5bfc\u51fa\u540e\u68c0\u67e5\u4e0b\u6587\u4ef6\u5927\u5c0f\uff0c\u6587\u4ef6\u5185\u5bb9\u7b49\u5927\u81f4\u5bf9\u4e0d\u5bf9\uff01\uff01\uff01<\/p>\n<pre><code class=\"language-shell\">mysqldump --single-transaction -h$(hostname -i) -uroot -P3366 -p\"538043184\" transwarp_manager > \/etc\/transwarp-manager\/master\/manager-txsql_dump.out<\/code><\/pre>\n<p>\u6267\u884c\u4e0b\u9762SQL\uff0c\u5237\u65b0\u6743\u9650\u5e76\u5c06 Manager-TXSQL \u6570\u636e\u8fc1\u79fb\u5230 MariaDB\uff0c<strong>\u6ce8\u610f\u4e0b\u9762\u547d\u4ee4\u4e2d\u4f7f\u7528\u5230\u7684\u5bc6\u7801 \u201crOsNsqX4uC\u201d \u662f\u6587\u4ef6 \/etc\/transwarp-manager\/master\/db.properties \u4e2d\u7684\u5bc6\u7801<\/strong><\/p>\n<pre><code class=\"language-shell\"># \u8bbe\u7f6e\u6570\u636e\u5e93 root \u7528\u6237\u7684\u5bc6\u7801\uff0c\u6b64\u5bc6\u7801\u8981\u548c transwarp \u7528\u6237\u7684\u5bc6\u7801\u4fdd\u6301\u4e00\u81f4\nmysqladmin -S \/var\/run\/mariadb\/transwarp-manager-db.sock -h127.0.0.1 -uroot -P3308 password \"rOsNsqX4uC\"\n\n# \u5237\u65b0\u6570\u636e\u5e93\u7684\u7528\u6237\u6743\u9650\nmysql -h127.0.0.1 -uroot -p\"rOsNsqX4uC\" -P3308 -e \"\nCREATE DATABASE IF NOT EXISTS transwarp_manager CHARACTER SET utf8;\nGRANT ALL PRIVILEGES ON transwarp_manager.* TO 'transwarp'@'%' IDENTIFIED BY 'rOsNsqX4uC';\nGRANT ALL PRIVILEGES ON transwarp_manager.* TO 'transwarp'@'localhost' IDENTIFIED BY 'rOsNsqX4uC';\nSET PASSWORD FOR 'transwarp'@'%' = PASSWORD('rOsNsqX4uC');\nSET PASSWORD FOR 'transwarp'@'localhost' = PASSWORD('rOsNsqX4uC');\nFLUSH PRIVILEGES;\"\n\n# \u5c06 Manager-TXSQL \u6570\u636e\u8fc1\u79fb\u5230 MariaDB\nmysql -h127.0.0.1 -utranswarp -p\"rOsNsqX4uC\" -P3308 transwarp_manager < \/etc\/transwarp-manager\/master\/manager-txsql_dump.out<\/code><\/pre>\n<p><img decoding=\"async\" src=\"\/wp-content\/uploads\/2019\/11\/\u56fe\u72479.png\" alt=\"\" \/><\/p>\n<h4>3\u3001\u767b\u5f55 Manager \u6570\u636e\u5e93\u505c\u6b62\u6b63\u5728\u8fd0\u884c\u7684\u4efb\u52a1<\/h4>\n<p>\u8fdb\u5165 Manager MariaDB \u6570\u636e\u5e93\uff1a<\/p>\n<pre><code class=\"language-shell\">mysql -h localhost -u transwarp -p$(cat \/etc\/transwarp-manager\/master\/db.properties | grep io.transwarp.manager.db.password | awk -F = '{print $2}') -S \/var\/run\/mariadb\/transwarp-manager-db.sock -D transwarp_manager<\/code><\/pre>\n<p>\u5c06 task\u3001stage\u3001job\u8868\u4e2d\u72b6\u6001\u662f WAITING \u548c RUNNING \u7684\u4efb\u52a1\u90fd\u8bbe\u7f6e\u4e3a FAILED\uff0c\u53c2\u8003\u5982\u4e0bSQL\uff1a<\/p>\n<pre><code class=\"language-sql\">UPDATE task SET status = 'FAILED' WHERE status = 'WAITING' OR status = 'RUNNING';\nUPDATE stage SET status = 'FAILED' WHERE status = 'WAITING' OR status = 'RUNNING';\nUPDATE job SET status = 'FAILED' WHERE status = 'WAITING' OR status = 'RUNNING';<\/code><\/pre>\n<h4>4\u3001\u4fee\u6539 Manager-db \u7684\u767b\u5f55\u8fde\u63a5\u65b9\u5f0f<\/h4>\n<p>\u4fee\u6539\u914d\u7f6e\u6587\u4ef6 jdbc \u8fde\u63a5\u4e32\u548c\u5bc6\u7801\uff0c\u6d89\u53ca\u6587\u4ef6\uff1a<strong><code>\/etc\/transwarp-manager\/master\/db.properties<\/code><\/strong><\/p>\n<pre><code class=\"language-shell\"># MariaDB \u8fde\u63a5\u4e32\u53c2\u8003\u793a\u4f8b\nio.transwarp.manager.db.url=jdbc:mysql:\/\/localhost:3308\/transwarp_manager?autoReconnect=true&failOverReadOnly=false&createDatabaseIfNotExist=false&characterEncoding=UTF-8<\/code><\/pre>\n<p><img decoding=\"async\" src=\"\/wp-content\/uploads\/2019\/11\/\u56fe\u724711.png\" alt=\"\" \/><\/p>\n<p>\u7136\u540e\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u91cd\u542f Manager\uff1a<\/p>\n<pre><code class=\"language-shell\">\/etc\/init.d\/transwarp-manager restart<\/code><\/pre>\n<p>\u6b64\u65f6 Manager \u7684 8180 \u9875\u9762\u5e94\u8be5\u6062\u590d\u6b63\u5e38\uff0c\u53ef\u4ee5\u4f7f\u7528\u4e86\u3002\u6253\u5f00 8180 \u68c0\u67e5\u670d\u52a1\u4fe1\u606f\u662f\u5426\u5b8c\u6574\u6b63\u786e\u3002<\/p>\n<h4>5\u3001\u5220\u9664 Manager HA \u76f8\u5173\u7684 container<\/h4>\n<p>\u5728 Manager \u6b63\u5e38\u4f7f\u7528\u540e\uff0c\u6267\u884c\u5982\u4e0b\u64cd\u4f5c\uff1a<\/p>\n<p>\u67e5\u770b\u5e76\u5220\u9664 Manager-TxSQL container\uff0c\u9700\u8981\u5728\u6bcf\u4e2a Manager-TXSQL \u8282\u70b9\u90fd\u6267\u884c\uff0c60bd7d50ccc1 \u662f Manager-TXSQL container id<\/p>\n<pre><code class=\"language-shell\">docker ps -a | grep Manager-TxSQL\ndocker rm -vf 60bd7d50ccc1<\/code><\/pre>\n<p><img decoding=\"async\" src=\"\/wp-content\/uploads\/2019\/11\/\u56fe\u72471.png\" alt=\"\" \/><\/p>\n<p>\u67e5\u770b\u5e76\u5220\u9664\u5404\u4e2a\u8282\u70b9\u7684 Manager-Zookeeper \u955c\u50cf\uff0c\u9700\u8981\u5728\u6bcf\u4e2aManager-Zookeeper \u8282\u70b9\u90fd\u6267\u884c\uff0cd7696be27642 \u662f Manager-Zookeeper container id\uff1a<\/p>\n<pre><code class=\"language-shell\">docker ps -a | grep Manager-Zookeeper\ndocker rm -vf d7696be27642<\/code><\/pre>\n<h4>6\u3001\u5220\u9664 Manager HA \u7684\u5b89\u88c5\u4fe1\u606f<\/h4>\n<p>\u8fdb\u5230 Manager \u6570\u636e\u5e93\uff0c\u5728 service \u8868\u4e2d\u628a Manager \u670d\u52a1\u5220\u9664:<\/p>\n<pre><code class=\"language-shell\"># \u767b\u5f55 Manager-db \u6570\u636e\u5e93\nmysql -h localhost -u transwarp -p$(cat \/etc\/transwarp-manager\/master\/db.properties | grep io.transwarp.manager.db.password | awk -F = '{print $2}') -S \/var\/run\/mariadb\/transwarp-manager-db.sock -D transwarp_manager\n\n# \u5220\u9664 Manager HA \u7684\u5b89\u88c5\u4fe1\u606f\nselect * from service where type=\"MANAGER\";\ndelete from service where type=\"MANAGER\";<\/code><\/pre>\n<p><img decoding=\"async\" src=\"\/wp-content\/uploads\/2019\/11\/\u56fe\u724714.png\" alt=\"\" \/><\/p>\n<h4>7\u3001\u5220\u9664 Manager HA \u76f8\u5173\u7684\u76ee\u5f55\u6587\u4ef6<\/h4>\n<p>Manager \u6b63\u5e38\u4f7f\u7528\u540e\uff0c\u5728 Manager HA \u76f8\u5173\u7684\u6bcf\u4e2a\u8282\u70b9\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\uff0c\u5220\u9664\u76ee\u5f55\u548c\u6587\u4ef6<\/p>\n<pre><code class=\"language-shell\">mountpoint -q \/transwarp\/mounts\/manager\/var\/lib\/transwarp-manager\/master\/data\/txsql && umount -lf \/transwarp\/mounts\/manager\/var\/lib\/transwarp-manager\/master\/data\/txsql\nrm -rfv \/var\/lib\/transwarp-manager\/master\/data\/txsql\n\nmountpoint -q \/transwarp\/mounts\/manager\/etc\/manager\/conf && umount -lf \/transwarp\/mounts\/manager\/etc\/manager\/conf\nrm -rfv \/etc\/manager\/conf\n\nmountpoint -q \/transwarp\/mounts\/manager\/var\/log\/manager && umount -lf \/transwarp\/mounts\/manager\/var\/log\/manager\nrm -rfv \/var\/log\/manager\n\nmountpoint -q \/transwarp\/mounts\/manager\/var\/manager\/zookeeper && umount -lf \/transwarp\/mounts\/manager\/var\/manager\/zookeeper\nrm -rfv \/var\/manager\/zookeeper<\/code><\/pre>\n<p><strong>\u81f3\u6b64\uff0cManager \u9ad8\u53ef\u7528\u901a\u8fc7\u540e\u53f0\u7684\u65b9\u5f0f\u5f7b\u5e95\u5220\u9664\u4e86<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u6982\u8981\u63cf\u8ff0 \u4e00\u4e9b\u4e0d\u89c4\u8303\u7684\u64cd\u4f5c\u5bfc\u81f4 Manager 8180 \u9875\u9762\u65e0\u6cd5\u5173\u95ed Manager \u9ad8\u53ef\u7528\uff0c\u9700\u8981\u5728\u540e\u53f0\u64cd\u4f5c ..<\/p>\n<div class=\"clear-fix\"><\/div>\n<p><a href=\"https:\/\/kbwp.transwarp.cn\/?p=1223\" title=\"read more...\">Read more<\/a><\/p>\n","protected":false},"author":14,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1223","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"acf":[],"_links":{"self":[{"href":"https:\/\/kbwp.transwarp.cn\/index.php?rest_route=\/wp\/v2\/posts\/1223","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kbwp.transwarp.cn\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kbwp.transwarp.cn\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kbwp.transwarp.cn\/index.php?rest_route=\/wp\/v2\/users\/14"}],"replies":[{"embeddable":true,"href":"https:\/\/kbwp.transwarp.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1223"}],"version-history":[{"count":4,"href":"https:\/\/kbwp.transwarp.cn\/index.php?rest_route=\/wp\/v2\/posts\/1223\/revisions"}],"predecessor-version":[{"id":6082,"href":"https:\/\/kbwp.transwarp.cn\/index.php?rest_route=\/wp\/v2\/posts\/1223\/revisions\/6082"}],"wp:attachment":[{"href":"https:\/\/kbwp.transwarp.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1223"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kbwp.transwarp.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1223"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kbwp.transwarp.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1223"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}