diff --git a/404.html b/404.html index 2eb3437b9..845d01516 100644 --- a/404.html +++ b/404.html @@ -13,13 +13,13 @@ gtag('config', 'G-SMSDTMGLTV'); - + -

404

That's a Four-Oh-Four.
+ - + diff --git a/_Footer.html b/_Footer.html index 68fafc6a9..435fd4bf9 100644 --- a/_Footer.html +++ b/_Footer.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

See something missing? Have tips to share? File an issue (opens new window), and we'll follow up as soon as possible. (If you have write permission in this repo, feel free to edit directly.)

Last Updated: 12/11/2023, 8:37:54 AM
- + diff --git a/about/index.html b/about/index.html index 95b357ea9..8e0ab60c5 100644 --- a/about/index.html +++ b/about/index.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

# Mission, Vision, Value

# Contacts

# Resources

- + diff --git a/assets/js/14.ab945981.js b/assets/js/14.1bc0fc37.js similarity index 92% rename from assets/js/14.ab945981.js rename to assets/js/14.1bc0fc37.js index 4640b66b4..5403b7f9e 100644 --- a/assets/js/14.ab945981.js +++ b/assets/js/14.1bc0fc37.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[14],{330:function(t,e,r){t.exports=r.p+"assets/img/droplet-banner.5da6d582.jpg"},431:function(t,e,r){"use strict";r.r(e);var n=r(17),s=Object(n.a)({},(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[n("p",[n("img",{attrs:{src:r(330),alt:"droplet"}})]),t._v(" "),n("h3",{attrs:{id:"水滴"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#水滴"}},[t._v("#")]),t._v(" 水滴")]),t._v(" "),n("p",[t._v("水滴,原 Venus 订单服务,是一个"),n("code",[t._v("Filecoin")]),t._v("存储订单解决方案。请在"),n("a",{attrs:{href:"https://droplet.venus-fil.io/zh/",target:"_blank",rel:"noopener noreferrer"}},[t._v("此"),n("OutboundLink")],1),t._v("了解更多关于水滴的信息。")])])}),[],!1,null,null,null);e.default=s.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[14],{330:function(t,e,r){t.exports=r.p+"assets/img/droplet-banner.5da6d582.jpg"},429:function(t,e,r){"use strict";r.r(e);var n=r(17),s=Object(n.a)({},(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[n("p",[n("img",{attrs:{src:r(330),alt:"droplet"}})]),t._v(" "),n("h3",{attrs:{id:"水滴"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#水滴"}},[t._v("#")]),t._v(" 水滴")]),t._v(" "),n("p",[t._v("水滴,原 Venus 订单服务,是一个"),n("code",[t._v("Filecoin")]),t._v("存储订单解决方案。请在"),n("a",{attrs:{href:"https://droplet.venus-fil.io/zh/",target:"_blank",rel:"noopener noreferrer"}},[t._v("此"),n("OutboundLink")],1),t._v("了解更多关于水滴的信息。")])])}),[],!1,null,null,null);e.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/15.be12770c.js b/assets/js/15.2770a953.js similarity index 85% rename from assets/js/15.be12770c.js rename to assets/js/15.2770a953.js index 39d2982ab..64c2029e9 100644 --- a/assets/js/15.be12770c.js +++ b/assets/js/15.2770a953.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[15],{331:function(t,s,e){t.exports=e.p+"assets/img/one-pager-venus.ba147919.png"},429:function(t,s,e){"use strict";e.r(s);var n=e(17),r=Object(n.a)({},(function(){var t=this.$createElement,s=this._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[s("p",[s("img",{attrs:{src:e(331),alt:"venus-cluster"}})])])}),[],!1,null,null,null);s.default=r.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[15],{331:function(t,s,e){t.exports=e.p+"assets/img/one-pager-venus.ba147919.png"},430:function(t,s,e){"use strict";e.r(s);var n=e(17),r=Object(n.a)({},(function(){var t=this.$createElement,s=this._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[s("p",[s("img",{attrs:{src:e(331),alt:"venus-cluster"}})])])}),[],!1,null,null,null);s.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/16.b28bb91b.js b/assets/js/16.c99ecbd6.js similarity index 92% rename from assets/js/16.b28bb91b.js rename to assets/js/16.c99ecbd6.js index 5dd93c448..18803b3b1 100644 --- a/assets/js/16.b28bb91b.js +++ b/assets/js/16.c99ecbd6.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[16],{332:function(t,e,n){t.exports=n.p+"assets/img/sophon-banner.6a83f125.jpg"},430:function(t,e,n){"use strict";n.r(e);var s=n(17),r=Object(s.a)({},(function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("p",[s("img",{attrs:{src:n(332),alt:"sophon"}})]),t._v(" "),s("h3",{attrs:{id:"智子"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#智子"}},[t._v("#")]),t._v(" 智子")]),t._v(" "),s("p",[t._v("智子,原 Venus 链服务,是一个 Filecoin 超级节点解决方案。请在"),s("a",{attrs:{href:"https://sophon.venus-fil.io/zh/",target:"_blank",rel:"noopener noreferrer"}},[t._v("此"),s("OutboundLink")],1),t._v("了解更多关于智子的信息。")])])}),[],!1,null,null,null);e.default=r.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[16],{332:function(t,e,n){t.exports=n.p+"assets/img/sophon-banner.6a83f125.jpg"},431:function(t,e,n){"use strict";n.r(e);var s=n(17),r=Object(s.a)({},(function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("p",[s("img",{attrs:{src:n(332),alt:"sophon"}})]),t._v(" "),s("h3",{attrs:{id:"智子"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#智子"}},[t._v("#")]),t._v(" 智子")]),t._v(" "),s("p",[t._v("智子,原 Venus 链服务,是一个 Filecoin 超级节点解决方案。请在"),s("a",{attrs:{href:"https://sophon.venus-fil.io/zh/",target:"_blank",rel:"noopener noreferrer"}},[t._v("此"),s("OutboundLink")],1),t._v("了解更多关于智子的信息。")])])}),[],!1,null,null,null);e.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/30.9a286cd3.js b/assets/js/30.f9819710.js similarity index 99% rename from assets/js/30.9a286cd3.js rename to assets/js/30.f9819710.js index 980543082..53b55a224 100644 --- a/assets/js/30.9a286cd3.js +++ b/assets/js/30.f9819710.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[30],{417:function(t,e,a){"use strict";a.r(e);var s=a(17),o=Object(s.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h2",{attrs:{id:"upgrading-to-network-version-15"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#upgrading-to-network-version-15"}},[t._v("#")]),t._v(" Upgrading to network version 15")]),t._v(" "),a("p",[t._v("Please upgrade each venus component in the order as it is presented in this document. We recommend that you go through the document before upgrading. When in doubt, please do not hesitate to reach out to us "),a("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/4688",target:"_blank",rel:"noopener noreferrer"}},[t._v("here"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("div",{staticClass:"custom-block warning"},[a("p",{staticClass:"custom-block-title"},[t._v("WARNING")]),t._v(" "),a("p",[t._v("Please make sure that your storage system is not doing any windowPost when you upgrade and leave ample time before the next upcoming windowPost")])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("If you have partitions in all deadlines, it is recommended that you build another transition environment for the upgrade.")])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("It is recommended that you backup your old binary and critical data as you go through the upgrade process.")])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("For large scale storage systems, it is recommended that running chain-co with both venus daemon and venus wrapped daemon.")])]),t._v(" "),a("ol",[a("li",[a("p",[t._v("venus-auth: "),a("code",[t._v("optional")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.3.2")]),t._v(";")])]),t._v(" "),a("li",[a("p",[t._v("venus-wallet: "),a("code",[t._v("optional")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.4.0")]),t._v(";")])]),t._v(" "),a("li",[a("p",[t._v("venus daemon: "),a("code",[t._v("mandatory")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.2.1")]),t._v(";")])])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("Checkups after upgrading:")]),t._v(" "),a("ul",[a("li",[t._v("integrity of vk files")]),t._v(" "),a("li",[t._v("see if upgrade epochs are properly set in config files")])]),t._v(" "),a("div",{staticClass:"language-toml extra-class"},[a("pre",{pre:!0,attrs:{class:"language-toml"}},[a("code",[t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# cali")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"upgradeOhSnapHeight"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("682006")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# mainnet")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"upgradeOhSnapHeight"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1594680")]),t._v("\n")])])]),a("ul",[a("li",[t._v("see if "),a("code",[t._v("maxfee")]),t._v(" under "),a("code",[t._v("mpool")]),t._v(" section is now in the format of "),a("code",[t._v("[x] Fil")])])]),t._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('"mpool": {\n\t"maxNonceGap": 100,\n \t"maxFee": "10 FIL"\n},\n')])])]),a("ul",[a("li",[t._v("see if chain synchronization is working properly")])])]),t._v(" "),a("div",{staticClass:"custom-block warning"},[a("p",{staticClass:"custom-block-title"},[t._v("WARNING")]),t._v(" "),a("p",[t._v("As a result of a mandatory network upgrade with API changes, sealer connection maybe lost during the this step of the upgrade.")])]),t._v(" "),a("ol",{attrs:{start:"4"}},[a("li",[t._v("venus wrapped deamon: "),a("code",[t._v("mandatory")]),t._v(" upgrade (if you are using "),a("code",[t._v("chain-co")]),t._v("); branch/tag "),a("code",[t._v("venus/v1.14.0")]),t._v(";")])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("Checkups after upgrading:")]),t._v(" "),a("ul",[a("li",[t._v("see if chain synchronization is working properly")]),t._v(" "),a("li",[t._v("see if connection to venus-auth is okay")])]),t._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('curl http://127.0.0.1:3453/rpc/v0 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer " -d \'{"method": "Filecoin.ChainHead","params":[], "id": 0}\'\n')])])])]),t._v(" "),a("ol",{attrs:{start:"5"}},[a("li",[t._v("chain-co: "),a("code",[t._v("mandatory")]),t._v(" upgrade (if you deployed chain-co for your HA solution); branch/tag "),a("code",[t._v("v0.1.0")]),t._v(";")])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("Checkups after upgrading:")]),t._v(" "),a("ul",[a("li",[t._v("see if two new API MpoolPending and MpoolGetNonce are working properly")])])]),t._v(" "),a("ol",{attrs:{start:"6"}},[a("li",[a("p",[t._v("venus-messager: "),a("code",[t._v("mandatory")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.4.0")]),t._v(";")])]),t._v(" "),a("li",[a("p",[t._v("venus-gateway: "),a("code",[t._v("mandatory")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.2.0")]),t._v(";")])])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("ul",[a("li",[t._v("support for both old and new API due to changes in ComputeProof's params")]),t._v(" "),a("li",[t._v("see if both v0 and v1 APIs are working properly")])])]),t._v(" "),a("ol",{attrs:{start:"8"}},[a("li",[t._v("venus-miner: "),a("code",[t._v("mandatory")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.4.0")]),t._v(";")])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("Parameter changes for ComputeProof.")])]),t._v(" "),a("ol",{attrs:{start:"9"}},[a("li",[a("p",[t._v("venus-market: "),a("code",[t._v("optional")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v2.0.0")]),t._v(";")])]),t._v(" "),a("li",[a("p",[t._v("venus-sealer: "),a("code",[t._v("mandatory")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.4.0")]),t._v(";")])])]),t._v(" "),a("p",[t._v("For more question regarding nv15 upgrade, please refer to this discussion "),a("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/4688",target:"_blank",rel:"noopener noreferrer"}},[t._v("thread"),a("OutboundLink")],1),t._v(".")])])}),[],!1,null,null,null);e.default=o.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[30],{415:function(t,e,a){"use strict";a.r(e);var s=a(17),o=Object(s.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h2",{attrs:{id:"upgrading-to-network-version-15"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#upgrading-to-network-version-15"}},[t._v("#")]),t._v(" Upgrading to network version 15")]),t._v(" "),a("p",[t._v("Please upgrade each venus component in the order as it is presented in this document. We recommend that you go through the document before upgrading. When in doubt, please do not hesitate to reach out to us "),a("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/4688",target:"_blank",rel:"noopener noreferrer"}},[t._v("here"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("div",{staticClass:"custom-block warning"},[a("p",{staticClass:"custom-block-title"},[t._v("WARNING")]),t._v(" "),a("p",[t._v("Please make sure that your storage system is not doing any windowPost when you upgrade and leave ample time before the next upcoming windowPost")])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("If you have partitions in all deadlines, it is recommended that you build another transition environment for the upgrade.")])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("It is recommended that you backup your old binary and critical data as you go through the upgrade process.")])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("For large scale storage systems, it is recommended that running chain-co with both venus daemon and venus wrapped daemon.")])]),t._v(" "),a("ol",[a("li",[a("p",[t._v("venus-auth: "),a("code",[t._v("optional")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.3.2")]),t._v(";")])]),t._v(" "),a("li",[a("p",[t._v("venus-wallet: "),a("code",[t._v("optional")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.4.0")]),t._v(";")])]),t._v(" "),a("li",[a("p",[t._v("venus daemon: "),a("code",[t._v("mandatory")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.2.1")]),t._v(";")])])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("Checkups after upgrading:")]),t._v(" "),a("ul",[a("li",[t._v("integrity of vk files")]),t._v(" "),a("li",[t._v("see if upgrade epochs are properly set in config files")])]),t._v(" "),a("div",{staticClass:"language-toml extra-class"},[a("pre",{pre:!0,attrs:{class:"language-toml"}},[a("code",[t._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# cali")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"upgradeOhSnapHeight"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("682006")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# mainnet")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"upgradeOhSnapHeight"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1594680")]),t._v("\n")])])]),a("ul",[a("li",[t._v("see if "),a("code",[t._v("maxfee")]),t._v(" under "),a("code",[t._v("mpool")]),t._v(" section is now in the format of "),a("code",[t._v("[x] Fil")])])]),t._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('"mpool": {\n\t"maxNonceGap": 100,\n \t"maxFee": "10 FIL"\n},\n')])])]),a("ul",[a("li",[t._v("see if chain synchronization is working properly")])])]),t._v(" "),a("div",{staticClass:"custom-block warning"},[a("p",{staticClass:"custom-block-title"},[t._v("WARNING")]),t._v(" "),a("p",[t._v("As a result of a mandatory network upgrade with API changes, sealer connection maybe lost during the this step of the upgrade.")])]),t._v(" "),a("ol",{attrs:{start:"4"}},[a("li",[t._v("venus wrapped deamon: "),a("code",[t._v("mandatory")]),t._v(" upgrade (if you are using "),a("code",[t._v("chain-co")]),t._v("); branch/tag "),a("code",[t._v("venus/v1.14.0")]),t._v(";")])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("Checkups after upgrading:")]),t._v(" "),a("ul",[a("li",[t._v("see if chain synchronization is working properly")]),t._v(" "),a("li",[t._v("see if connection to venus-auth is okay")])]),t._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('curl http://127.0.0.1:3453/rpc/v0 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer " -d \'{"method": "Filecoin.ChainHead","params":[], "id": 0}\'\n')])])])]),t._v(" "),a("ol",{attrs:{start:"5"}},[a("li",[t._v("chain-co: "),a("code",[t._v("mandatory")]),t._v(" upgrade (if you deployed chain-co for your HA solution); branch/tag "),a("code",[t._v("v0.1.0")]),t._v(";")])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("Checkups after upgrading:")]),t._v(" "),a("ul",[a("li",[t._v("see if two new API MpoolPending and MpoolGetNonce are working properly")])])]),t._v(" "),a("ol",{attrs:{start:"6"}},[a("li",[a("p",[t._v("venus-messager: "),a("code",[t._v("mandatory")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.4.0")]),t._v(";")])]),t._v(" "),a("li",[a("p",[t._v("venus-gateway: "),a("code",[t._v("mandatory")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.2.0")]),t._v(";")])])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("ul",[a("li",[t._v("support for both old and new API due to changes in ComputeProof's params")]),t._v(" "),a("li",[t._v("see if both v0 and v1 APIs are working properly")])])]),t._v(" "),a("ol",{attrs:{start:"8"}},[a("li",[t._v("venus-miner: "),a("code",[t._v("mandatory")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.4.0")]),t._v(";")])]),t._v(" "),a("div",{staticClass:"custom-block tip"},[a("p",{staticClass:"custom-block-title"},[t._v("TIP")]),t._v(" "),a("p",[t._v("Parameter changes for ComputeProof.")])]),t._v(" "),a("ol",{attrs:{start:"9"}},[a("li",[a("p",[t._v("venus-market: "),a("code",[t._v("optional")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v2.0.0")]),t._v(";")])]),t._v(" "),a("li",[a("p",[t._v("venus-sealer: "),a("code",[t._v("mandatory")]),t._v(" upgrade; branch/tag "),a("code",[t._v("v1.4.0")]),t._v(";")])])]),t._v(" "),a("p",[t._v("For more question regarding nv15 upgrade, please refer to this discussion "),a("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/4688",target:"_blank",rel:"noopener noreferrer"}},[t._v("thread"),a("OutboundLink")],1),t._v(".")])])}),[],!1,null,null,null);e.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/31.f5d0a700.js b/assets/js/31.cc5663af.js similarity index 99% rename from assets/js/31.f5d0a700.js rename to assets/js/31.cc5663af.js index 2eaf9d6fb..353440c6e 100644 --- a/assets/js/31.f5d0a700.js +++ b/assets/js/31.cc5663af.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[31],{415:function(e,t,a){"use strict";a.r(t);var n=a(17),s=Object(n.a)({},(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h2",{attrs:{id:"nv16-upgrade"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#nv16-upgrade"}},[e._v("#")]),e._v(" nv16 upgrade")]),e._v(" "),a("h3",{attrs:{id:"timeline"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#timeline"}},[e._v("#")]),e._v(" timeline")]),e._v(" "),a("p",[e._v("Mainnet upgrade time: 2022-07-06T14:00:00Z")]),e._v(" "),a("h3",{attrs:{id:"venus-auth"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-auth"}},[e._v("#")]),e._v(" venus-auth")]),e._v(" "),a("ul",[a("li",[e._v("tag: v1.6.0")]),e._v(" "),a("li",[e._v("New features: shared token access support for multi SPs")]),e._v(" "),a("li",[e._v("Dependency on other components: none")])]),e._v(" "),a("p",[e._v("Things to look out for:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("Add a "),a("code",[e._v("miners")]),e._v(" table to save the correspondence between "),a("code",[e._v("user")]),e._v(" and "),a("code",[e._v("miner")])])]),e._v(" "),a("li",[a("p",[e._v("Write the values ​​of the "),a("code",[e._v("name")]),e._v(" and "),a("code",[e._v("miner")]),e._v(" fields of each row of data in the "),a("code",[e._v("users")]),e._v(" table to the "),a("code",[e._v("user")]),e._v(" and "),a("code",[e._v("miner")]),e._v(" fields in the "),a("code",[e._v("miners")]),e._v(" table, check whether there is any problem with the writing, the success log: "),a("code",[e._v("migrate from:0, to:1 success;")]),e._v(" failure log: "),a("code",[e._v("migrate from store version:0 failed")])])]),e._v(" "),a("li",[a("p",[e._v("Use "),a("code",[e._v("./venus-auth user miner list ")]),e._v(" to list all miners binded to "),a("code",[e._v("user")])])]),e._v(" "),a("li",[a("p",[e._v("Use the command "),a("code",[e._v("./venus-auth user list")]),e._v(" to list all users. "),a("strong",[e._v("Note: make sure that the status of the user being used is enabled")])])])]),e._v(" "),a("h3",{attrs:{id:"venus"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[e._v("#")]),e._v(" venus")]),e._v(" "),a("ul",[a("li",[e._v("tag: v1.6.0")]),e._v(" "),a("li",[e._v("New features: Support for nv16 networks")]),e._v(" "),a("li",[e._v("Dependency on other components: none")])]),e._v(" "),a("p",[e._v("Things to look out for:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("Check whether the vk file is complete after the upgrade")])]),e._v(" "),a("li",[a("p",[e._v("Check the configuration file after the upgrade to see if the upgrade height is properly set. The default configuration file is in "),a("code",[e._v("~/.venus/config.json")]),e._v(" :")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('# cali\n"upgradeSkyrHeight": 1044660\n#mainnet\n"upgradeSkyrHeight": 1960320\n')])])])]),e._v(" "),a("li",[a("p",[e._v("After the upgrade, check whether the blocks are properly synchronized")])]),e._v(" "),a("li",[a("p",[e._v("The api version has changed, affecting the miner connection")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('# Use the curl command to test the interfaces StateGetBeaconEntry, BeaconGetEntry, the following three curl commands should return the same results\ncurl http://127.0.0.1:3453/rpc/v0 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer token" -d \'{"method": "Filecoin.BeaconGetEntry", "params":[1933610], "id": 0}\'\ncurl http://127.0.0.1:3453/rpc/v1 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer token" -d \'{"method": "Filecoin.BeaconGetEntry", "params":[1933610], "id": 0}\'\ncurl http://127.0.0.1:3453/rpc/v1 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer token" -d \'{"method": "Filecoin.StateGetBeaconEntry", "params":[1933610], "id": 0}\'\n')])])])]),e._v(" "),a("li",[a("p",[e._v("Check the mainnet v8 actors cid and make sure it is the same as the output below")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("./venus state actor-cids\n\n# The order may vary\n_manifest bafy2bzacebogjbpiemi7npzxchgcjjki3tfxon4ims55obfyfleqntteljsea\naccount bafk2bzacedudbf7fc5va57t3tmo63snmt3en4iaidv4vo3qlyacbxaa6hlx6y\nstoragemarket bafk2bzacediohrxkp2fbsl4yj4jlupjdkgsiwqb4zuezvinhdo2j5hrxco62q\nstorageminer bafk2bzacecgnynvd3tene3bvqoknuspit56canij5bpra6wl4mrq2mxxwriyu\nmultisig bafk2bzacebhldfjuy4o5v7amrhp5p2gzv2qo5275jut4adnbyp56fxkwy5fag\npaymentchannel bafk2bzacebalad3f72wyk7qyilvfjijcwubdspytnyzlrhvn73254gqis44rq\nreward bafk2bzacecwzzxlgjiavnc3545cqqil3cmq4hgpvfp2crguxy2pl5ybusfsbe\nsystem bafk2bzacedwq5uppsw7vp55zpj7jdieizirmldceehu6wvombw3ixq2tcq57w\ncron bafk2bzacecqb3eolfurehny6yp7tgmapib4ocazo5ilkopjce2c7wc2bcec62\ninit bafk2bzaceaipvjhoxmtofsnv3aj6gj5ida4afdrxa4ewku2hfipdlxpaektlw\nstoragepower bafk2bzacebjvqva6ppvysn5xpmiqcdfelwbbcxmghx5ww6hr37cgred6dyrpm\nverifiedregistry bafk2bzaceb3zbkjz3auizmoln2unmxep7dyfcmsre64vnqfhdyh7rkqfoxlw4\n")])])])]),e._v(" "),a("li",[a("p",[e._v("Mainnet can use fvm on nv15 network by setting environment variable "),a("code",[e._v("export VENUS_USE_FVM_TO_SYNC_MAINNET_V15=1")])])]),e._v(" "),a("li",[a("p",[e._v("If you do not troubleshoot the problem, the rust log level is "),a("strong",[e._v("not recommended")]),e._v(" to be set to "),a("code",[e._v("trace")]),e._v(", because more logs will be printed")])]),e._v(" "),a("li",[a("p",[e._v("After the upgrade, you can use the command "),a("code",[e._v("./venus state get-actor t01000")]),e._v(" to confirm whether the upgrade is successful")])])]),e._v(" "),a("h3",{attrs:{id:"venus-messager"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-messager"}},[e._v("#")]),e._v(" venus-messager")]),e._v(" "),a("ul",[a("li",[e._v("tag:v1.6.0")]),e._v(" "),a("li",[e._v("Affected function: Support new network version, add home directory, default in "),a("code",[e._v("~/.venus-messager")])]),e._v(" "),a("li",[e._v("Dependency on other components: none")])]),e._v(" "),a("p",[e._v("Things to look out for:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("Whether to generate the main directory "),a("code",[e._v("~/.venus-messager")]),e._v(" after the upgrade")])]),e._v(" "),a("li",[a("p",[e._v("After the upgrade, the main directory should contain "),a("code",[e._v("config.toml")]),e._v(" and "),a("code",[e._v("tipset.json")]),e._v(", "),a("code",[e._v("config.toml")]),e._v(" should be consistent with the configuration file used to start "),a("code",[e._v("messager")]),e._v(", "),a("code",[e._v("~/.venus-messager/tipset.json")]),e._v(" is copied from "),a("code",[e._v("tipset.json")]),e._v(" in the current directory")])]),e._v(" "),a("li",[a("p",[e._v("After the upgrade is successful, restarting again is to read the configuration is "),a("code",[e._v("~/.venus-messager/config.toml")])])]),e._v(" "),a("li",[a("p",[e._v("Whether the message can be received and pushed to the node normally")])])]),e._v(" "),a("h3",{attrs:{id:"venus-miner"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-miner"}},[e._v("#")]),e._v(" venus-miner")]),e._v(" "),a("ul",[a("li",[e._v("tag: v1.6.0")]),e._v(" "),a("li",[e._v("New features: Get the interface name of beacon Change from "),a("code",[e._v("BeaconGetEntry")]),e._v(" to "),a("code",[e._v("StateGetBeaconEntry")])]),e._v(" "),a("li",[e._v("Dependency on other components: venus, venus-auth, venus-gateway")])]),e._v(" "),a("p",[e._v("Things to look out for:")]),e._v(" "),a("ol",[a("li",[e._v("After the upgrade, use the commonly used command address state/list/update to verify it.")]),e._v(" "),a("li",[e._v("If you use a mysql database, check that the parent_key field in the miner_blocks table is varchar(1000)")])]),e._v(" "),a("h3",{attrs:{id:"venus-gateway"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-gateway"}},[e._v("#")]),e._v(" venus-gateway")]),e._v(" "),a("ul",[a("li",[e._v("tag: v1.6.0")]),e._v(" "),a("li",[e._v("New Feature: Fix requests without auto cleanup timeouts")])]),e._v(" "),a("p",[e._v("Things to look out for:")]),e._v(" "),a("ol",[a("li",[e._v("Is "),a("code",[e._v("wallet")]),e._v(" re-registered after the upgrade")])]),e._v(" "),a("h3",{attrs:{id:"venus-market"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-market"}},[e._v("#")]),e._v(" venus-market")]),e._v(" "),a("ul",[a("li",[e._v("tag: v2.2.0")]),e._v(" "),a("li",[e._v("New features:")])]),e._v(" "),a("p",[e._v("Things to look out for::")]),e._v(" "),a("h3",{attrs:{id:"venus-wallet"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[e._v("#")]),e._v(" venus-wallet")]),e._v(" "),a("h4",{attrs:{id:"community"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#community"}},[e._v("#")]),e._v(" Community")]),e._v(" "),a("ul",[a("li",[e._v("tag: v1.6.0")]),e._v(" "),a("li",[e._v("New features:")])]),e._v(" "),a("p",[e._v("Things to look out for::")]),e._v(" "),a("ol",[a("li",[e._v("Need to unlock wallet")]),e._v(" "),a("li",[e._v("if wallet is properly registered on the gateway")])])])}),[],!1,null,null,null);t.default=s.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[31],{416:function(e,t,a){"use strict";a.r(t);var n=a(17),s=Object(n.a)({},(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h2",{attrs:{id:"nv16-upgrade"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#nv16-upgrade"}},[e._v("#")]),e._v(" nv16 upgrade")]),e._v(" "),a("h3",{attrs:{id:"timeline"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#timeline"}},[e._v("#")]),e._v(" timeline")]),e._v(" "),a("p",[e._v("Mainnet upgrade time: 2022-07-06T14:00:00Z")]),e._v(" "),a("h3",{attrs:{id:"venus-auth"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-auth"}},[e._v("#")]),e._v(" venus-auth")]),e._v(" "),a("ul",[a("li",[e._v("tag: v1.6.0")]),e._v(" "),a("li",[e._v("New features: shared token access support for multi SPs")]),e._v(" "),a("li",[e._v("Dependency on other components: none")])]),e._v(" "),a("p",[e._v("Things to look out for:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("Add a "),a("code",[e._v("miners")]),e._v(" table to save the correspondence between "),a("code",[e._v("user")]),e._v(" and "),a("code",[e._v("miner")])])]),e._v(" "),a("li",[a("p",[e._v("Write the values ​​of the "),a("code",[e._v("name")]),e._v(" and "),a("code",[e._v("miner")]),e._v(" fields of each row of data in the "),a("code",[e._v("users")]),e._v(" table to the "),a("code",[e._v("user")]),e._v(" and "),a("code",[e._v("miner")]),e._v(" fields in the "),a("code",[e._v("miners")]),e._v(" table, check whether there is any problem with the writing, the success log: "),a("code",[e._v("migrate from:0, to:1 success;")]),e._v(" failure log: "),a("code",[e._v("migrate from store version:0 failed")])])]),e._v(" "),a("li",[a("p",[e._v("Use "),a("code",[e._v("./venus-auth user miner list ")]),e._v(" to list all miners binded to "),a("code",[e._v("user")])])]),e._v(" "),a("li",[a("p",[e._v("Use the command "),a("code",[e._v("./venus-auth user list")]),e._v(" to list all users. "),a("strong",[e._v("Note: make sure that the status of the user being used is enabled")])])])]),e._v(" "),a("h3",{attrs:{id:"venus"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[e._v("#")]),e._v(" venus")]),e._v(" "),a("ul",[a("li",[e._v("tag: v1.6.0")]),e._v(" "),a("li",[e._v("New features: Support for nv16 networks")]),e._v(" "),a("li",[e._v("Dependency on other components: none")])]),e._v(" "),a("p",[e._v("Things to look out for:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("Check whether the vk file is complete after the upgrade")])]),e._v(" "),a("li",[a("p",[e._v("Check the configuration file after the upgrade to see if the upgrade height is properly set. The default configuration file is in "),a("code",[e._v("~/.venus/config.json")]),e._v(" :")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('# cali\n"upgradeSkyrHeight": 1044660\n#mainnet\n"upgradeSkyrHeight": 1960320\n')])])])]),e._v(" "),a("li",[a("p",[e._v("After the upgrade, check whether the blocks are properly synchronized")])]),e._v(" "),a("li",[a("p",[e._v("The api version has changed, affecting the miner connection")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('# Use the curl command to test the interfaces StateGetBeaconEntry, BeaconGetEntry, the following three curl commands should return the same results\ncurl http://127.0.0.1:3453/rpc/v0 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer token" -d \'{"method": "Filecoin.BeaconGetEntry", "params":[1933610], "id": 0}\'\ncurl http://127.0.0.1:3453/rpc/v1 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer token" -d \'{"method": "Filecoin.BeaconGetEntry", "params":[1933610], "id": 0}\'\ncurl http://127.0.0.1:3453/rpc/v1 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer token" -d \'{"method": "Filecoin.StateGetBeaconEntry", "params":[1933610], "id": 0}\'\n')])])])]),e._v(" "),a("li",[a("p",[e._v("Check the mainnet v8 actors cid and make sure it is the same as the output below")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("./venus state actor-cids\n\n# The order may vary\n_manifest bafy2bzacebogjbpiemi7npzxchgcjjki3tfxon4ims55obfyfleqntteljsea\naccount bafk2bzacedudbf7fc5va57t3tmo63snmt3en4iaidv4vo3qlyacbxaa6hlx6y\nstoragemarket bafk2bzacediohrxkp2fbsl4yj4jlupjdkgsiwqb4zuezvinhdo2j5hrxco62q\nstorageminer bafk2bzacecgnynvd3tene3bvqoknuspit56canij5bpra6wl4mrq2mxxwriyu\nmultisig bafk2bzacebhldfjuy4o5v7amrhp5p2gzv2qo5275jut4adnbyp56fxkwy5fag\npaymentchannel bafk2bzacebalad3f72wyk7qyilvfjijcwubdspytnyzlrhvn73254gqis44rq\nreward bafk2bzacecwzzxlgjiavnc3545cqqil3cmq4hgpvfp2crguxy2pl5ybusfsbe\nsystem bafk2bzacedwq5uppsw7vp55zpj7jdieizirmldceehu6wvombw3ixq2tcq57w\ncron bafk2bzacecqb3eolfurehny6yp7tgmapib4ocazo5ilkopjce2c7wc2bcec62\ninit bafk2bzaceaipvjhoxmtofsnv3aj6gj5ida4afdrxa4ewku2hfipdlxpaektlw\nstoragepower bafk2bzacebjvqva6ppvysn5xpmiqcdfelwbbcxmghx5ww6hr37cgred6dyrpm\nverifiedregistry bafk2bzaceb3zbkjz3auizmoln2unmxep7dyfcmsre64vnqfhdyh7rkqfoxlw4\n")])])])]),e._v(" "),a("li",[a("p",[e._v("Mainnet can use fvm on nv15 network by setting environment variable "),a("code",[e._v("export VENUS_USE_FVM_TO_SYNC_MAINNET_V15=1")])])]),e._v(" "),a("li",[a("p",[e._v("If you do not troubleshoot the problem, the rust log level is "),a("strong",[e._v("not recommended")]),e._v(" to be set to "),a("code",[e._v("trace")]),e._v(", because more logs will be printed")])]),e._v(" "),a("li",[a("p",[e._v("After the upgrade, you can use the command "),a("code",[e._v("./venus state get-actor t01000")]),e._v(" to confirm whether the upgrade is successful")])])]),e._v(" "),a("h3",{attrs:{id:"venus-messager"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-messager"}},[e._v("#")]),e._v(" venus-messager")]),e._v(" "),a("ul",[a("li",[e._v("tag:v1.6.0")]),e._v(" "),a("li",[e._v("Affected function: Support new network version, add home directory, default in "),a("code",[e._v("~/.venus-messager")])]),e._v(" "),a("li",[e._v("Dependency on other components: none")])]),e._v(" "),a("p",[e._v("Things to look out for:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("Whether to generate the main directory "),a("code",[e._v("~/.venus-messager")]),e._v(" after the upgrade")])]),e._v(" "),a("li",[a("p",[e._v("After the upgrade, the main directory should contain "),a("code",[e._v("config.toml")]),e._v(" and "),a("code",[e._v("tipset.json")]),e._v(", "),a("code",[e._v("config.toml")]),e._v(" should be consistent with the configuration file used to start "),a("code",[e._v("messager")]),e._v(", "),a("code",[e._v("~/.venus-messager/tipset.json")]),e._v(" is copied from "),a("code",[e._v("tipset.json")]),e._v(" in the current directory")])]),e._v(" "),a("li",[a("p",[e._v("After the upgrade is successful, restarting again is to read the configuration is "),a("code",[e._v("~/.venus-messager/config.toml")])])]),e._v(" "),a("li",[a("p",[e._v("Whether the message can be received and pushed to the node normally")])])]),e._v(" "),a("h3",{attrs:{id:"venus-miner"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-miner"}},[e._v("#")]),e._v(" venus-miner")]),e._v(" "),a("ul",[a("li",[e._v("tag: v1.6.0")]),e._v(" "),a("li",[e._v("New features: Get the interface name of beacon Change from "),a("code",[e._v("BeaconGetEntry")]),e._v(" to "),a("code",[e._v("StateGetBeaconEntry")])]),e._v(" "),a("li",[e._v("Dependency on other components: venus, venus-auth, venus-gateway")])]),e._v(" "),a("p",[e._v("Things to look out for:")]),e._v(" "),a("ol",[a("li",[e._v("After the upgrade, use the commonly used command address state/list/update to verify it.")]),e._v(" "),a("li",[e._v("If you use a mysql database, check that the parent_key field in the miner_blocks table is varchar(1000)")])]),e._v(" "),a("h3",{attrs:{id:"venus-gateway"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-gateway"}},[e._v("#")]),e._v(" venus-gateway")]),e._v(" "),a("ul",[a("li",[e._v("tag: v1.6.0")]),e._v(" "),a("li",[e._v("New Feature: Fix requests without auto cleanup timeouts")])]),e._v(" "),a("p",[e._v("Things to look out for:")]),e._v(" "),a("ol",[a("li",[e._v("Is "),a("code",[e._v("wallet")]),e._v(" re-registered after the upgrade")])]),e._v(" "),a("h3",{attrs:{id:"venus-market"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-market"}},[e._v("#")]),e._v(" venus-market")]),e._v(" "),a("ul",[a("li",[e._v("tag: v2.2.0")]),e._v(" "),a("li",[e._v("New features:")])]),e._v(" "),a("p",[e._v("Things to look out for::")]),e._v(" "),a("h3",{attrs:{id:"venus-wallet"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[e._v("#")]),e._v(" venus-wallet")]),e._v(" "),a("h4",{attrs:{id:"community"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#community"}},[e._v("#")]),e._v(" Community")]),e._v(" "),a("ul",[a("li",[e._v("tag: v1.6.0")]),e._v(" "),a("li",[e._v("New features:")])]),e._v(" "),a("p",[e._v("Things to look out for::")]),e._v(" "),a("ol",[a("li",[e._v("Need to unlock wallet")]),e._v(" "),a("li",[e._v("if wallet is properly registered on the gateway")])])])}),[],!1,null,null,null);t.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/32.f4b496d6.js b/assets/js/32.b28355c3.js similarity index 99% rename from assets/js/32.f4b496d6.js rename to assets/js/32.b28355c3.js index 8ca08bd2d..2defb5b8c 100644 --- a/assets/js/32.f4b496d6.js +++ b/assets/js/32.b28355c3.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[32],{416:function(e,t,a){"use strict";a.r(t);var n=a(17),r=Object(n.a)({},(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"nv17-upgrade"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#nv17-upgrade"}},[e._v("#")]),e._v(" nv17 upgrade")]),e._v(" "),a("p",[e._v("If you are upgrading "),a("code",[e._v("venus-wallet")]),e._v(" or "),a("code",[e._v("venus-gateway")]),e._v(" from "),a("code",[e._v("v1.6.x")]),e._v(" to "),a("code",[e._v("v1.8.0")]),e._v(", please read "),a("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5265",target:"_blank",rel:"noopener noreferrer"}},[e._v("Venus component v1.7.0 usage notes"),a("OutboundLink")],1),e._v(" first and pay attention to the upgrade order of "),a("code",[e._v("venus-gateway")]),e._v(" and "),a("code",[e._v("venus-wallet")]),e._v(".")]),e._v(" "),a("h3",{attrs:{id:"timeline"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#timeline"}},[e._v("#")]),e._v(" timeline")]),e._v(" "),a("p",[e._v("Upgrade time (UTC): 2022-11-30T14:00:00Z\nUpgrade time (Beijing): 2022-11-30 22:00:00")]),e._v(" "),a("h3",{attrs:{id:"versions-of-each-component"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#versions-of-each-component"}},[e._v("#")]),e._v(" Versions of each component")]),e._v(" "),a("ul",[a("li",[a("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5386#discussioncomment-3893446",target:"_blank",rel:"noopener noreferrer"}},[e._v("calibrationnet"),a("OutboundLink")],1)]),e._v(" "),a("li",[a("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5386#discussioncomment-3893449",target:"_blank",rel:"noopener noreferrer"}},[e._v("mainnet"),a("OutboundLink")],1)])]),e._v(" "),a("h3",{attrs:{id:"venus-auth"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-auth"}},[e._v("#")]),e._v(" venus-auth")]),e._v(" "),a("p",[e._v("Affected function:")]),e._v(" "),a("p",[e._v("Dependency: none")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("ol",[a("li",[e._v("Add field "),a("code",[e._v("open_mining")]),e._v(" to "),a("code",[e._v("miners")]),e._v(" table, 0 means no block, 1 means block, default is 1")])]),e._v(" "),a("h3",{attrs:{id:"venus"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[e._v("#")]),e._v(" venus")]),e._v(" "),a("p",[e._v("Affected function: nv17 network support")]),e._v(" "),a("p",[e._v("Dependency: None")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("p",[e._v("Compilation: first "),a("code",[e._v("make dist-clean")]),e._v(" and then "),a("code",[e._v("make")]),e._v(", this can prevent problems caused by failing to upgrade "),a("code",[e._v("filecoin-ffi")]),e._v(".")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("Check whether the vk file is complete after upgrading")])]),e._v(" "),a("li",[a("p",[e._v("Check the configuration file after the upgrade, whether the upgrade height is set correctly, the configuration file is in "),a("code",[e._v("~/.venus/config.json")]),e._v(" by default:")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('#cali\n"upgradeSkyrHeight": 16800\n#mainnet\n"upgradeSkyrHeight": 2383680\n')])])])]),e._v(" "),a("li",[a("p",[e._v("After the upgrade, you need to check whether height is synchronized correctly")])]),e._v(" "),a("li",[a("p",[e._v("Check the mainnet "),a("code",[e._v("v9 actors code")]),e._v(" to make sure it is the same as the output below")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("./venus state actor-cids --network-version 17\n\n# order may vary\nNetwork Version: 17\nActor Version: 9\nActor CIDs\nreward bafk2bzacebezgbbmcm2gbcqwisus5fjvpj7hhmu5ubd37phuku3hmkfulxm2o\nsystem bafk2bzaceagvlo2jtahj7dloshrmwfulrd6e2izqev32qm46eumf754weec6c\n_manifest bafy2bzaceb6j6666h36xnhksu3ww4kxb6e25niayfgkdnifaqi6m6ooc66i6i\nstoragemarket bafk2bzacec3j7p6gklk64stax5px3xxd7hdtejaepnd4nw7s2adihde6emkcu\nmultisig bafk2bzacec4va3nmugyqjqrs3lqyr2ij67jhjia5frvx7omnh2isha6abxzya\npaymentchannel bafk2bzacebhdvjbjcgupklddfavzef4e4gnkt3xk3rbmgfmk7xhecszhfxeds\nstoragepower bafk2bzacedsetphfajgne4qy3vdrpyd6ekcmtfs2zkjut4r34cvnuoqemdrtw\nverifiedregistry bafk2bzacecf3yodlyudzukumehbuabgqljyhjt5ifiv4vetcfohnvsxzynwga\ndatacap bafk2bzacebb6uy2ys7tapekmtj7apnjg7oyj4ia5t7tlkvbmwtxwv74lb2pug\naccount bafk2bzacect2p7urje3pylrrrjy3tngn6yaih4gtzauuatf2jllk3ksgfiw2y\ncron bafk2bzacebcec3lffmos3nawm5cvwehssxeqwxixoyyfvejy7viszzsxzyu26\ninit bafk2bzacebtdq4zyuxk2fzbdkva6kc4mx75mkbfmldplfntayhbl5wkqou33i\nstorageminer bafk2bzacedyux5hlrildwutvvjdcsvjtwsoc5xnqdjl73ouiukgklekeuyfl4\n")])])])]),e._v(" "),a("li",[a("p",[e._v("If you are not troubleshooting anything, it is "),a("strong",[e._v("NOT")]),e._v(" recommended to set rust log level to "),a("code",[e._v("trace")]),e._v(" as more irrelavant logs will be printed")])]),e._v(" "),a("li",[a("p",[e._v("After the upgrade, you can use the command "),a("code",[e._v("./venus state get-actor t01000")]),e._v(" to confirm whether the upgrade is successful")])])]),e._v(" "),a("h3",{attrs:{id:"venus-messager"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-messager"}},[e._v("#")]),e._v(" venus-messager")]),e._v(" "),a("p",[e._v("Affected function:")]),e._v(" "),a("ol",[a("li",[e._v("Increase the control of basefee, you can set the basefee separately for an address, when the basefee on the chain is higher than the basefee limit, the message will not be pushed out")])]),e._v(" "),a("p",[e._v("Dependency upgrade components:")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("ol",[a("li",[e._v("After the upgrade, observe whether the message can be on-chained normally")])]),e._v(" "),a("h3",{attrs:{id:"venus-miner"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-miner"}},[e._v("#")]),e._v(" venus-miner")]),e._v(" "),a("p",[e._v("Affected function:")]),e._v(" "),a("p",[e._v("Dependency upgrade components:")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("If you are upgrading from "),a("code",[e._v("1.7.*")]),e._v(" to "),a("code",[e._v("v1.8.0")]),e._v(", it will automatically migrate configuration files. Whereas if you are upgrading from "),a("code",[e._v("1.6.*")]),e._v(" to "),a("code",[e._v("v1.8.0")]),e._v(", it is required to have a reinitialization of "),a("code",[e._v("repo")]),e._v(" (init). Please checkout this "),a("a",{attrs:{href:"https://github.com/filecoin-project/venus-miner/blob/master/docs/zh/CHANGELOG.md#%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9-2",target:"_blank",rel:"noopener noreferrer"}},[e._v("guide"),a("OutboundLink")],1),e._v(" to learn more.")])]),e._v(" "),a("li",[a("p",[e._v("Check if blocks can be produced normally after the upgrade.")])])]),e._v(" "),a("h3",{attrs:{id:"venus-gateway"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-gateway"}},[e._v("#")]),e._v(" venus-gateway")]),e._v(" "),a("p",[e._v("Affected function:")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("p",[e._v("Compile: first "),a("code",[e._v("make dist-clean")]),e._v(" and then "),a("code",[e._v("make")])]),e._v(" "),a("ol",[a("li",[e._v("Check wallet after upgrade: "),a("code",[e._v("./venus-gateway wallet list")])]),e._v(" "),a("li",[e._v("Check miners after upgrade: "),a("code",[e._v("./venus-gateway miner list")])])]),e._v(" "),a("h3",{attrs:{id:"venus-market"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-market"}},[e._v("#")]),e._v(" venus-market")]),e._v(" "),a("p",[e._v("Affected function:")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("p",[e._v("Compile: first "),a("code",[e._v("make dist-clean")]),e._v(" and then "),a("code",[e._v("make")])]),e._v(" "),a("h3",{attrs:{id:"venus-wallet"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[e._v("#")]),e._v(" venus-wallet")]),e._v(" "),a("p",[e._v("Affect function:")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("ol",[a("li",[e._v("Make sure to unlock the wallet after startup")]),e._v(" "),a("li",[e._v("Check whether the wallet is registered on the gateway")])])])}),[],!1,null,null,null);t.default=r.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[32],{418:function(e,t,a){"use strict";a.r(t);var n=a(17),r=Object(n.a)({},(function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h1",{attrs:{id:"nv17-upgrade"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#nv17-upgrade"}},[e._v("#")]),e._v(" nv17 upgrade")]),e._v(" "),a("p",[e._v("If you are upgrading "),a("code",[e._v("venus-wallet")]),e._v(" or "),a("code",[e._v("venus-gateway")]),e._v(" from "),a("code",[e._v("v1.6.x")]),e._v(" to "),a("code",[e._v("v1.8.0")]),e._v(", please read "),a("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5265",target:"_blank",rel:"noopener noreferrer"}},[e._v("Venus component v1.7.0 usage notes"),a("OutboundLink")],1),e._v(" first and pay attention to the upgrade order of "),a("code",[e._v("venus-gateway")]),e._v(" and "),a("code",[e._v("venus-wallet")]),e._v(".")]),e._v(" "),a("h3",{attrs:{id:"timeline"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#timeline"}},[e._v("#")]),e._v(" timeline")]),e._v(" "),a("p",[e._v("Upgrade time (UTC): 2022-11-30T14:00:00Z\nUpgrade time (Beijing): 2022-11-30 22:00:00")]),e._v(" "),a("h3",{attrs:{id:"versions-of-each-component"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#versions-of-each-component"}},[e._v("#")]),e._v(" Versions of each component")]),e._v(" "),a("ul",[a("li",[a("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5386#discussioncomment-3893446",target:"_blank",rel:"noopener noreferrer"}},[e._v("calibrationnet"),a("OutboundLink")],1)]),e._v(" "),a("li",[a("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5386#discussioncomment-3893449",target:"_blank",rel:"noopener noreferrer"}},[e._v("mainnet"),a("OutboundLink")],1)])]),e._v(" "),a("h3",{attrs:{id:"venus-auth"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-auth"}},[e._v("#")]),e._v(" venus-auth")]),e._v(" "),a("p",[e._v("Affected function:")]),e._v(" "),a("p",[e._v("Dependency: none")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("ol",[a("li",[e._v("Add field "),a("code",[e._v("open_mining")]),e._v(" to "),a("code",[e._v("miners")]),e._v(" table, 0 means no block, 1 means block, default is 1")])]),e._v(" "),a("h3",{attrs:{id:"venus"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[e._v("#")]),e._v(" venus")]),e._v(" "),a("p",[e._v("Affected function: nv17 network support")]),e._v(" "),a("p",[e._v("Dependency: None")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("p",[e._v("Compilation: first "),a("code",[e._v("make dist-clean")]),e._v(" and then "),a("code",[e._v("make")]),e._v(", this can prevent problems caused by failing to upgrade "),a("code",[e._v("filecoin-ffi")]),e._v(".")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("Check whether the vk file is complete after upgrading")])]),e._v(" "),a("li",[a("p",[e._v("Check the configuration file after the upgrade, whether the upgrade height is set correctly, the configuration file is in "),a("code",[e._v("~/.venus/config.json")]),e._v(" by default:")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('#cali\n"upgradeSkyrHeight": 16800\n#mainnet\n"upgradeSkyrHeight": 2383680\n')])])])]),e._v(" "),a("li",[a("p",[e._v("After the upgrade, you need to check whether height is synchronized correctly")])]),e._v(" "),a("li",[a("p",[e._v("Check the mainnet "),a("code",[e._v("v9 actors code")]),e._v(" to make sure it is the same as the output below")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("./venus state actor-cids --network-version 17\n\n# order may vary\nNetwork Version: 17\nActor Version: 9\nActor CIDs\nreward bafk2bzacebezgbbmcm2gbcqwisus5fjvpj7hhmu5ubd37phuku3hmkfulxm2o\nsystem bafk2bzaceagvlo2jtahj7dloshrmwfulrd6e2izqev32qm46eumf754weec6c\n_manifest bafy2bzaceb6j6666h36xnhksu3ww4kxb6e25niayfgkdnifaqi6m6ooc66i6i\nstoragemarket bafk2bzacec3j7p6gklk64stax5px3xxd7hdtejaepnd4nw7s2adihde6emkcu\nmultisig bafk2bzacec4va3nmugyqjqrs3lqyr2ij67jhjia5frvx7omnh2isha6abxzya\npaymentchannel bafk2bzacebhdvjbjcgupklddfavzef4e4gnkt3xk3rbmgfmk7xhecszhfxeds\nstoragepower bafk2bzacedsetphfajgne4qy3vdrpyd6ekcmtfs2zkjut4r34cvnuoqemdrtw\nverifiedregistry bafk2bzacecf3yodlyudzukumehbuabgqljyhjt5ifiv4vetcfohnvsxzynwga\ndatacap bafk2bzacebb6uy2ys7tapekmtj7apnjg7oyj4ia5t7tlkvbmwtxwv74lb2pug\naccount bafk2bzacect2p7urje3pylrrrjy3tngn6yaih4gtzauuatf2jllk3ksgfiw2y\ncron bafk2bzacebcec3lffmos3nawm5cvwehssxeqwxixoyyfvejy7viszzsxzyu26\ninit bafk2bzacebtdq4zyuxk2fzbdkva6kc4mx75mkbfmldplfntayhbl5wkqou33i\nstorageminer bafk2bzacedyux5hlrildwutvvjdcsvjtwsoc5xnqdjl73ouiukgklekeuyfl4\n")])])])]),e._v(" "),a("li",[a("p",[e._v("If you are not troubleshooting anything, it is "),a("strong",[e._v("NOT")]),e._v(" recommended to set rust log level to "),a("code",[e._v("trace")]),e._v(" as more irrelavant logs will be printed")])]),e._v(" "),a("li",[a("p",[e._v("After the upgrade, you can use the command "),a("code",[e._v("./venus state get-actor t01000")]),e._v(" to confirm whether the upgrade is successful")])])]),e._v(" "),a("h3",{attrs:{id:"venus-messager"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-messager"}},[e._v("#")]),e._v(" venus-messager")]),e._v(" "),a("p",[e._v("Affected function:")]),e._v(" "),a("ol",[a("li",[e._v("Increase the control of basefee, you can set the basefee separately for an address, when the basefee on the chain is higher than the basefee limit, the message will not be pushed out")])]),e._v(" "),a("p",[e._v("Dependency upgrade components:")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("ol",[a("li",[e._v("After the upgrade, observe whether the message can be on-chained normally")])]),e._v(" "),a("h3",{attrs:{id:"venus-miner"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-miner"}},[e._v("#")]),e._v(" venus-miner")]),e._v(" "),a("p",[e._v("Affected function:")]),e._v(" "),a("p",[e._v("Dependency upgrade components:")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("If you are upgrading from "),a("code",[e._v("1.7.*")]),e._v(" to "),a("code",[e._v("v1.8.0")]),e._v(", it will automatically migrate configuration files. Whereas if you are upgrading from "),a("code",[e._v("1.6.*")]),e._v(" to "),a("code",[e._v("v1.8.0")]),e._v(", it is required to have a reinitialization of "),a("code",[e._v("repo")]),e._v(" (init). Please checkout this "),a("a",{attrs:{href:"https://github.com/filecoin-project/venus-miner/blob/master/docs/zh/CHANGELOG.md#%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9-2",target:"_blank",rel:"noopener noreferrer"}},[e._v("guide"),a("OutboundLink")],1),e._v(" to learn more.")])]),e._v(" "),a("li",[a("p",[e._v("Check if blocks can be produced normally after the upgrade.")])])]),e._v(" "),a("h3",{attrs:{id:"venus-gateway"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-gateway"}},[e._v("#")]),e._v(" venus-gateway")]),e._v(" "),a("p",[e._v("Affected function:")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("p",[e._v("Compile: first "),a("code",[e._v("make dist-clean")]),e._v(" and then "),a("code",[e._v("make")])]),e._v(" "),a("ol",[a("li",[e._v("Check wallet after upgrade: "),a("code",[e._v("./venus-gateway wallet list")])]),e._v(" "),a("li",[e._v("Check miners after upgrade: "),a("code",[e._v("./venus-gateway miner list")])])]),e._v(" "),a("h3",{attrs:{id:"venus-market"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-market"}},[e._v("#")]),e._v(" venus-market")]),e._v(" "),a("p",[e._v("Affected function:")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("p",[e._v("Compile: first "),a("code",[e._v("make dist-clean")]),e._v(" and then "),a("code",[e._v("make")])]),e._v(" "),a("h3",{attrs:{id:"venus-wallet"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[e._v("#")]),e._v(" venus-wallet")]),e._v(" "),a("p",[e._v("Affect function:")]),e._v(" "),a("p",[e._v("Precautions:")]),e._v(" "),a("ol",[a("li",[e._v("Make sure to unlock the wallet after startup")]),e._v(" "),a("li",[e._v("Check whether the wallet is registered on the gateway")])])])}),[],!1,null,null,null);t.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/33.744bc253.js b/assets/js/33.cc87c1c3.js similarity index 99% rename from assets/js/33.744bc253.js rename to assets/js/33.cc87c1c3.js index bbd757c28..a27e3f2e6 100644 --- a/assets/js/33.744bc253.js +++ b/assets/js/33.cc87c1c3.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[33],{418:function(e,a,t){"use strict";t.r(a);var s=t(17),r=Object(s.a)({},(function(){var e=this,a=e.$createElement,t=e._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"nv18-upgrade-guide"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#nv18-upgrade-guide"}},[e._v("#")]),e._v(" nv18 Upgrade Guide")]),e._v(" "),t("p",[e._v("If you are upgrading chain service components from "),t("code",[e._v("v1.8.x")]),e._v(" to "),t("code",[e._v("v1.10.0")]),e._v(", please read "),t("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5531",target:"_blank",rel:"noopener noreferrer"}},[e._v("venus chain-service v1.9.* & venus-market v2.5.* upgrade list / 链服务 v1.9.*和订单服务 v2.5.*升级清单"),t("OutboundLink")],1),e._v(" first and pay special attention to the upgrade of "),t("code",[e._v("venus-auth")]),e._v(" and "),t("code",[e._v("venus-market")]),e._v(". Before upgrading "),t("code",[e._v("venus-auth")]),e._v(", a user account needs to be created for each miner. Also startup CLI and configurations of "),t("code",[e._v("venus-market")]),e._v(" major breaking changes made to it.")]),e._v(" "),t("h2",{attrs:{id:"about-nv18-upgrade"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#about-nv18-upgrade"}},[e._v("#")]),e._v(" About nv18 upgrade")]),e._v(" "),t("p",[e._v("We storngly encourage you to test out the upgrade in calibration before mainnet.")]),e._v(" "),t("h3",{attrs:{id:"upgrade-timeline"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#upgrade-timeline"}},[e._v("#")]),e._v(" Upgrade Timeline")]),e._v(" "),t("p",[e._v("Upgrade UTC time: 2023-03-14T15:14:00Z, which is 2023-03-14 23:14:00 in Beijing time")]),e._v(" "),t("h3",{attrs:{id:"nv18-compatible-versions"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#nv18-compatible-versions"}},[e._v("#")]),e._v(" nv18 compatible versions")]),e._v(" "),t("ul",[t("li",[t("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5649#discussioncomment-4652920",target:"_blank",rel:"noopener noreferrer"}},[e._v("calibrationnet"),t("OutboundLink")],1)]),e._v(" "),t("li",[t("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5649#discussioncomment-4652933",target:"_blank",rel:"noopener noreferrer"}},[e._v("mainnet"),t("OutboundLink")],1)])]),e._v(" "),t("h2",{attrs:{id:"venus"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[e._v("#")]),e._v(" venus")]),e._v(" "),t("p",[e._v("Feature: support nv18 network")]),e._v(" "),t("p",[e._v("Dependency: None")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[t("p",[e._v("Compile: make sure to first "),t("code",[e._v("make dist-clean")]),e._v(" and then "),t("code",[e._v("make")]),e._v(". This can prevent problems caused by failing to upgrade "),t("code",[e._v("filecoin-ffi")]),e._v(" normally")])]),e._v(" "),t("li",[t("p",[e._v("Check whether the vk file is complete after upgrading")])]),e._v(" "),t("li",[t("p",[e._v("After upgrading, check the configuration file. And see whether "),t("code",[e._v("AllowableClockDriftSecs")]),e._v(", "),t("code",[e._v("UpgradeHyggeHeight")]),e._v(" and "),t("code",[e._v("UpgradeHyggeHeight")]),e._v(" are normal in the log:")]),e._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("#cali\nAllowableClockDriftSecs: 1\nEip155ChainID:314159\nUpgradeHyggeHeight: 322354\n#mainnet\nAllowableClockDriftSecs: 1\nEip155ChainID:314\nUpgradeHyggeHeight: 2683348\n")])])])]),e._v(" "),t("li",[t("p",[e._v("After upgrading, check the status of block synchronization")])]),e._v(" "),t("li",[t("p",[e._v("Check the mainnet v10 actors CID and make sure it is the same as the output below...")]),e._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("./venus state actor-cids --network-version 18\n\n# order may vary\nNetwork Version: 18\nActor Version: 10\nActor CIDs\ndatacap bafk2bzacealj5uk7wixhvk7l5tnredtelralwnceafqq34nb2lbylhtuyo64u\nevm bafk2bzaceahmzdxhqsm7cu2mexusjp6frm7r4kdesvti3etv5evfqboos2j4g\ninit bafk2bzaced2f5rhir3hbpqbz5ght7ohv2kgj42g5ykxrypuo2opxsup3ykwl6\naccount bafk2bzaceampw4romta75hyz5p4cqriypmpbgnkxncgxgqn6zptv5lsp2w2bo\nethaccount bafk2bzaceaqoc5zakbhjxn3jljc4lxnthllzunhdor7sxhwgmskvc6drqc3fa\nmultisig bafk2bzaceduf3hayh63jnl4z2knxv7cnrdenoubni22fxersc4octlwpxpmy4\npaymentchannel bafk2bzaceartlg4mrbwgzcwric6mtvyawpbgx2xclo2vj27nna57nxynf3pgc\nreward bafk2bzacebnhtaejfjtzymyfmbdrfmo7vgj3zsof6zlucbmkhrvcuotw5dxpq\nstoragemarket bafk2bzaceclejwjtpu2dhw3qbx6ow7b4pmhwa7ocrbbiqwp36sq5yeg6jz2bc\nstorageminer bafk2bzaced4h7noksockro7glnssz2jnmo2rpzd7dvnmfs4p24zx3h6gtx47s\nverifiedregistry bafk2bzacedfel6edzqpe5oujno7fog4i526go4dtcs6vwrdtbpy2xq6htvcg6\neam bafk2bzacedrpm5gbleh4xkyo2jvs7p5g6f34soa6dpv7ashcdgy676snsum6g\nplaceholder bafk2bzacedfvut2myeleyq67fljcrw4kkmn5pb5dpyozovj7jpoez5irnc3ro\nstoragepower bafk2bzacec4ay4crzo73ypmh7o3fjendhbqrxake46bprabw67fvwjz5q6ixq\nsystem bafk2bzacedakk5nofebyup4m7nvx6djksfwhnxzrfuq4oyemhpl4lllaikr64\ncron bafk2bzacedcbtsifegiu432m5tysjzkxkmoczxscb6hqpmrr6img7xzdbbs2g\n")])])])]),e._v(" "),t("li",[t("p",[e._v("When not debugging, it is "),t("strong",[e._v("not recommended")]),e._v(" is set the rust log level to "),t("code",[e._v("trace")]),e._v(" as too much logs may be printed")])]),e._v(" "),t("li",[t("p",[e._v("After upgrading, you can use the command "),t("code",[e._v("./venus state get-actor t01000")]),e._v(" to confirm whether the upgrade is successful")])]),e._v(" "),t("li",[t("p",[e._v("Actor Migration")]),e._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("The pre-migration height is 60 epoch before the upgrade epoch of 2683288\nPre-migration start: STARTING pre-migration end: COMPLETED pre-migration\nmigration started: STARTING migration ended: COMPLETED migration\n")])])])]),e._v(" "),t("li",[t("p",[e._v("Configuration changes")]),e._v(" "),t("div",{staticClass:"language-json extra-class"},[t("pre",{pre:!0,attrs:{class:"language-json"}},[t("code",[e._v("# Added fevm related configuration"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v(" where the enableEthRPC field is used to control whether to enable ETH RPC"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v(" the default is "),t("span",{pre:!0,attrs:{class:"token boolean"}},[e._v("false")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"fevm"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"enableEthRPC"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[e._v("false")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"ethTxHashMappingLifetimeDays"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("0")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"event"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"enableRealTimeFilterAPI"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[e._v("false")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"enableHistoricFilterAPI"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[e._v("false")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"filterTTL"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"24h0m0s"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"maxFilters"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("100")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"maxFilterResults"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("10000")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"maxFilterHeightRange"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("2880")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"databasePath"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('""')]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n\n# Added allowableClockDriftSecs field"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v(" default is "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("1")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"parameters"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"allowableClockDriftSecs"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("1")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n")])])])])]),e._v(" "),t("h2",{attrs:{id:"venus-auth"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-auth"}},[e._v("#")]),e._v(" venus-auth")]),e._v(" "),t("p",[e._v("Feature:")]),e._v(" "),t("p",[e._v("Dependency: none")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[e._v("Check whether the command line can be used correctly")])]),e._v(" "),t("h2",{attrs:{id:"venus-messager"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-messager"}},[e._v("#")]),e._v(" venus-messager")]),e._v(" "),t("p",[e._v("Function:")]),e._v(" "),t("ol",[t("li",[e._v("Added additional interface authentication")])]),e._v(" "),t("p",[e._v("Dependency:")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[t("p",[e._v("Observe if messages can be received normally after upgrading")])]),e._v(" "),t("li",[t("p",[e._v("After upgrading, observe whether the message can be on-chained properly")])]),e._v(" "),t("li",[t("p",[t("code",[e._v("ReplacedMsg")]),e._v(" is renamed to "),t("code",[e._v("NonceConflictMsg")])])])]),e._v(" "),t("h2",{attrs:{id:"venus-miner"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-miner"}},[e._v("#")]),e._v(" venus-miner")]),e._v(" "),t("p",[e._v("Feature:")]),e._v(" "),t("p",[e._v("Dependency:")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[e._v("Check if block be produced properly after upgrading")])]),e._v(" "),t("h2",{attrs:{id:"venus-gateway"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-gateway"}},[e._v("#")]),e._v(" venus-gateway")]),e._v(" "),t("p",[e._v("Feature:")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[t("p",[e._v("Compile: first "),t("code",[e._v("make dist-clean")]),e._v(" and then "),t("code",[e._v("make")])])]),e._v(" "),t("li",[t("p",[e._v("Check remote wallet after upgrading: "),t("code",[e._v("./venus-gateway wallet list")])])]),e._v(" "),t("li",[t("p",[e._v("Check miners after upgrading: "),t("code",[e._v("./venus-gateway miner list")])])])]),e._v(" "),t("h2",{attrs:{id:"venus-market"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-market"}},[e._v("#")]),e._v(" venus-market")]),e._v(" "),t("p",[e._v("Feature:")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[e._v("Compile: first "),t("code",[e._v("make dist-clean")]),e._v(" and then "),t("code",[e._v("make")])])]),e._v(" "),t("h2",{attrs:{id:"venus-wallet"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[e._v("#")]),e._v(" venus-wallet")]),e._v(" "),t("p",[e._v("Feature:")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[t("p",[e._v("Need to unlock the wallet after restart")])]),e._v(" "),t("li",[t("p",[e._v("Check if wallet is properly registered to the gateway")])])]),e._v(" "),t("h2",{attrs:{id:"venus-sector-manager"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-sector-manager"}},[e._v("#")]),e._v(" venus-sector-manager")]),e._v(" "),t("p",[e._v("Compile: first "),t("code",[e._v("make dist-clean")]),e._v(" and then "),t("code",[e._v("make")])])])}),[],!1,null,null,null);a.default=r.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[33],{417:function(e,a,t){"use strict";t.r(a);var s=t(17),r=Object(s.a)({},(function(){var e=this,a=e.$createElement,t=e._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"nv18-upgrade-guide"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#nv18-upgrade-guide"}},[e._v("#")]),e._v(" nv18 Upgrade Guide")]),e._v(" "),t("p",[e._v("If you are upgrading chain service components from "),t("code",[e._v("v1.8.x")]),e._v(" to "),t("code",[e._v("v1.10.0")]),e._v(", please read "),t("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5531",target:"_blank",rel:"noopener noreferrer"}},[e._v("venus chain-service v1.9.* & venus-market v2.5.* upgrade list / 链服务 v1.9.*和订单服务 v2.5.*升级清单"),t("OutboundLink")],1),e._v(" first and pay special attention to the upgrade of "),t("code",[e._v("venus-auth")]),e._v(" and "),t("code",[e._v("venus-market")]),e._v(". Before upgrading "),t("code",[e._v("venus-auth")]),e._v(", a user account needs to be created for each miner. Also startup CLI and configurations of "),t("code",[e._v("venus-market")]),e._v(" major breaking changes made to it.")]),e._v(" "),t("h2",{attrs:{id:"about-nv18-upgrade"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#about-nv18-upgrade"}},[e._v("#")]),e._v(" About nv18 upgrade")]),e._v(" "),t("p",[e._v("We storngly encourage you to test out the upgrade in calibration before mainnet.")]),e._v(" "),t("h3",{attrs:{id:"upgrade-timeline"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#upgrade-timeline"}},[e._v("#")]),e._v(" Upgrade Timeline")]),e._v(" "),t("p",[e._v("Upgrade UTC time: 2023-03-14T15:14:00Z, which is 2023-03-14 23:14:00 in Beijing time")]),e._v(" "),t("h3",{attrs:{id:"nv18-compatible-versions"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#nv18-compatible-versions"}},[e._v("#")]),e._v(" nv18 compatible versions")]),e._v(" "),t("ul",[t("li",[t("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5649#discussioncomment-4652920",target:"_blank",rel:"noopener noreferrer"}},[e._v("calibrationnet"),t("OutboundLink")],1)]),e._v(" "),t("li",[t("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5649#discussioncomment-4652933",target:"_blank",rel:"noopener noreferrer"}},[e._v("mainnet"),t("OutboundLink")],1)])]),e._v(" "),t("h2",{attrs:{id:"venus"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[e._v("#")]),e._v(" venus")]),e._v(" "),t("p",[e._v("Feature: support nv18 network")]),e._v(" "),t("p",[e._v("Dependency: None")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[t("p",[e._v("Compile: make sure to first "),t("code",[e._v("make dist-clean")]),e._v(" and then "),t("code",[e._v("make")]),e._v(". This can prevent problems caused by failing to upgrade "),t("code",[e._v("filecoin-ffi")]),e._v(" normally")])]),e._v(" "),t("li",[t("p",[e._v("Check whether the vk file is complete after upgrading")])]),e._v(" "),t("li",[t("p",[e._v("After upgrading, check the configuration file. And see whether "),t("code",[e._v("AllowableClockDriftSecs")]),e._v(", "),t("code",[e._v("UpgradeHyggeHeight")]),e._v(" and "),t("code",[e._v("UpgradeHyggeHeight")]),e._v(" are normal in the log:")]),e._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("#cali\nAllowableClockDriftSecs: 1\nEip155ChainID:314159\nUpgradeHyggeHeight: 322354\n#mainnet\nAllowableClockDriftSecs: 1\nEip155ChainID:314\nUpgradeHyggeHeight: 2683348\n")])])])]),e._v(" "),t("li",[t("p",[e._v("After upgrading, check the status of block synchronization")])]),e._v(" "),t("li",[t("p",[e._v("Check the mainnet v10 actors CID and make sure it is the same as the output below...")]),e._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("./venus state actor-cids --network-version 18\n\n# order may vary\nNetwork Version: 18\nActor Version: 10\nActor CIDs\ndatacap bafk2bzacealj5uk7wixhvk7l5tnredtelralwnceafqq34nb2lbylhtuyo64u\nevm bafk2bzaceahmzdxhqsm7cu2mexusjp6frm7r4kdesvti3etv5evfqboos2j4g\ninit bafk2bzaced2f5rhir3hbpqbz5ght7ohv2kgj42g5ykxrypuo2opxsup3ykwl6\naccount bafk2bzaceampw4romta75hyz5p4cqriypmpbgnkxncgxgqn6zptv5lsp2w2bo\nethaccount bafk2bzaceaqoc5zakbhjxn3jljc4lxnthllzunhdor7sxhwgmskvc6drqc3fa\nmultisig bafk2bzaceduf3hayh63jnl4z2knxv7cnrdenoubni22fxersc4octlwpxpmy4\npaymentchannel bafk2bzaceartlg4mrbwgzcwric6mtvyawpbgx2xclo2vj27nna57nxynf3pgc\nreward bafk2bzacebnhtaejfjtzymyfmbdrfmo7vgj3zsof6zlucbmkhrvcuotw5dxpq\nstoragemarket bafk2bzaceclejwjtpu2dhw3qbx6ow7b4pmhwa7ocrbbiqwp36sq5yeg6jz2bc\nstorageminer bafk2bzaced4h7noksockro7glnssz2jnmo2rpzd7dvnmfs4p24zx3h6gtx47s\nverifiedregistry bafk2bzacedfel6edzqpe5oujno7fog4i526go4dtcs6vwrdtbpy2xq6htvcg6\neam bafk2bzacedrpm5gbleh4xkyo2jvs7p5g6f34soa6dpv7ashcdgy676snsum6g\nplaceholder bafk2bzacedfvut2myeleyq67fljcrw4kkmn5pb5dpyozovj7jpoez5irnc3ro\nstoragepower bafk2bzacec4ay4crzo73ypmh7o3fjendhbqrxake46bprabw67fvwjz5q6ixq\nsystem bafk2bzacedakk5nofebyup4m7nvx6djksfwhnxzrfuq4oyemhpl4lllaikr64\ncron bafk2bzacedcbtsifegiu432m5tysjzkxkmoczxscb6hqpmrr6img7xzdbbs2g\n")])])])]),e._v(" "),t("li",[t("p",[e._v("When not debugging, it is "),t("strong",[e._v("not recommended")]),e._v(" is set the rust log level to "),t("code",[e._v("trace")]),e._v(" as too much logs may be printed")])]),e._v(" "),t("li",[t("p",[e._v("After upgrading, you can use the command "),t("code",[e._v("./venus state get-actor t01000")]),e._v(" to confirm whether the upgrade is successful")])]),e._v(" "),t("li",[t("p",[e._v("Actor Migration")]),e._v(" "),t("div",{staticClass:"language- extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("The pre-migration height is 60 epoch before the upgrade epoch of 2683288\nPre-migration start: STARTING pre-migration end: COMPLETED pre-migration\nmigration started: STARTING migration ended: COMPLETED migration\n")])])])]),e._v(" "),t("li",[t("p",[e._v("Configuration changes")]),e._v(" "),t("div",{staticClass:"language-json extra-class"},[t("pre",{pre:!0,attrs:{class:"language-json"}},[t("code",[e._v("# Added fevm related configuration"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v(" where the enableEthRPC field is used to control whether to enable ETH RPC"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v(" the default is "),t("span",{pre:!0,attrs:{class:"token boolean"}},[e._v("false")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"fevm"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"enableEthRPC"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[e._v("false")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"ethTxHashMappingLifetimeDays"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("0")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"event"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"enableRealTimeFilterAPI"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[e._v("false")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"enableHistoricFilterAPI"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[e._v("false")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"filterTTL"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"24h0m0s"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"maxFilters"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("100")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"maxFilterResults"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("10000")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"maxFilterHeightRange"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("2880")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"databasePath"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('""')]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n\n# Added allowableClockDriftSecs field"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v(" default is "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("1")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"parameters"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"allowableClockDriftSecs"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("1")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),e._v("\n")])])])])]),e._v(" "),t("h2",{attrs:{id:"venus-auth"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-auth"}},[e._v("#")]),e._v(" venus-auth")]),e._v(" "),t("p",[e._v("Feature:")]),e._v(" "),t("p",[e._v("Dependency: none")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[e._v("Check whether the command line can be used correctly")])]),e._v(" "),t("h2",{attrs:{id:"venus-messager"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-messager"}},[e._v("#")]),e._v(" venus-messager")]),e._v(" "),t("p",[e._v("Function:")]),e._v(" "),t("ol",[t("li",[e._v("Added additional interface authentication")])]),e._v(" "),t("p",[e._v("Dependency:")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[t("p",[e._v("Observe if messages can be received normally after upgrading")])]),e._v(" "),t("li",[t("p",[e._v("After upgrading, observe whether the message can be on-chained properly")])]),e._v(" "),t("li",[t("p",[t("code",[e._v("ReplacedMsg")]),e._v(" is renamed to "),t("code",[e._v("NonceConflictMsg")])])])]),e._v(" "),t("h2",{attrs:{id:"venus-miner"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-miner"}},[e._v("#")]),e._v(" venus-miner")]),e._v(" "),t("p",[e._v("Feature:")]),e._v(" "),t("p",[e._v("Dependency:")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[e._v("Check if block be produced properly after upgrading")])]),e._v(" "),t("h2",{attrs:{id:"venus-gateway"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-gateway"}},[e._v("#")]),e._v(" venus-gateway")]),e._v(" "),t("p",[e._v("Feature:")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[t("p",[e._v("Compile: first "),t("code",[e._v("make dist-clean")]),e._v(" and then "),t("code",[e._v("make")])])]),e._v(" "),t("li",[t("p",[e._v("Check remote wallet after upgrading: "),t("code",[e._v("./venus-gateway wallet list")])])]),e._v(" "),t("li",[t("p",[e._v("Check miners after upgrading: "),t("code",[e._v("./venus-gateway miner list")])])])]),e._v(" "),t("h2",{attrs:{id:"venus-market"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-market"}},[e._v("#")]),e._v(" venus-market")]),e._v(" "),t("p",[e._v("Feature:")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[e._v("Compile: first "),t("code",[e._v("make dist-clean")]),e._v(" and then "),t("code",[e._v("make")])])]),e._v(" "),t("h2",{attrs:{id:"venus-wallet"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[e._v("#")]),e._v(" venus-wallet")]),e._v(" "),t("p",[e._v("Feature:")]),e._v(" "),t("p",[e._v("Precautions:")]),e._v(" "),t("ol",[t("li",[t("p",[e._v("Need to unlock the wallet after restart")])]),e._v(" "),t("li",[t("p",[e._v("Check if wallet is properly registered to the gateway")])])]),e._v(" "),t("h2",{attrs:{id:"venus-sector-manager"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#venus-sector-manager"}},[e._v("#")]),e._v(" venus-sector-manager")]),e._v(" "),t("p",[e._v("Compile: first "),t("code",[e._v("make dist-clean")]),e._v(" and then "),t("code",[e._v("make")])])])}),[],!1,null,null,null);a.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/38.2804a7da.js b/assets/js/38.5b7fa05f.js similarity index 97% rename from assets/js/38.2804a7da.js rename to assets/js/38.5b7fa05f.js index e5771ee38..ed770066a 100644 --- a/assets/js/38.2804a7da.js +++ b/assets/js/38.5b7fa05f.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[38],{424:function(v,_,l){"use strict";l.r(_);var i=l(17),s=Object(i.a)({},(function(){var v=this,_=v.$createElement,l=v._self._c||_;return l("ContentSlotsDistributor",{attrs:{"slot-key":v.$parent.slotKey}},[l("h2",{attrs:{id:"原则"}},[l("a",{staticClass:"header-anchor",attrs:{href:"#原则"}},[v._v("#")]),v._v(" 原则")]),v._v(" "),l("p",[v._v("  基于目前的需要,先从重构 guide 和 modules 模块,让两块联动,形成比较易读的 venus 集群部署介绍。")]),v._v(" "),l("ul",[l("li",[l("p",[v._v("modules 模块存储各组件的简介,将不相干的文档移到对应位置")])]),v._v(" "),l("li",[l("p",[v._v("guide 和 modules 对于组件介绍存在很多重复的,只保留一份")])]),v._v(" "),l("li",[l("p",[v._v("modules 模块组件介绍老旧,超链接到项目的介绍文档,避免项目内更新后 doc 中不及时及重复劳动")])]),v._v(" "),l("li",[l("p",[v._v("guide 将组件介绍,编译构建,部署文档独立")])]),v._v(" "),l("li",[l("p",[v._v("guide 模块增加 QA 模块,将 venus discussion 的问题以超链接方式统一到 QA 模块")])]),v._v(" "),l("li",[l("p",[v._v("部署模块尽量少一些设计的介绍,简明扼要,每个指定的操作尽量不涉及不相干的,以免造成误解")])])]),v._v(" "),l("h2",{attrs:{id:"todo-list"}},[l("a",{staticClass:"header-anchor",attrs:{href:"#todo-list"}},[v._v("#")]),v._v(" TODO list")]),v._v(" "),l("ul",[l("li",[l("p",[v._v("[ ] modules 模块")]),v._v(" "),l("ul",[l("li",[v._v("[ ] 引导页内容更新")]),v._v(" "),l("li",[v._v("[ ] 不相关文档移走")]),v._v(" "),l("li",[v._v("[ ] 文档命名一致")]),v._v(" "),l("li",[v._v("[ ] 组件介绍匹配项目进度")]),v._v(" "),l("li",[v._v("[x] 编译构建独立到一个文档")]),v._v(" "),l("li",[v._v("[ ] 组件文档移除从项目中搬过来的内容,用超链接")]),v._v(" "),l("li",[v._v("[ ] market 和 cluster 模块的技术文档移到 modules 模块,")])])]),v._v(" "),l("li",[l("p",[v._v("[ ] guide 模块")]),v._v(" "),l("ul",[l("li",[v._v("[ ] 将部署用到的基础知识单独形成文档")]),v._v(" "),l("li",[v._v("[x] 编译构建超链接到对应文档")]),v._v(" "),l("li",[v._v("[x] 增加部分组件的验证:怎么判断部署成功")]),v._v(" "),l("li",[v._v("[ ] 目录结构调整\n"),l("ul",[l("li",[v._v("[ ] market 和 cluster 归属到链服务部署和独立组件部署文档")]),v._v(" "),l("li",[v._v("[ ] .fil_withdraw_and_send.md.swp 文件删除")]),v._v(" "),l("li",[v._v("[ ] sealer 文档放到单独的目录")])])]),v._v(" "),l("li",[v._v("[ ] Troubleshooting-&-FAQ.md 用超链接方式管理 venus discussion")])])]),v._v(" "),l("li",[l("p",[v._v("[ ] 移除没有价值或过时的文档")])]),v._v(" "),l("li",[l("p",[v._v("[ ] 在很多模块中重复的内容整合")])]),v._v(" "),l("li",[l("p",[v._v("[ ] 每个项目搬过来的内容使用超链接")])])])])}),[],!1,null,null,null);_.default=s.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[38],{423:function(v,_,l){"use strict";l.r(_);var i=l(17),s=Object(i.a)({},(function(){var v=this,_=v.$createElement,l=v._self._c||_;return l("ContentSlotsDistributor",{attrs:{"slot-key":v.$parent.slotKey}},[l("h2",{attrs:{id:"原则"}},[l("a",{staticClass:"header-anchor",attrs:{href:"#原则"}},[v._v("#")]),v._v(" 原则")]),v._v(" "),l("p",[v._v("  基于目前的需要,先从重构 guide 和 modules 模块,让两块联动,形成比较易读的 venus 集群部署介绍。")]),v._v(" "),l("ul",[l("li",[l("p",[v._v("modules 模块存储各组件的简介,将不相干的文档移到对应位置")])]),v._v(" "),l("li",[l("p",[v._v("guide 和 modules 对于组件介绍存在很多重复的,只保留一份")])]),v._v(" "),l("li",[l("p",[v._v("modules 模块组件介绍老旧,超链接到项目的介绍文档,避免项目内更新后 doc 中不及时及重复劳动")])]),v._v(" "),l("li",[l("p",[v._v("guide 将组件介绍,编译构建,部署文档独立")])]),v._v(" "),l("li",[l("p",[v._v("guide 模块增加 QA 模块,将 venus discussion 的问题以超链接方式统一到 QA 模块")])]),v._v(" "),l("li",[l("p",[v._v("部署模块尽量少一些设计的介绍,简明扼要,每个指定的操作尽量不涉及不相干的,以免造成误解")])])]),v._v(" "),l("h2",{attrs:{id:"todo-list"}},[l("a",{staticClass:"header-anchor",attrs:{href:"#todo-list"}},[v._v("#")]),v._v(" TODO list")]),v._v(" "),l("ul",[l("li",[l("p",[v._v("[ ] modules 模块")]),v._v(" "),l("ul",[l("li",[v._v("[ ] 引导页内容更新")]),v._v(" "),l("li",[v._v("[ ] 不相关文档移走")]),v._v(" "),l("li",[v._v("[ ] 文档命名一致")]),v._v(" "),l("li",[v._v("[ ] 组件介绍匹配项目进度")]),v._v(" "),l("li",[v._v("[x] 编译构建独立到一个文档")]),v._v(" "),l("li",[v._v("[ ] 组件文档移除从项目中搬过来的内容,用超链接")]),v._v(" "),l("li",[v._v("[ ] market 和 cluster 模块的技术文档移到 modules 模块,")])])]),v._v(" "),l("li",[l("p",[v._v("[ ] guide 模块")]),v._v(" "),l("ul",[l("li",[v._v("[ ] 将部署用到的基础知识单独形成文档")]),v._v(" "),l("li",[v._v("[x] 编译构建超链接到对应文档")]),v._v(" "),l("li",[v._v("[x] 增加部分组件的验证:怎么判断部署成功")]),v._v(" "),l("li",[v._v("[ ] 目录结构调整\n"),l("ul",[l("li",[v._v("[ ] market 和 cluster 归属到链服务部署和独立组件部署文档")]),v._v(" "),l("li",[v._v("[ ] .fil_withdraw_and_send.md.swp 文件删除")]),v._v(" "),l("li",[v._v("[ ] sealer 文档放到单独的目录")])])]),v._v(" "),l("li",[v._v("[ ] Troubleshooting-&-FAQ.md 用超链接方式管理 venus discussion")])])]),v._v(" "),l("li",[l("p",[v._v("[ ] 移除没有价值或过时的文档")])]),v._v(" "),l("li",[l("p",[v._v("[ ] 在很多模块中重复的内容整合")])]),v._v(" "),l("li",[l("p",[v._v("[ ] 每个项目搬过来的内容使用超链接")])])])])}),[],!1,null,null,null);_.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/39.9417d32d.js b/assets/js/39.f948b1c5.js similarity index 97% rename from assets/js/39.9417d32d.js rename to assets/js/39.f948b1c5.js index 48ee529a2..e7ebf8223 100644 --- a/assets/js/39.9417d32d.js +++ b/assets/js/39.f948b1c5.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[39],{423:function(e,t,r){"use strict";r.r(t);var n=r(17),a=Object(n.a)({},(function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[r("h2",{attrs:{id:"使命-愿景-价值观"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#使命-愿景-价值观"}},[e._v("#")]),e._v(" 使命,愿景,价值观")]),e._v(" "),r("ul",[r("li",[e._v("❗️使命:建设 Filecoin 基础设施和工具,支持生态繁荣发展")]),e._v(" "),r("li",[e._v("🌏 愿景:人人都能参与 Filecoin 生态")]),e._v(" "),r("li",[e._v("☯️ 价值观:开放并且去信任")])]),e._v(" "),r("h2",{attrs:{id:"联系方式"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#联系方式"}},[e._v("#")]),e._v(" 联系方式")]),e._v(" "),r("ul",[r("li",[e._v("Slack:"),r("a",{attrs:{href:"https://filecoinproject.slack.com/archives/CEHHJNJS3",target:"_blank",rel:"noopener noreferrer"}},[e._v("#fil-venus"),r("OutboundLink")],1),e._v(", Slack:"),r("a",{attrs:{href:"https://filecoinproject.slack.com/archives/C028PCH8L31",target:"_blank",rel:"noopener noreferrer"}},[e._v("#fil-venus-cn"),r("OutboundLink")],1),e._v(", "),r("a",{attrs:{href:"mailto:venus@ipfsforce.com"}},[e._v("venus@ipfsforce.com")])])]),e._v(" "),r("h2",{attrs:{id:"其他资源"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#其他资源"}},[e._v("#")]),e._v(" 其他资源")]),e._v(" "),r("ul",[r("li",[e._v("venus-docs: "),r("a",{attrs:{href:"venus.filecoin.io"}},[e._v("venus.filecoin.io")])]),e._v(" "),r("li",[e._v("VenusHub: "),r("a",{attrs:{href:"venushub.io"}},[e._v("venushub.io")])]),e._v(" "),r("li",[e._v("Github: "),r("a",{attrs:{href:"https://github.com/filecoin-project/venus",target:"_blank",rel:"noopener noreferrer"}},[e._v("venus"),r("OutboundLink")],1)]),e._v(" "),r("li",[e._v("Social Media: "),r("a",{attrs:{href:"https://twitter.com/venus_filecoin",target:"_blank",rel:"noopener noreferrer"}},[e._v("Twitter"),r("OutboundLink")],1),e._v(", "),r("a",{attrs:{href:"https://mp.weixin.qq.com/s/p4_ch03QeMMXxPyakr_8XQ",target:"_blank",rel:"noopener noreferrer"}},[e._v("Wechat"),r("OutboundLink")],1)]),e._v(" "),r("li",[e._v("安全审计报告:"),r("a",{attrs:{href:"https://leastauthority.com/static/publications/LeastAuthority_Filecoin_Foundation_Venus_Final_Audit_Report.pdf",target:"_blank",rel:"noopener noreferrer"}},[e._v("link"),r("OutboundLink")],1)])])])}),[],!1,null,null,null);t.default=a.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[39],{424:function(e,t,r){"use strict";r.r(t);var n=r(17),a=Object(n.a)({},(function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[r("h2",{attrs:{id:"使命-愿景-价值观"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#使命-愿景-价值观"}},[e._v("#")]),e._v(" 使命,愿景,价值观")]),e._v(" "),r("ul",[r("li",[e._v("❗️使命:建设 Filecoin 基础设施和工具,支持生态繁荣发展")]),e._v(" "),r("li",[e._v("🌏 愿景:人人都能参与 Filecoin 生态")]),e._v(" "),r("li",[e._v("☯️ 价值观:开放并且去信任")])]),e._v(" "),r("h2",{attrs:{id:"联系方式"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#联系方式"}},[e._v("#")]),e._v(" 联系方式")]),e._v(" "),r("ul",[r("li",[e._v("Slack:"),r("a",{attrs:{href:"https://filecoinproject.slack.com/archives/CEHHJNJS3",target:"_blank",rel:"noopener noreferrer"}},[e._v("#fil-venus"),r("OutboundLink")],1),e._v(", Slack:"),r("a",{attrs:{href:"https://filecoinproject.slack.com/archives/C028PCH8L31",target:"_blank",rel:"noopener noreferrer"}},[e._v("#fil-venus-cn"),r("OutboundLink")],1),e._v(", "),r("a",{attrs:{href:"mailto:venus@ipfsforce.com"}},[e._v("venus@ipfsforce.com")])])]),e._v(" "),r("h2",{attrs:{id:"其他资源"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#其他资源"}},[e._v("#")]),e._v(" 其他资源")]),e._v(" "),r("ul",[r("li",[e._v("venus-docs: "),r("a",{attrs:{href:"venus.filecoin.io"}},[e._v("venus.filecoin.io")])]),e._v(" "),r("li",[e._v("VenusHub: "),r("a",{attrs:{href:"venushub.io"}},[e._v("venushub.io")])]),e._v(" "),r("li",[e._v("Github: "),r("a",{attrs:{href:"https://github.com/filecoin-project/venus",target:"_blank",rel:"noopener noreferrer"}},[e._v("venus"),r("OutboundLink")],1)]),e._v(" "),r("li",[e._v("Social Media: "),r("a",{attrs:{href:"https://twitter.com/venus_filecoin",target:"_blank",rel:"noopener noreferrer"}},[e._v("Twitter"),r("OutboundLink")],1),e._v(", "),r("a",{attrs:{href:"https://mp.weixin.qq.com/s/p4_ch03QeMMXxPyakr_8XQ",target:"_blank",rel:"noopener noreferrer"}},[e._v("Wechat"),r("OutboundLink")],1)]),e._v(" "),r("li",[e._v("安全审计报告:"),r("a",{attrs:{href:"https://leastauthority.com/static/publications/LeastAuthority_Filecoin_Foundation_Venus_Final_Audit_Report.pdf",target:"_blank",rel:"noopener noreferrer"}},[e._v("link"),r("OutboundLink")],1)])])])}),[],!1,null,null,null);t.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/43.675dba95.js b/assets/js/43.deafe363.js similarity index 97% rename from assets/js/43.675dba95.js rename to assets/js/43.deafe363.js index c65b4407c..398c3cc39 100644 --- a/assets/js/43.675dba95.js +++ b/assets/js/43.deafe363.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[43],{434:function(e,t,r){"use strict";r.r(t);var n=r(17),s=Object(n.a)({},(function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[r("h2",{attrs:{id:"部署venus解决方案"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#部署venus解决方案"}},[e._v("#")]),e._v(" 部署"),r("code",[e._v("Venus")]),e._v("解决方案")]),e._v(" "),r("p",[r("code",[e._v("Venus")]),e._v("泛指一系列与"),r("code",[e._v("filecoin")]),e._v("协议稳定/高效互动的软件产品。"),r("code",[e._v("Venus")]),e._v("的,目标群体大致分为"),r("code",[e._v("4")]),e._v("类。"),r("code",[e._v("SP")]),e._v("存储提供者,"),r("code",[e._v("SC")]),e._v("存储客户,生态合作伙伴,以及去中心化应用"),r("code",[e._v("Dapp")]),e._v("。"),r("code",[e._v("Venus")]),e._v("解决方案当前被广泛应用于"),r("code",[e._v("SP")]),e._v("和"),r("code",[e._v("SC")]),e._v("的场景中。")]),e._v(" "),r("h3",{attrs:{id:"部署"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#部署"}},[e._v("#")]),e._v(" 部署")]),e._v(" "),r("p",[e._v("经过"),r("code",[e._v("Venus")]),e._v("在 2022 年底的"),r("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5420",target:"_blank",rel:"noopener noreferrer"}},[e._v("品牌重塑"),r("OutboundLink")],1),e._v("之后,"),r("code",[e._v("Venus")]),e._v("拆分出 3 个产品,分别是"),r("a",{attrs:{href:"https://sophon.venus-fil.io/zh/",target:"_blank",rel:"noopener noreferrer"}},[e._v("智子"),r("OutboundLink")],1),e._v(","),r("a",{attrs:{href:"https://damocles.venus-fil.io/zh/",target:"_blank",rel:"noopener noreferrer"}},[e._v("执剑人"),r("OutboundLink")],1),e._v("以及"),r("a",{attrs:{href:"https://droplet.venus-fil.io/zh/",target:"_blank",rel:"noopener noreferrer"}},[e._v("水滴"),r("OutboundLink")],1),e._v("。关于各产品的具体部署流程,请参见各产品的文档。")]),e._v(" "),r("h3",{attrs:{id:"架构"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#架构"}},[e._v("#")]),e._v(" 架构")]),e._v(" "),r("img",{attrs:{src:"https://user-images.githubusercontent.com/1591330/227900001-a572c81d-607c-48ed-832e-54298ce87259.png",width:"800"}})])}),[],!1,null,null,null);t.default=s.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[43],{435:function(e,t,r){"use strict";r.r(t);var n=r(17),s=Object(n.a)({},(function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[r("h2",{attrs:{id:"部署venus解决方案"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#部署venus解决方案"}},[e._v("#")]),e._v(" 部署"),r("code",[e._v("Venus")]),e._v("解决方案")]),e._v(" "),r("p",[r("code",[e._v("Venus")]),e._v("泛指一系列与"),r("code",[e._v("filecoin")]),e._v("协议稳定/高效互动的软件产品。"),r("code",[e._v("Venus")]),e._v("的,目标群体大致分为"),r("code",[e._v("4")]),e._v("类。"),r("code",[e._v("SP")]),e._v("存储提供者,"),r("code",[e._v("SC")]),e._v("存储客户,生态合作伙伴,以及去中心化应用"),r("code",[e._v("Dapp")]),e._v("。"),r("code",[e._v("Venus")]),e._v("解决方案当前被广泛应用于"),r("code",[e._v("SP")]),e._v("和"),r("code",[e._v("SC")]),e._v("的场景中。")]),e._v(" "),r("h3",{attrs:{id:"部署"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#部署"}},[e._v("#")]),e._v(" 部署")]),e._v(" "),r("p",[e._v("经过"),r("code",[e._v("Venus")]),e._v("在 2022 年底的"),r("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5420",target:"_blank",rel:"noopener noreferrer"}},[e._v("品牌重塑"),r("OutboundLink")],1),e._v("之后,"),r("code",[e._v("Venus")]),e._v("拆分出 3 个产品,分别是"),r("a",{attrs:{href:"https://sophon.venus-fil.io/zh/",target:"_blank",rel:"noopener noreferrer"}},[e._v("智子"),r("OutboundLink")],1),e._v(","),r("a",{attrs:{href:"https://damocles.venus-fil.io/zh/",target:"_blank",rel:"noopener noreferrer"}},[e._v("执剑人"),r("OutboundLink")],1),e._v("以及"),r("a",{attrs:{href:"https://droplet.venus-fil.io/zh/",target:"_blank",rel:"noopener noreferrer"}},[e._v("水滴"),r("OutboundLink")],1),e._v("。关于各产品的具体部署流程,请参见各产品的文档。")]),e._v(" "),r("h3",{attrs:{id:"架构"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#架构"}},[e._v("#")]),e._v(" 架构")]),e._v(" "),r("img",{attrs:{src:"https://user-images.githubusercontent.com/1591330/227900001-a572c81d-607c-48ed-832e-54298ce87259.png",width:"800"}})])}),[],!1,null,null,null);t.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/44.a3518f95.js b/assets/js/44.c2ec6d51.js similarity index 99% rename from assets/js/44.a3518f95.js rename to assets/js/44.c2ec6d51.js index 605eaaa5b..5b2fc453a 100644 --- a/assets/js/44.a3518f95.js +++ b/assets/js/44.c2ec6d51.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[44],{435:function(s,a,t){"use strict";t.r(a);var e=t(17),r=Object(e.a)({},(function(){var s=this,a=s.$createElement,t=s._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[t("h1",{attrs:{id:"算力增加与维持部署参考方案-1"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#算力增加与维持部署参考方案-1"}},[s._v("#")]),s._v(" 算力增加与维持部署参考方案 1")]),s._v(" "),t("h2",{attrs:{id:"集群规模"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#集群规模"}},[s._v("#")]),s._v(" 集群规模:")]),s._v(" "),t("ul",[t("li",[s._v("机器:两台")]),s._v(" "),t("li",[s._v("配置:128 核,1T 内存,双 3060Ti(GPU)")])]),s._v(" "),t("h2",{attrs:{id:"方案"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#方案"}},[s._v("#")]),s._v(" 方案")]),s._v(" "),t("ul",[t("li",[t("p",[s._v("建议每台机器各去掉一块 GPU,因为目前程序只能访问一块 GPU;")])]),s._v(" "),t("li",[t("p",[s._v("安装 zabbix 监控")])]),s._v(" "),t("li",[t("p",[s._v("因为单个机器上运行不同的任务,需要给每个 worker 限核,需关闭超线程以确保限核的精准")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 绝大多数的主板都可以设置关闭超线程,但需要重新启动。我们通过一种方式关闭一半 CPU 的映射关系来做到相同的效果,这种方式不需要重启,但是每次重启都会失效。")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("#!/bin/bash")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[s._v("cpunum")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("cat")]),s._v(" /sys/devices/system/cpu/cpu*/topology/thread_siblings_list "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("cut")]),s._v(" -s -d, -f2- "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("tr")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("','")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("'"),t("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("'")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("sort")]),s._v(" -un"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v(")")])]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("do")]),s._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" /sys/devices/system/cpu/cpu"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$cpunum")]),s._v("/online\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("done")]),s._v("\n")])])])]),s._v(" "),t("li",[t("p",[s._v("部署方案:")])])]),s._v(" "),t("ul",[t("li",[s._v("A 机器:venus-sealer 只做 wdpost 和 winningpost 的计算;跑一个 venus-worker 只做 AP,P1,P2(用 cpu 做);")])]),s._v(" "),t("div",{staticClass:"language-sh extra-class"},[t("pre",{pre:!0,attrs:{class:"language-sh"}},[t("code",[s._v("./venus-sealer --network"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("mainnet init --actor"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("MINER_ID"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --node-url"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("IP_ADDRESS_OF_VENUS/tcp/3453 --messager-url"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("IP_ADDRESS_OF_VENUS_MESSAGER"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("/tcp/"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("PORT_OF_VENUS_MESSAGER"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --gateway-url"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("IP_ADDRESS_OF_VENUS_GATEWAY"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("/tcp/"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("PORT_OF_VENUS_GATEWAY"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --auth-token "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("AUTH_TOKEN_FOR_ACCOUNT_NAME"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --no-local-storage\n \n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 修改配置文件只允许sealer做wdpost")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("Storage"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n ParallelFetchLimit "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\n AllowAddPiece "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowPreCommit1 "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowPreCommit2 "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowCommit "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowUnseal "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n \n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 启动venus-sealer")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_USE_MULTICORE_SDR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("nohup")]),s._v(" ./venus-sealer run "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" sealer.log "),t("span",{pre:!0,attrs:{class:"token operator"}},[t("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("2")]),s._v(">")]),t("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("&1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# FIL_PROOFS_MAXIMIZE_CACHING=1 表示做P1的时候把部分临时文件缓存到内存")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 设置store目录,因为sealer我们不做任务,故只需设置store目录")]),s._v("\n ./venus-sealer storage attach --init --seal "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_PATH_OF_YOUR_PERMANENT_STORAGE"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 启动一个worker,只做AP,P1,P2,unseal(不允许用GPU)")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_MAXIMIZE_CACHING")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_USE_MULTICORE_SDR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ./venus-worker run --miner-addr"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/127.0.0.1/tcp/2345 --miner-token"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("sealer token"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --commit"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --no-local-storage \n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 指定worker的seal路径")]),s._v("\n./venus-worker storage attach --init --seal "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_LOCAL_PATH"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n")])])]),t("blockquote",[t("p",[s._v("venus-sealer 不做任务,故只需指定 store 目录,不需要 seal 目录。")])]),s._v(" "),t("blockquote",[t("p",[s._v("这里 worker 为什么只用 cpu 而不用 GPU 做呢?因为 wdpost 需要 gpu 做,并且是具有时效性的任务,如果 worker 竞争 gpu,wdpost 没法及时完成,存在惩罚算力的隐患。")])]),s._v(" "),t("blockquote",[t("p",[s._v("venus-sealer 默认只监听 127.0.0.1,要想别的机器连接 sealer 需要修改配置文件:")])]),s._v(" "),t("div",{staticClass:"language-sh extra-class"},[t("pre",{pre:!0,attrs:{class:"language-sh"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("API"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n ListenAddress "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"/ip4/0.0.0.0/tcp/2345/http"')]),s._v("\n RemoteListenAddress "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"内网ip:2345"')]),s._v("\n")])])]),t("blockquote",[t("p",[s._v("设置 p2,C2,wdPost 等消息的 from,即发送消息消耗 fil 的 address")])]),s._v(" "),t("div",{staticClass:"language-sh extra-class"},[t("pre",{pre:!0,attrs:{class:"language-sh"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("Addresses"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n PreCommitControl "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# P2")]),s._v("\n CommitControl "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# C2")]),s._v("\n DisableOwnerFallback "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 禁用owner发消息")]),s._v("\n DisableWorkerFallback "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n")])])]),t("blockquote",[t("p",[s._v("设置 sealer 可接受任务类型")])]),s._v(" "),t("div",{staticClass:"language-sh extra-class"},[t("pre",{pre:!0,attrs:{class:"language-sh"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("Storage"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n ParallelFetchLimit "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\n AllowAddPiece "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v("\n AllowPreCommit1 "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v("\n AllowPreCommit2 "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v("\n AllowCommit "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v("\n AllowUnseal "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v("\n")])])]),t("ul",[t("li",[s._v("B 机器:启动两个 worker,一个做 P2,一个做 Commit。p2 阶段使用 CPU,commit 阶段使用 GPU 运行。\n"),t("ul",[t("li",[s._v("限核:这台机器我们运行 2 个 worker 为了避免一个 worker 占满 cpu 资源,故需要对每个 worker 进程进行限核。这里我们将 75% 的核数分配给 worker01,将 25% 的核数分配给 worker02.参考文档:https://venus.filecoin.io/zh/operation/Efficiency_of_sealing.html")])])])]),s._v(" "),t("div",{staticClass:"language-sh extra-class"},[t("pre",{pre:!0,attrs:{class:"language-sh"}},[t("code",[t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# worker01")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_USE_MULTICORE_SDR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_MAXIMIZE_CACHING")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ./venus-worker run --miner-addr"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/127.0.0.1/tcp/2345 --miner-token"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("sealer token"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --unseal"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --addpiece"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --commit"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --no-local-storage\n \n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 指定worker01的seal路径")]),s._v("\n./venus-worker storage attach --init --seal "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_LOCAL_PATH"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# worker02")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("VENUS_WORKER_PATH")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("worker_path"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" ./venus-worker run --miner-addr"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/127.0.0.1/tcp/2345 --miner-token"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("sealer token"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --precommit1"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --precommit2"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --addpiece"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --unseal"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --no-local-storage\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 指定worker02的seal路径与worker01相同,这样做的好处是不需要文件的拷贝。")]),s._v("\n./venus-worker storage attach --seal "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_LOCAL_PATH"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n")])])]),t("blockquote",[t("p",[s._v("TRUST_PARAMS=1 环境变量可以跳过校验证明参数文件,如果你确定参数文件都在且是正确的可以用此环境变量用加快 venus-sealer 或 venus-worker 的启动的速度;")])]),s._v(" "),t("blockquote",[t("p",[s._v("seal 要求较高的磁盘吞吐量,建议 ssd 盘。")])]),s._v(" "),t("ul",[t("li",[t("p",[s._v("磁盘空间及并发数计算:")]),s._v(" "),t("ul",[t("li",[t("p",[s._v("32G 内存消耗:56G cache + 64G * 运行数量")])]),s._v(" "),t("li",[t("p",[s._v("32G 磁盘消耗:520G 左右 * 运行数量")])]),s._v(" "),t("li",[t("p",[s._v("64G 内存消耗:112G cache + 128G")])]),s._v(" "),t("li",[t("p",[s._v("64G 磁盘消耗:1T 左右 * 运行数量")])]),s._v(" "),t("li",[t("p",[s._v("故这两台机器 1t 的内存大约能做 64G sector 的数量为:")])])])])]),s._v(" "),t("p",[s._v("   (1024G-112G)/128G=7.125,保险起见我们可以先并发 6 个观察一段时间资源使用率。")]),s._v(" "),t("p",[s._v("   确定了并发密封扇区个数后,就可以确定 seal 需要的磁盘空间= 6*1t=6t.")]),s._v(" "),t("blockquote",[t("p",[s._v("做策略的思路:先考虑内存,确定并发数,在补充其他资源,如临时磁盘空间,至于 cpu,如果不足,可以限额,这样做的好处是系统可以持续运行,而不被 oom。")])]),s._v(" "),t("blockquote",[t("p",[s._v("可以利用 gpu 加速的任务时 P2,C2 和 windowPoSt,分配 gpu 的顺序是:wdPoSt>C2>P2")])]),s._v(" "),t("ul",[t("li",[s._v("并发数控制\n   ./venus-sealer sectors pledge 发送一个密封任务,通常写一个定时脚本或系统事务,每隔一段时间发送一个 sector 任务;配置文件 MaxSealingSectors 控制同时进行的 sector 上限数。")])])])}),[],!1,null,null,null);a.default=r.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[44],{434:function(s,a,t){"use strict";t.r(a);var e=t(17),r=Object(e.a)({},(function(){var s=this,a=s.$createElement,t=s._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[t("h1",{attrs:{id:"算力增加与维持部署参考方案-1"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#算力增加与维持部署参考方案-1"}},[s._v("#")]),s._v(" 算力增加与维持部署参考方案 1")]),s._v(" "),t("h2",{attrs:{id:"集群规模"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#集群规模"}},[s._v("#")]),s._v(" 集群规模:")]),s._v(" "),t("ul",[t("li",[s._v("机器:两台")]),s._v(" "),t("li",[s._v("配置:128 核,1T 内存,双 3060Ti(GPU)")])]),s._v(" "),t("h2",{attrs:{id:"方案"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#方案"}},[s._v("#")]),s._v(" 方案")]),s._v(" "),t("ul",[t("li",[t("p",[s._v("建议每台机器各去掉一块 GPU,因为目前程序只能访问一块 GPU;")])]),s._v(" "),t("li",[t("p",[s._v("安装 zabbix 监控")])]),s._v(" "),t("li",[t("p",[s._v("因为单个机器上运行不同的任务,需要给每个 worker 限核,需关闭超线程以确保限核的精准")]),s._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 绝大多数的主板都可以设置关闭超线程,但需要重新启动。我们通过一种方式关闭一半 CPU 的映射关系来做到相同的效果,这种方式不需要重启,但是每次重启都会失效。")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("#!/bin/bash")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[s._v("cpunum")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("cat")]),s._v(" /sys/devices/system/cpu/cpu*/topology/thread_siblings_list "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("cut")]),s._v(" -s -d, -f2- "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("tr")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("','")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("'"),t("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("'")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("sort")]),s._v(" -un"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v(")")])]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("do")]),s._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" /sys/devices/system/cpu/cpu"),t("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$cpunum")]),s._v("/online\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("done")]),s._v("\n")])])])]),s._v(" "),t("li",[t("p",[s._v("部署方案:")])])]),s._v(" "),t("ul",[t("li",[s._v("A 机器:venus-sealer 只做 wdpost 和 winningpost 的计算;跑一个 venus-worker 只做 AP,P1,P2(用 cpu 做);")])]),s._v(" "),t("div",{staticClass:"language-sh extra-class"},[t("pre",{pre:!0,attrs:{class:"language-sh"}},[t("code",[s._v("./venus-sealer --network"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("mainnet init --actor"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("MINER_ID"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --node-url"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("IP_ADDRESS_OF_VENUS/tcp/3453 --messager-url"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("IP_ADDRESS_OF_VENUS_MESSAGER"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("/tcp/"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("PORT_OF_VENUS_MESSAGER"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --gateway-url"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("IP_ADDRESS_OF_VENUS_GATEWAY"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("/tcp/"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("PORT_OF_VENUS_GATEWAY"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --auth-token "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("AUTH_TOKEN_FOR_ACCOUNT_NAME"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --no-local-storage\n \n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 修改配置文件只允许sealer做wdpost")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("Storage"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n ParallelFetchLimit "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\n AllowAddPiece "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowPreCommit1 "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowPreCommit2 "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowCommit "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowUnseal "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n \n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 启动venus-sealer")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_USE_MULTICORE_SDR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("nohup")]),s._v(" ./venus-sealer run "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" sealer.log "),t("span",{pre:!0,attrs:{class:"token operator"}},[t("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("2")]),s._v(">")]),t("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("&1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# FIL_PROOFS_MAXIMIZE_CACHING=1 表示做P1的时候把部分临时文件缓存到内存")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 设置store目录,因为sealer我们不做任务,故只需设置store目录")]),s._v("\n ./venus-sealer storage attach --init --seal "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_PATH_OF_YOUR_PERMANENT_STORAGE"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 启动一个worker,只做AP,P1,P2,unseal(不允许用GPU)")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_MAXIMIZE_CACHING")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_USE_MULTICORE_SDR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ./venus-worker run --miner-addr"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/127.0.0.1/tcp/2345 --miner-token"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("sealer token"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --commit"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --no-local-storage \n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 指定worker的seal路径")]),s._v("\n./venus-worker storage attach --init --seal "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_LOCAL_PATH"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n")])])]),t("blockquote",[t("p",[s._v("venus-sealer 不做任务,故只需指定 store 目录,不需要 seal 目录。")])]),s._v(" "),t("blockquote",[t("p",[s._v("这里 worker 为什么只用 cpu 而不用 GPU 做呢?因为 wdpost 需要 gpu 做,并且是具有时效性的任务,如果 worker 竞争 gpu,wdpost 没法及时完成,存在惩罚算力的隐患。")])]),s._v(" "),t("blockquote",[t("p",[s._v("venus-sealer 默认只监听 127.0.0.1,要想别的机器连接 sealer 需要修改配置文件:")])]),s._v(" "),t("div",{staticClass:"language-sh extra-class"},[t("pre",{pre:!0,attrs:{class:"language-sh"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("API"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n ListenAddress "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"/ip4/0.0.0.0/tcp/2345/http"')]),s._v("\n RemoteListenAddress "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[s._v('"内网ip:2345"')]),s._v("\n")])])]),t("blockquote",[t("p",[s._v("设置 p2,C2,wdPost 等消息的 from,即发送消息消耗 fil 的 address")])]),s._v(" "),t("div",{staticClass:"language-sh extra-class"},[t("pre",{pre:!0,attrs:{class:"language-sh"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("Addresses"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n PreCommitControl "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# P2")]),s._v("\n CommitControl "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# C2")]),s._v("\n DisableOwnerFallback "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 禁用owner发消息")]),s._v("\n DisableWorkerFallback "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n")])])]),t("blockquote",[t("p",[s._v("设置 sealer 可接受任务类型")])]),s._v(" "),t("div",{staticClass:"language-sh extra-class"},[t("pre",{pre:!0,attrs:{class:"language-sh"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("Storage"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n ParallelFetchLimit "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\n AllowAddPiece "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v("\n AllowPreCommit1 "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v("\n AllowPreCommit2 "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v("\n AllowCommit "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v("\n AllowUnseal "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v("\n")])])]),t("ul",[t("li",[s._v("B 机器:启动两个 worker,一个做 P2,一个做 Commit。p2 阶段使用 CPU,commit 阶段使用 GPU 运行。\n"),t("ul",[t("li",[s._v("限核:这台机器我们运行 2 个 worker 为了避免一个 worker 占满 cpu 资源,故需要对每个 worker 进程进行限核。这里我们将 75% 的核数分配给 worker01,将 25% 的核数分配给 worker02.参考文档:https://venus.filecoin.io/zh/operation/Efficiency_of_sealing.html")])])])]),s._v(" "),t("div",{staticClass:"language-sh extra-class"},[t("pre",{pre:!0,attrs:{class:"language-sh"}},[t("code",[t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# worker01")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_USE_MULTICORE_SDR")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_MAXIMIZE_CACHING")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" ./venus-worker run --miner-addr"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/127.0.0.1/tcp/2345 --miner-token"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("sealer token"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --unseal"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --addpiece"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --commit"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --no-local-storage\n \n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 指定worker01的seal路径")]),s._v("\n./venus-worker storage attach --init --seal "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_LOCAL_PATH"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# worker02")]),s._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("VENUS_WORKER_PATH")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("worker_path"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" ./venus-worker run --miner-addr"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/127.0.0.1/tcp/2345 --miner-token"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("sealer token"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --precommit1"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --precommit2"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --addpiece"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --unseal"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --no-local-storage\n\n"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 指定worker02的seal路径与worker01相同,这样做的好处是不需要文件的拷贝。")]),s._v("\n./venus-worker storage attach --seal "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_LOCAL_PATH"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n")])])]),t("blockquote",[t("p",[s._v("TRUST_PARAMS=1 环境变量可以跳过校验证明参数文件,如果你确定参数文件都在且是正确的可以用此环境变量用加快 venus-sealer 或 venus-worker 的启动的速度;")])]),s._v(" "),t("blockquote",[t("p",[s._v("seal 要求较高的磁盘吞吐量,建议 ssd 盘。")])]),s._v(" "),t("ul",[t("li",[t("p",[s._v("磁盘空间及并发数计算:")]),s._v(" "),t("ul",[t("li",[t("p",[s._v("32G 内存消耗:56G cache + 64G * 运行数量")])]),s._v(" "),t("li",[t("p",[s._v("32G 磁盘消耗:520G 左右 * 运行数量")])]),s._v(" "),t("li",[t("p",[s._v("64G 内存消耗:112G cache + 128G")])]),s._v(" "),t("li",[t("p",[s._v("64G 磁盘消耗:1T 左右 * 运行数量")])]),s._v(" "),t("li",[t("p",[s._v("故这两台机器 1t 的内存大约能做 64G sector 的数量为:")])])])])]),s._v(" "),t("p",[s._v("   (1024G-112G)/128G=7.125,保险起见我们可以先并发 6 个观察一段时间资源使用率。")]),s._v(" "),t("p",[s._v("   确定了并发密封扇区个数后,就可以确定 seal 需要的磁盘空间= 6*1t=6t.")]),s._v(" "),t("blockquote",[t("p",[s._v("做策略的思路:先考虑内存,确定并发数,在补充其他资源,如临时磁盘空间,至于 cpu,如果不足,可以限额,这样做的好处是系统可以持续运行,而不被 oom。")])]),s._v(" "),t("blockquote",[t("p",[s._v("可以利用 gpu 加速的任务时 P2,C2 和 windowPoSt,分配 gpu 的顺序是:wdPoSt>C2>P2")])]),s._v(" "),t("ul",[t("li",[s._v("并发数控制\n   ./venus-sealer sectors pledge 发送一个密封任务,通常写一个定时脚本或系统事务,每隔一段时间发送一个 sector 任务;配置文件 MaxSealingSectors 控制同时进行的 sector 上限数。")])])])}),[],!1,null,null,null);a.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/45.df996f96.js b/assets/js/45.b2272df7.js similarity index 99% rename from assets/js/45.df996f96.js rename to assets/js/45.b2272df7.js index 9a7a4aef1..77b54e011 100644 --- a/assets/js/45.df996f96.js +++ b/assets/js/45.b2272df7.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[45],{438:function(s,t,a){"use strict";a.r(t);var r=a(17),e=Object(r.a)({},(function(){var s=this,t=s.$createElement,a=s._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[a("h1",{attrs:{id:"算力增加与维持部署参考方案-2"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#算力增加与维持部署参考方案-2"}},[s._v("#")]),s._v(" 算力增加与维持部署参考方案 2")]),s._v(" "),a("h2",{attrs:{id:"机器配置"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#机器配置"}},[s._v("#")]),s._v(" 机器配置")]),s._v(" "),a("table",[a("thead",[a("tr",[a("th",[s._v("资源")]),s._v(" "),a("th",[s._v("配置")])])]),s._v(" "),a("tbody",[a("tr",[a("td",[s._v("CPU")]),s._v(" "),a("td",[s._v("AMD EPYC 7282 *1 (32c) 单路")])]),s._v(" "),a("tr",[a("td",[s._v("内存")]),s._v(" "),a("td",[s._v("32GB ECC/Reg, DDR4-3200 *8")])]),s._v(" "),a("tr",[a("td",[s._v("硬盘")]),s._v(" "),a("td",[s._v("M.2 NVME PCIe Gen3 x4 2TB SSD *2")])]),s._v(" "),a("tr",[a("td",[s._v("网卡")]),s._v(" "),a("td",[s._v("10G")])]),s._v(" "),a("tr",[a("td",[s._v("系统盘")]),s._v(" "),a("td",[s._v("500G")])]),s._v(" "),a("tr",[a("td",[s._v("显卡")]),s._v(" "),a("td",[s._v("3090 * 1")])]),s._v(" "),a("tr",[a("td",[s._v("存储")]),s._v(" "),a("td",[s._v("4TB SSD *25 RAID 5")])])])]),s._v(" "),a("p",[s._v("台数:1 台")]),s._v(" "),a("h2",{attrs:{id:"任务配比"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#任务配比"}},[s._v("#")]),s._v(" 任务配比")]),s._v(" "),a("p",[s._v("任务分为 AP,P1,P2,Commit 阶段")]),s._v(" "),a("table",[a("thead",[a("tr",[a("th",[s._v("运行方式")]),s._v(" "),a("th",[s._v("核数限制")]),s._v(" "),a("th",[s._v("耗时 (分钟)")]),s._v(" "),a("th",[s._v("内存消耗 (G)")]),s._v(" "),a("th",[s._v("效率 (个/小时)")]),s._v(" "),a("th",[s._v("日产量 (T)")])])]),s._v(" "),a("tbody",[a("tr",[a("td",[s._v("P1 * 5")]),s._v(" "),a("td",[s._v("20")]),s._v(" "),a("td",[s._v("220")]),s._v(" "),a("td",[s._v("376")]),s._v(" "),a("td",[s._v("1.3636")]),s._v(" "),a("td",[s._v("1.0227")])]),s._v(" "),a("tr",[a("td",[s._v("P2,AP,Commit")]),s._v(" "),a("td",[s._v("12")]),s._v(" "),a("td",[s._v("10")]),s._v(" "),a("td",[s._v("120")]),s._v(" "),a("td",[s._v("3")]),s._v(" "),a("td",[s._v("1.125")])])])]),s._v(" "),a("p",[s._v("资源说明:")]),s._v(" "),a("ul",[a("li",[s._v("内存加到 512G;")])]),s._v(" "),a("h2",{attrs:{id:"部署"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#部署"}},[s._v("#")]),s._v(" 部署")]),s._v(" "),a("ul",[a("li",[s._v("关闭超线程")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 绝大多数的主板都可以设置关闭超线程,但需要重新启动。我们通过一种方式关闭一半CPU的映射关系来做到相同的效果,这种方式不需要重启,但是每次重启都会失效。")]),s._v("\n \n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("#!/bin/bash")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[s._v("cpunum")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$(")]),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("cat")]),s._v(" /sys/devices/system/cpu/cpu*/topology/thread_siblings_list "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("cut")]),s._v(" -s -d, -f2- "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("tr")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("','")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("'")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("sort")]),s._v(" -un"),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v(")")])]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("do")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" /sys/devices/system/cpu/cpu"),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$cpunum")]),s._v("/online\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("done")]),s._v("\n")])])]),a("ul",[a("li",[a("p",[s._v("确保证明参数文件已下载,参数文件默认目录:/var/tmp/filecoin-proof-parameters")])]),s._v(" "),a("li",[a("p",[s._v("启动 venus-sealer: sealer 只做 windowPoSt.")])])]),s._v(" "),a("div",{staticClass:"language-sh extra-class"},[a("pre",{pre:!0,attrs:{class:"language-sh"}},[a("code",[s._v("./venus-sealer --network"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("mainnet init --actor"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("MINER_ID"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --node-url"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("IP_ADDRESS_OF_VENUS/tcp/3453 --messager-url"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("IP_ADDRESS_OF_VENUS_MESSAGER"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("/tcp/"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("PORT_OF_VENUS_MESSAGER"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --gateway-url"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("IP_ADDRESS_OF_VENUS_GATEWAY"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("/tcp/"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("PORT_OF_VENUS_GATEWAY"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --auth-token "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("AUTH_TOKEN_FOR_ACCOUNT_NAME"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --no-local-storage\n \n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 修改配置文件只允许sealer做wdpost")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("Storage"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n ParallelFetchLimit "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\n AllowAddPiece "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowPreCommit1 "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowPreCommit2 "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowCommit "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowUnseal "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n \n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 启动venus-sealer")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_USE_MULTICORE_SDR")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("nohup")]),s._v(" ./venus-sealer run "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" sealer.log "),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("2")]),s._v(">")]),a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("&1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 设置store目录,因为sealer我们不做任务,故只需设置store目录")]),s._v("\n./venus-sealer storage attach --init --store "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_PATH_OF_YOUR_PERMANENT_STORAGE"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n")])])]),a("blockquote",[a("p",[s._v("init 时加"),a("code",[s._v("--no-local-storage")]),s._v("不回创建默认的store/seal目录;")])]),s._v(" "),a("ul",[a("li",[s._v("启动 venus-worker-01: 只做 P1")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_MAXIMIZE_CACHING")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_USE_MULTICORE_SDR")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("nohup")]),s._v(" ./venus-worker --repo"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_PATH_OF_WORKER_0"),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("1")]),s._v(">")]),s._v(" run --miner-addr"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/127.0.0.1/tcp/2345 --miner-token"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("sealer token"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("\n--addpiece"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --unseal"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --precommit2"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --commit"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --no-local-storage "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" worker-01.log "),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("2")]),s._v(">")]),a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("&1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 指定seal路径")]),s._v("\n./venus-worker --repo"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_PATH_OF_WORKER_0"),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("1")]),s._v(">")]),s._v(" storage attach --init --seal "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_LOCAL_PATH"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n")])])]),a("blockquote",[a("p",[s._v("FIL_PROOFS_MAXIMIZE_CACHING=1 表示做 P1 的时候把部分临时文件缓存到内存")])]),s._v(" "),a("ul",[a("li",[s._v("启动 venus-worker-02: 做 AP,P2,Commit 等任务")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_USE_MULTICORE_SDR")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("TMP_DIR")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("OTHER_PATH"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("nohup")]),s._v(" ./venus-worker --repo"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_PATH_OF_WORKER_0"),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("2")]),s._v(">")]),s._v(" run --miner-addr"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/127.0.0.1/tcp/2345 --miner-token"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("sealer token"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("\n--precommit1"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --no-local-storage "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" worker-02.log "),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("2")]),s._v(">")]),a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("&1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 指定seal路径")]),s._v("\n./venus-worker --repo"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_PATH_OF_WORKER_0"),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("2")]),s._v(">")]),s._v(" storage attach --init --seal "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_LOCAL_PATH"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n")])])]),a("blockquote",[a("p",[s._v("设置 worker01 和 worker02 的 seal 路径相同,可以避免不必要的拷贝;")])]),s._v(" "),a("blockquote",[a("p",[s._v("P2 没有设置用 GPU;")])]),s._v(" "),a("blockquote",[a("p",[s._v("TMP_DIR 目的是为了避免和 venus-sealer 竞争 bellman.gpu.lock,C2 阶段会自动搜索用 GPU,如果和 wdPost 竞争 gpu 锁会报错")])]),s._v(" "),a("ul",[a("li",[s._v("设置发送消息的 wallet")])]),s._v(" "),a("div",{staticClass:"language-sh extra-class"},[a("pre",{pre:!0,attrs:{class:"language-sh"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("Addresses"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n PreCommitControl "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# P2")]),s._v("\n CommitControl "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# C2")]),s._v("\n DisableOwnerFallback "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 禁用owner发消息")]),s._v("\n DisableWorkerFallback "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n")])])]),a("blockquote",[a("p",[s._v("根据上面字段的含义自己配置想要的结果")])]),s._v(" "),a("ul",[a("li",[s._v("限核:Cgrep 限核")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 设置进程管理目录")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("sudo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("mkdir")]),s._v(" -p /sys/fs/cgroup/cpuset/worker\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 设置能够使用的核数范围")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("sudo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v("-20 "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" /sys/fs/cgroup/cpuset/worker/cpuset.cpus\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 设置使用内存")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" cpuset.mems\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 加入进程的PID")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("sudo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("PID"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" /sys/fs/cgroup/cpuset/worker/cgroup.procs\n\n")])])]),a("blockquote",[a("p",[s._v("PID: 进程 ID 号;")])]),s._v(" "),a("blockquote",[a("p",[s._v("每次 worker 重启后 PID 会变化,需要更新文件。")])]),s._v(" "),a("blockquote",[a("p",[s._v("/sys/fs/cgroup/cpuset是系统目录,worker是自己创建的.")])])])}),[],!1,null,null,null);t.default=e.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[45],{436:function(s,t,a){"use strict";a.r(t);var r=a(17),e=Object(r.a)({},(function(){var s=this,t=s.$createElement,a=s._self._c||t;return a("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[a("h1",{attrs:{id:"算力增加与维持部署参考方案-2"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#算力增加与维持部署参考方案-2"}},[s._v("#")]),s._v(" 算力增加与维持部署参考方案 2")]),s._v(" "),a("h2",{attrs:{id:"机器配置"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#机器配置"}},[s._v("#")]),s._v(" 机器配置")]),s._v(" "),a("table",[a("thead",[a("tr",[a("th",[s._v("资源")]),s._v(" "),a("th",[s._v("配置")])])]),s._v(" "),a("tbody",[a("tr",[a("td",[s._v("CPU")]),s._v(" "),a("td",[s._v("AMD EPYC 7282 *1 (32c) 单路")])]),s._v(" "),a("tr",[a("td",[s._v("内存")]),s._v(" "),a("td",[s._v("32GB ECC/Reg, DDR4-3200 *8")])]),s._v(" "),a("tr",[a("td",[s._v("硬盘")]),s._v(" "),a("td",[s._v("M.2 NVME PCIe Gen3 x4 2TB SSD *2")])]),s._v(" "),a("tr",[a("td",[s._v("网卡")]),s._v(" "),a("td",[s._v("10G")])]),s._v(" "),a("tr",[a("td",[s._v("系统盘")]),s._v(" "),a("td",[s._v("500G")])]),s._v(" "),a("tr",[a("td",[s._v("显卡")]),s._v(" "),a("td",[s._v("3090 * 1")])]),s._v(" "),a("tr",[a("td",[s._v("存储")]),s._v(" "),a("td",[s._v("4TB SSD *25 RAID 5")])])])]),s._v(" "),a("p",[s._v("台数:1 台")]),s._v(" "),a("h2",{attrs:{id:"任务配比"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#任务配比"}},[s._v("#")]),s._v(" 任务配比")]),s._v(" "),a("p",[s._v("任务分为 AP,P1,P2,Commit 阶段")]),s._v(" "),a("table",[a("thead",[a("tr",[a("th",[s._v("运行方式")]),s._v(" "),a("th",[s._v("核数限制")]),s._v(" "),a("th",[s._v("耗时 (分钟)")]),s._v(" "),a("th",[s._v("内存消耗 (G)")]),s._v(" "),a("th",[s._v("效率 (个/小时)")]),s._v(" "),a("th",[s._v("日产量 (T)")])])]),s._v(" "),a("tbody",[a("tr",[a("td",[s._v("P1 * 5")]),s._v(" "),a("td",[s._v("20")]),s._v(" "),a("td",[s._v("220")]),s._v(" "),a("td",[s._v("376")]),s._v(" "),a("td",[s._v("1.3636")]),s._v(" "),a("td",[s._v("1.0227")])]),s._v(" "),a("tr",[a("td",[s._v("P2,AP,Commit")]),s._v(" "),a("td",[s._v("12")]),s._v(" "),a("td",[s._v("10")]),s._v(" "),a("td",[s._v("120")]),s._v(" "),a("td",[s._v("3")]),s._v(" "),a("td",[s._v("1.125")])])])]),s._v(" "),a("p",[s._v("资源说明:")]),s._v(" "),a("ul",[a("li",[s._v("内存加到 512G;")])]),s._v(" "),a("h2",{attrs:{id:"部署"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#部署"}},[s._v("#")]),s._v(" 部署")]),s._v(" "),a("ul",[a("li",[s._v("关闭超线程")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 绝大多数的主板都可以设置关闭超线程,但需要重新启动。我们通过一种方式关闭一半CPU的映射关系来做到相同的效果,这种方式不需要重启,但是每次重启都会失效。")]),s._v("\n \n "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("#!/bin/bash")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("for")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[s._v("cpunum")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("in")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$(")]),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("cat")]),s._v(" /sys/devices/system/cpu/cpu*/topology/thread_siblings_list "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("cut")]),s._v(" -s -d, -f2- "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("tr")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("','")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[s._v("'"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\n"}},[s._v("\\n")]),s._v("'")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("|")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("sort")]),s._v(" -un"),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v(")")])]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("do")]),s._v("\n "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" /sys/devices/system/cpu/cpu"),a("span",{pre:!0,attrs:{class:"token variable"}},[s._v("$cpunum")]),s._v("/online\n "),a("span",{pre:!0,attrs:{class:"token keyword"}},[s._v("done")]),s._v("\n")])])]),a("ul",[a("li",[a("p",[s._v("确保证明参数文件已下载,参数文件默认目录:/var/tmp/filecoin-proof-parameters")])]),s._v(" "),a("li",[a("p",[s._v("启动 venus-sealer: sealer 只做 windowPoSt.")])])]),s._v(" "),a("div",{staticClass:"language-sh extra-class"},[a("pre",{pre:!0,attrs:{class:"language-sh"}},[a("code",[s._v("./venus-sealer --network"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("mainnet init --actor"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("MINER_ID"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --node-url"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("IP_ADDRESS_OF_VENUS/tcp/3453 --messager-url"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("IP_ADDRESS_OF_VENUS_MESSAGER"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("/tcp/"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("PORT_OF_VENUS_MESSAGER"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --gateway-url"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("IP_ADDRESS_OF_VENUS_GATEWAY"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("/tcp/"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("PORT_OF_VENUS_GATEWAY"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --auth-token "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("AUTH_TOKEN_FOR_ACCOUNT_NAME"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" --no-local-storage\n \n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 修改配置文件只允许sealer做wdpost")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("Storage"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n ParallelFetchLimit "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("10")]),s._v("\n AllowAddPiece "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowPreCommit1 "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowPreCommit2 "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowCommit "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n AllowUnseal "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n \n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 启动venus-sealer")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_USE_MULTICORE_SDR")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("nohup")]),s._v(" ./venus-sealer run "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" sealer.log "),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("2")]),s._v(">")]),a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("&1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 设置store目录,因为sealer我们不做任务,故只需设置store目录")]),s._v("\n./venus-sealer storage attach --init --store "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_PATH_OF_YOUR_PERMANENT_STORAGE"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n")])])]),a("blockquote",[a("p",[s._v("init 时加"),a("code",[s._v("--no-local-storage")]),s._v("不回创建默认的store/seal目录;")])]),s._v(" "),a("ul",[a("li",[s._v("启动 venus-worker-01: 只做 P1")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_MAXIMIZE_CACHING")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_USE_MULTICORE_SDR")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("nohup")]),s._v(" ./venus-worker --repo"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_PATH_OF_WORKER_0"),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("1")]),s._v(">")]),s._v(" run --miner-addr"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/127.0.0.1/tcp/2345 --miner-token"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("sealer token"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("\n--addpiece"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --unseal"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --precommit2"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --commit"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --no-local-storage "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" worker-01.log "),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("2")]),s._v(">")]),a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("&1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 指定seal路径")]),s._v("\n./venus-worker --repo"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_PATH_OF_WORKER_0"),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("1")]),s._v(">")]),s._v(" storage attach --init --seal "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_LOCAL_PATH"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n")])])]),a("blockquote",[a("p",[s._v("FIL_PROOFS_MAXIMIZE_CACHING=1 表示做 P1 的时候把部分临时文件缓存到内存")])]),s._v(" "),a("ul",[a("li",[s._v("启动 venus-worker-02: 做 AP,P2,Commit 等任务")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("BELLMAN_CPU_UTILIZATION")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0.2")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("FIL_PROOFS_USE_MULTICORE_SDR")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[s._v("TMP_DIR")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("OTHER_PATH"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("nohup")]),s._v(" ./venus-worker --repo"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_PATH_OF_WORKER_0"),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("2")]),s._v(">")]),s._v(" run --miner-addr"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("/ip4/127.0.0.1/tcp/2345 --miner-token"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("sealer token"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("\\")]),s._v("\n--precommit1"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v("false --no-local-storage "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" worker-02.log "),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("2")]),s._v(">")]),a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("&1")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("&")]),s._v("\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 指定seal路径")]),s._v("\n./venus-worker --repo"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_PATH_OF_WORKER_0"),a("span",{pre:!0,attrs:{class:"token operator"}},[a("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[s._v("2")]),s._v(">")]),s._v(" storage attach --init --seal "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("ABSOLUTE_LOCAL_PATH"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n")])])]),a("blockquote",[a("p",[s._v("设置 worker01 和 worker02 的 seal 路径相同,可以避免不必要的拷贝;")])]),s._v(" "),a("blockquote",[a("p",[s._v("P2 没有设置用 GPU;")])]),s._v(" "),a("blockquote",[a("p",[s._v("TMP_DIR 目的是为了避免和 venus-sealer 竞争 bellman.gpu.lock,C2 阶段会自动搜索用 GPU,如果和 wdPost 竞争 gpu 锁会报错")])]),s._v(" "),a("ul",[a("li",[s._v("设置发送消息的 wallet")])]),s._v(" "),a("div",{staticClass:"language-sh extra-class"},[a("pre",{pre:!0,attrs:{class:"language-sh"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),s._v("Addresses"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v("\n PreCommitControl "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# P2")]),s._v("\n CommitControl "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("]")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# C2")]),s._v("\n DisableOwnerFallback "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("true")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 禁用owner发消息")]),s._v("\n DisableWorkerFallback "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[s._v("false")]),s._v("\n")])])]),a("blockquote",[a("p",[s._v("根据上面字段的含义自己配置想要的结果")])]),s._v(" "),a("ul",[a("li",[s._v("限核:Cgrep 限核")])]),s._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 设置进程管理目录")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("sudo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("mkdir")]),s._v(" -p /sys/fs/cgroup/cpuset/worker\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 设置能够使用的核数范围")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("sudo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v("-20 "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" /sys/fs/cgroup/cpuset/worker/cpuset.cpus\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 设置使用内存")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[s._v("0")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" cpuset.mems\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[s._v("# 加入进程的PID")]),s._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[s._v("sudo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("echo")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("PID"),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" /sys/fs/cgroup/cpuset/worker/cgroup.procs\n\n")])])]),a("blockquote",[a("p",[s._v("PID: 进程 ID 号;")])]),s._v(" "),a("blockquote",[a("p",[s._v("每次 worker 重启后 PID 会变化,需要更新文件。")])]),s._v(" "),a("blockquote",[a("p",[s._v("/sys/fs/cgroup/cpuset是系统目录,worker是自己创建的.")])])])}),[],!1,null,null,null);t.default=e.exports}}]); \ No newline at end of file diff --git a/assets/js/47.7482559b.js b/assets/js/47.26f9acac.js similarity index 90% rename from assets/js/47.7482559b.js rename to assets/js/47.26f9acac.js index 1497e8638..89254d693 100644 --- a/assets/js/47.7482559b.js +++ b/assets/js/47.26f9acac.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[47],{436:function(e,t,s){"use strict";s.r(t);var i=s(17),n=Object(i.a)({},(function(){var e=this.$createElement,t=this._self._c||e;return t("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[t("p",[t("em",[this._v("See something missing? Have tips to share? "),t("a",{attrs:{href:"https://github.com/filecoin-project/venus/issues/new",target:"_blank",rel:"noopener noreferrer"}},[this._v("File an issue"),t("OutboundLink")],1),this._v(", and we'll follow up as soon as possible. (If you have write permission in this repo, feel free to edit directly.)")])])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[47],{438:function(e,t,s){"use strict";s.r(t);var i=s(17),n=Object(i.a)({},(function(){var e=this.$createElement,t=this._self._c||e;return t("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[t("p",[t("em",[this._v("See something missing? Have tips to share? "),t("a",{attrs:{href:"https://github.com/filecoin-project/venus/issues/new",target:"_blank",rel:"noopener noreferrer"}},[this._v("File an issue"),t("OutboundLink")],1),this._v(", and we'll follow up as soon as possible. (If you have write permission in this repo, feel free to edit directly.)")])])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/49.18680955.js b/assets/js/49.016b7fef.js similarity index 95% rename from assets/js/49.18680955.js rename to assets/js/49.016b7fef.js index 1634bed00..63eaca64a 100644 --- a/assets/js/49.18680955.js +++ b/assets/js/49.016b7fef.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[49],{441:function(e,r,t){"use strict";t.r(r);var o=t(17),n=Object(o.a)({},(function(){var e=this,r=e.$createElement,t=e._self._c||r;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h2",{attrs:{id:"从-lotus-来的命令"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#从-lotus-来的命令"}},[e._v("#")]),e._v(" 从 Lotus 来的命令")]),e._v(" "),t("p",[e._v("很多日常的命令包括但不限于"),t("a",{attrs:{href:"https://lotus.filecoin.io/docs/storage-providers/addresses/",target:"_blank",rel:"noopener noreferrer"}},[e._v("创建worker/controler地址"),t("OutboundLink")],1),e._v(",设置不同的"),t("a",{attrs:{href:"https://lotus.filecoin.io/docs/storage-providers/config/",target:"_blank",rel:"noopener noreferrer"}},[e._v("配置"),t("OutboundLink")],1),e._v(",或者修改"),t("a",{attrs:{href:"https://lotus.filecoin.io/docs/storage-providers/lifecycle/#changing-storage-locations",target:"_blank",rel:"noopener noreferrer"}},[e._v("存储路径"),t("OutboundLink")],1),e._v("等等,都同时适用于"),t("code",[e._v("Lotus")]),e._v("和"),t("code",[e._v("Venus")]),e._v("。节点运维工程师可以按照 Lotus 文档中的步骤来操作。如果遇到任何问题,欢迎到"),t("a",{attrs:{href:"https://filecoinproject.slack.com/archives/C028PCH8L31",target:"_blank",rel:"noopener noreferrer"}},[e._v("#fil-venus-cn"),t("OutboundLink")],1),e._v("来提出问题。")])])}),[],!1,null,null,null);r.default=n.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[49],{440:function(e,r,t){"use strict";t.r(r);var o=t(17),n=Object(o.a)({},(function(){var e=this,r=e.$createElement,t=e._self._c||r;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h2",{attrs:{id:"从-lotus-来的命令"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#从-lotus-来的命令"}},[e._v("#")]),e._v(" 从 Lotus 来的命令")]),e._v(" "),t("p",[e._v("很多日常的命令包括但不限于"),t("a",{attrs:{href:"https://lotus.filecoin.io/docs/storage-providers/addresses/",target:"_blank",rel:"noopener noreferrer"}},[e._v("创建worker/controler地址"),t("OutboundLink")],1),e._v(",设置不同的"),t("a",{attrs:{href:"https://lotus.filecoin.io/docs/storage-providers/config/",target:"_blank",rel:"noopener noreferrer"}},[e._v("配置"),t("OutboundLink")],1),e._v(",或者修改"),t("a",{attrs:{href:"https://lotus.filecoin.io/docs/storage-providers/lifecycle/#changing-storage-locations",target:"_blank",rel:"noopener noreferrer"}},[e._v("存储路径"),t("OutboundLink")],1),e._v("等等,都同时适用于"),t("code",[e._v("Lotus")]),e._v("和"),t("code",[e._v("Venus")]),e._v("。节点运维工程师可以按照 Lotus 文档中的步骤来操作。如果遇到任何问题,欢迎到"),t("a",{attrs:{href:"https://filecoinproject.slack.com/archives/C028PCH8L31",target:"_blank",rel:"noopener noreferrer"}},[e._v("#fil-venus-cn"),t("OutboundLink")],1),e._v("来提出问题。")])])}),[],!1,null,null,null);r.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/50.e70f2cff.js b/assets/js/50.483c26ee.js similarity index 98% rename from assets/js/50.e70f2cff.js rename to assets/js/50.483c26ee.js index 5c39c5008..08753bc8e 100644 --- a/assets/js/50.e70f2cff.js +++ b/assets/js/50.483c26ee.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[50],{440:function(t,a,e){"use strict";e.r(a);var s=e(17),r=Object(s.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"market-v1-v2-升级指南"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#market-v1-v2-升级指南"}},[t._v("#")]),t._v(" market v1-v2 升级指南")]),t._v(" "),e("p",[t._v("market v1 升级到 v2 的过程中数据结构发生了变化,如果需要现有的数据请按照现有的步骤进行升级数据")]),t._v(" "),e("h2",{attrs:{id:"编译升级工具"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#编译升级工具"}},[t._v("#")]),t._v(" 编译升级工具")]),t._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[t._v("git clone https://github.com/filecoin-project/venus-market.git\ngit checkout feat/export_v1_data\n\nmake deps\ncd cli/market_export\ngo build\n")])])]),e("p",[t._v("执行上述步骤后会生成一个工具,这个工具用于导出 v1 版本的数据")]),t._v(" "),e("h2",{attrs:{id:"升级步骤"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#升级步骤"}},[t._v("#")]),t._v(" 升级步骤")]),t._v(" "),e("ol",[e("li",[e("p",[t._v("停止 venus-market 程序")])]),t._v(" "),e("li",[e("p",[t._v("备份 venus-market 数据目录,这个目录默认保存在 ~/.venusmarket.")])]),t._v(" "),e("li",[e("p",[t._v("导出 v1 版本的数据")]),t._v(" "),e("div",{staticClass:"language-sh extra-class"},[e("pre",{pre:!0,attrs:{class:"language-sh"}},[e("code",[t._v(" ./market_export --repo "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("venus-market repo"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("export")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("path of "),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("export")]),t._v(" data file"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" \n")])])])]),t._v(" "),e("li",[e("p",[t._v("重新初始化 v2 版本的 venus-market(版本号必须高于 2.0.0 rc2)")])]),t._v(" "),e("li",[e("p",[t._v("执行 v2 版本的升级命令,这个命令用于导入步骤 3 中导出的数据。")]),t._v(" "),e("div",{staticClass:"language-sh extra-class"},[e("pre",{pre:!0,attrs:{class:"language-sh"}},[e("code",[t._v("./market_export --repo "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("venus-market repo"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" migrate import_v1 "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("path of "),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("export")]),t._v(" data file"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v("\n")])])])])]),t._v(" "),e("p",[e("em",[e("strong",[t._v("稳妥起见,做升级之前请确保没有处于 (Publish/Publishing/StorageDealAwaitingPreCommit) 状态的订单")])])])])}),[],!1,null,null,null);a.default=r.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[50],{441:function(t,a,e){"use strict";e.r(a);var s=e(17),r=Object(s.a)({},(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[e("h1",{attrs:{id:"market-v1-v2-升级指南"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#market-v1-v2-升级指南"}},[t._v("#")]),t._v(" market v1-v2 升级指南")]),t._v(" "),e("p",[t._v("market v1 升级到 v2 的过程中数据结构发生了变化,如果需要现有的数据请按照现有的步骤进行升级数据")]),t._v(" "),e("h2",{attrs:{id:"编译升级工具"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#编译升级工具"}},[t._v("#")]),t._v(" 编译升级工具")]),t._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[t._v("git clone https://github.com/filecoin-project/venus-market.git\ngit checkout feat/export_v1_data\n\nmake deps\ncd cli/market_export\ngo build\n")])])]),e("p",[t._v("执行上述步骤后会生成一个工具,这个工具用于导出 v1 版本的数据")]),t._v(" "),e("h2",{attrs:{id:"升级步骤"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#升级步骤"}},[t._v("#")]),t._v(" 升级步骤")]),t._v(" "),e("ol",[e("li",[e("p",[t._v("停止 venus-market 程序")])]),t._v(" "),e("li",[e("p",[t._v("备份 venus-market 数据目录,这个目录默认保存在 ~/.venusmarket.")])]),t._v(" "),e("li",[e("p",[t._v("导出 v1 版本的数据")]),t._v(" "),e("div",{staticClass:"language-sh extra-class"},[e("pre",{pre:!0,attrs:{class:"language-sh"}},[e("code",[t._v(" ./market_export --repo "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("venus-market repo"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("export")]),t._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("path of "),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("export")]),t._v(" data file"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" \n")])])])]),t._v(" "),e("li",[e("p",[t._v("重新初始化 v2 版本的 venus-market(版本号必须高于 2.0.0 rc2)")])]),t._v(" "),e("li",[e("p",[t._v("执行 v2 版本的升级命令,这个命令用于导入步骤 3 中导出的数据。")]),t._v(" "),e("div",{staticClass:"language-sh extra-class"},[e("pre",{pre:!0,attrs:{class:"language-sh"}},[e("code",[t._v("./market_export --repo "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("venus-market repo"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v(" migrate import_v1 "),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<")]),t._v("path of "),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("export")]),t._v(" data file"),e("span",{pre:!0,attrs:{class:"token operator"}},[t._v(">")]),t._v("\n")])])])])]),t._v(" "),e("p",[e("em",[e("strong",[t._v("稳妥起见,做升级之前请确保没有处于 (Publish/Publishing/StorageDealAwaitingPreCommit) 状态的订单")])])])])}),[],!1,null,null,null);a.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/52.53410f7c.js b/assets/js/52.fead5f04.js similarity index 99% rename from assets/js/52.53410f7c.js rename to assets/js/52.fead5f04.js index 60b0018b2..1512e1f69 100644 --- a/assets/js/52.53410f7c.js +++ b/assets/js/52.fead5f04.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[52],{444:function(e,v,a){"use strict";a.r(v);var t=a(17),s=Object(t.a)({},(function(){var e=this,v=e.$createElement,a=e._self._c||v;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h2",{attrs:{id:"nv16-各组件升级文档"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#nv16-各组件升级文档"}},[e._v("#")]),e._v(" nv16 各组件升级文档")]),e._v(" "),a("h3",{attrs:{id:"时间线"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#时间线"}},[e._v("#")]),e._v(" 时间线")]),e._v(" "),a("p",[e._v("升级时间:2022-07-06T14:00:00Z,北京时间是 2022-07-06 22:00:00(周三)")]),e._v(" "),a("h3",{attrs:{id:"venus-auth"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-auth"}},[e._v("#")]),e._v(" venus-auth")]),e._v(" "),a("p",[e._v("tag: v1.6.0")]),e._v(" "),a("p",[e._v("影响功能:支持多个 miner 共享同一个 token 的功能")]),e._v(" "),a("p",[e._v("依赖升级组件:无")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("新增加一张 "),a("code",[e._v("miners")]),e._v(" 表,用于保存 "),a("code",[e._v("user")]),e._v(" 和 "),a("code",[e._v("miner")]),e._v(" 的对应关系")])]),e._v(" "),a("li",[a("p",[e._v("会把 "),a("code",[e._v("users")]),e._v(" 表每行数据的 "),a("code",[e._v("name")]),e._v(" 和 "),a("code",[e._v("miner")]),e._v(" 字段的值写入到 "),a("code",[e._v("miners")]),e._v(" 表中的 "),a("code",[e._v("user")]),e._v(" 和 "),a("code",[e._v("miner")]),e._v("字段,检查写入是否有问题,成功日志:migrate from:0, to:1 success;失败日志:migrate from store version:0 failed")])]),e._v(" "),a("li",[a("p",[a("code",[e._v("./venus-auth user miner list ")]),e._v(" 可以查看每个用户绑定的 miner")])]),e._v(" "),a("li",[a("p",[e._v("使用命令 "),a("code",[e._v("./venus-auth user list")]),e._v("列出所有 user,"),a("strong",[e._v("确保被使用的 user 状态都为 enabled 状态")])])])]),e._v(" "),a("h3",{attrs:{id:"venus"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[e._v("#")]),e._v(" venus")]),e._v(" "),a("p",[e._v("tag: v1.6.0")]),e._v(" "),a("p",[e._v("影响功能:支持 nv16 网络")]),e._v(" "),a("p",[e._v("依赖升级组件:无")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("升级后检查 vk 文件是否完整")])]),e._v(" "),a("li",[a("p",[e._v("升级后检查配置文件,升级高度是否正常设置,配置文件默认在 "),a("code",[e._v("~/.venus/config.json")]),e._v(" :")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('# cali\n"upgradeSkyrHeight": 1044660\n# mainnet\n"upgradeSkyrHeight": 1960320\n')])])])]),e._v(" "),a("li",[a("p",[e._v("升级后需检查是否正常同步区块")])]),e._v(" "),a("li",[a("p",[e._v("api 版本发生变化,影响 miner 的连接")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('# 用 curl 命令测试接口 StateGetBeaconEntry、BeaconGetEntry,下面三个 curl 命令返回结果应该一样\ncurl http://127.0.0.1:3453/rpc/v0 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer token" -d \'{"method": "Filecoin.BeaconGetEntry","params":[1933610], "id": 0}\'\ncurl http://127.0.0.1:3453/rpc/v1 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer token" -d \'{"method": "Filecoin.BeaconGetEntry","params":[1933610], "id": 0}\' \ncurl http://127.0.0.1:3453/rpc/v1 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer token" -d \'{"method": "Filecoin.StateGetBeaconEntry","params":[1933610], "id": 0}\'\n')])])])]),e._v(" "),a("li",[a("p",[e._v("检查主网 v8 actors cid,确保与下面输出一样")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("./venus state actor-cids\n\n# 顺序可能会不一样\n_manifest bafy2bzacebogjbpiemi7npzxchgcjjki3tfxon4ims55obfyfleqntteljsea \naccount bafk2bzacedudbf7fc5va57t3tmo63snmt3en4iaidv4vo3qlyacbxaa6hlx6y \nstoragemarket bafk2bzacediohrxkp2fbsl4yj4jlupjdkgsiwqb4zuezvinhdo2j5hrxco62q \nstorageminer bafk2bzacecgnynvd3tene3bvqoknuspit56canij5bpra6wl4mrq2mxxwriyu \nmultisig bafk2bzacebhldfjuy4o5v7amrhp5p2gzv2qo5275jut4adnbyp56fxkwy5fag \npaymentchannel bafk2bzacebalad3f72wyk7qyilvfjijcwubdspytnyzlrhvn73254gqis44rq \nreward bafk2bzacecwzzxlgjiavnc3545cqqil3cmq4hgpvfp2crguxy2pl5ybusfsbe \nsystem bafk2bzacedwq5uppsw7vp55zpj7jdieizirmldceehu6wvombw3ixq2tcq57w \ncron bafk2bzacecqb3eolfurehny6yp7tgmapib4ocazo5ilkopjce2c7wc2bcec62 \ninit bafk2bzaceaipvjhoxmtofsnv3aj6gj5ida4afdrxa4ewku2hfipdlxpaektlw \nstoragepower bafk2bzacebjvqva6ppvysn5xpmiqcdfelwbbcxmghx5ww6hr37cgred6dyrpm \nverifiedregistry bafk2bzaceb3zbkjz3auizmoln2unmxep7dyfcmsre64vnqfhdyh7rkqfoxlw4\n")])])])]),e._v(" "),a("li",[a("p",[e._v("主网可以通过设置环境变量 "),a("code",[e._v("export VENUS_USE_FVM_TO_SYNC_MAINNET_V15=1")]),e._v(" 在 nv15 网络使用 fvm")])]),e._v(" "),a("li",[a("p",[e._v("若不排查问题,rust 日志级别"),a("strong",[e._v("不建议")]),e._v("设置为 "),a("code",[e._v("trace")]),e._v(",因为会打印较多日志")])]),e._v(" "),a("li",[a("p",[e._v("升级后可以通过命令来 "),a("code",[e._v("./venus state get-actor t01000")]),e._v(" 来确认是否升级成功")])])]),e._v(" "),a("h3",{attrs:{id:"venus-messager"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-messager"}},[e._v("#")]),e._v(" venus-messager")]),e._v(" "),a("p",[e._v("tag:v1.6.0")]),e._v(" "),a("p",[e._v("影响功能:支持新的网络版本,新增主目录,默认在 "),a("code",[e._v("~/.venus-messager")])]),e._v(" "),a("p",[e._v("依赖升级组件:")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("升级后是否生成主目录 "),a("code",[e._v("~/.venus-messager")])])]),e._v(" "),a("li",[a("p",[e._v("升级后主目录应包含 "),a("code",[e._v("config.toml")]),e._v(" 和 "),a("code",[e._v("tipset.json")]),e._v(","),a("code",[e._v("config.toml")]),e._v(" 应与启动 "),a("code",[e._v("messager")]),e._v(" 使用的配置文件内容一致,"),a("code",[e._v("~/.venus-messager/tipset.json")]),e._v(" 是由当前目录中的 "),a("code",[e._v("tipset.json")]),e._v(" 拷贝而来")])]),e._v(" "),a("li",[a("p",[e._v("升级成功后再次重启是读取的配置是"),a("code",[e._v("~/.venus-messager/config.toml")])])]),e._v(" "),a("li",[a("p",[e._v("能否正常收到消息和推送消息到节点")])])]),e._v(" "),a("h3",{attrs:{id:"venus-miner"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-miner"}},[e._v("#")]),e._v(" venus-miner")]),e._v(" "),a("p",[e._v("tag: v1.6.0")]),e._v(" "),a("p",[e._v("影响功能:")]),e._v(" "),a("ol",[a("li",[e._v("获取 beacon 的接口名字 由 "),a("code",[e._v("BeaconGetEntry")]),e._v(" 改为 "),a("code",[e._v("StateGetBeaconEntry")])])]),e._v(" "),a("p",[e._v("依赖升级组件:venus,venus-auth,venus-gateway")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("ol",[a("li",[e._v("升级后常用命令 address state/list/update验证一遍.")]),e._v(" "),a("li",[e._v("如果用 mysql 数据库,检查下 miner_blocks 表中 parent_key 字段是 varchar(1000)")])]),e._v(" "),a("h3",{attrs:{id:"venus-gateway"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-gateway"}},[e._v("#")]),e._v(" venus-gateway")]),e._v(" "),a("p",[e._v("tag: v1.6.0")]),e._v(" "),a("p",[e._v("影响功能:修复没有自动清理超时的请求")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("ol",[a("li",[e._v("升级后 "),a("code",[e._v("wallet")]),e._v(" 是否重新注册上来")])]),e._v(" "),a("h3",{attrs:{id:"venus-market"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-market"}},[e._v("#")]),e._v(" venus-market")]),e._v(" "),a("p",[e._v("tag: v2.2.0")]),e._v(" "),a("p",[e._v("影响功能:")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("h3",{attrs:{id:"venus-wallet"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[e._v("#")]),e._v(" venus-wallet")]),e._v(" "),a("h4",{attrs:{id:"社区"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#社区"}},[e._v("#")]),e._v(" 社区")]),e._v(" "),a("p",[e._v("tag: v1.6.0")]),e._v(" "),a("p",[e._v("影响功能:")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("ol",[a("li",[e._v("需要解锁钱包")]),e._v(" "),a("li",[e._v("是否注册到 gateway")])])])}),[],!1,null,null,null);v.default=s.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[52],{443:function(e,v,a){"use strict";a.r(v);var t=a(17),s=Object(t.a)({},(function(){var e=this,v=e.$createElement,a=e._self._c||v;return a("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[a("h2",{attrs:{id:"nv16-各组件升级文档"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#nv16-各组件升级文档"}},[e._v("#")]),e._v(" nv16 各组件升级文档")]),e._v(" "),a("h3",{attrs:{id:"时间线"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#时间线"}},[e._v("#")]),e._v(" 时间线")]),e._v(" "),a("p",[e._v("升级时间:2022-07-06T14:00:00Z,北京时间是 2022-07-06 22:00:00(周三)")]),e._v(" "),a("h3",{attrs:{id:"venus-auth"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-auth"}},[e._v("#")]),e._v(" venus-auth")]),e._v(" "),a("p",[e._v("tag: v1.6.0")]),e._v(" "),a("p",[e._v("影响功能:支持多个 miner 共享同一个 token 的功能")]),e._v(" "),a("p",[e._v("依赖升级组件:无")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("新增加一张 "),a("code",[e._v("miners")]),e._v(" 表,用于保存 "),a("code",[e._v("user")]),e._v(" 和 "),a("code",[e._v("miner")]),e._v(" 的对应关系")])]),e._v(" "),a("li",[a("p",[e._v("会把 "),a("code",[e._v("users")]),e._v(" 表每行数据的 "),a("code",[e._v("name")]),e._v(" 和 "),a("code",[e._v("miner")]),e._v(" 字段的值写入到 "),a("code",[e._v("miners")]),e._v(" 表中的 "),a("code",[e._v("user")]),e._v(" 和 "),a("code",[e._v("miner")]),e._v("字段,检查写入是否有问题,成功日志:migrate from:0, to:1 success;失败日志:migrate from store version:0 failed")])]),e._v(" "),a("li",[a("p",[a("code",[e._v("./venus-auth user miner list ")]),e._v(" 可以查看每个用户绑定的 miner")])]),e._v(" "),a("li",[a("p",[e._v("使用命令 "),a("code",[e._v("./venus-auth user list")]),e._v("列出所有 user,"),a("strong",[e._v("确保被使用的 user 状态都为 enabled 状态")])])])]),e._v(" "),a("h3",{attrs:{id:"venus"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[e._v("#")]),e._v(" venus")]),e._v(" "),a("p",[e._v("tag: v1.6.0")]),e._v(" "),a("p",[e._v("影响功能:支持 nv16 网络")]),e._v(" "),a("p",[e._v("依赖升级组件:无")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("升级后检查 vk 文件是否完整")])]),e._v(" "),a("li",[a("p",[e._v("升级后检查配置文件,升级高度是否正常设置,配置文件默认在 "),a("code",[e._v("~/.venus/config.json")]),e._v(" :")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('# cali\n"upgradeSkyrHeight": 1044660\n# mainnet\n"upgradeSkyrHeight": 1960320\n')])])])]),e._v(" "),a("li",[a("p",[e._v("升级后需检查是否正常同步区块")])]),e._v(" "),a("li",[a("p",[e._v("api 版本发生变化,影响 miner 的连接")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v('# 用 curl 命令测试接口 StateGetBeaconEntry、BeaconGetEntry,下面三个 curl 命令返回结果应该一样\ncurl http://127.0.0.1:3453/rpc/v0 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer token" -d \'{"method": "Filecoin.BeaconGetEntry","params":[1933610], "id": 0}\'\ncurl http://127.0.0.1:3453/rpc/v1 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer token" -d \'{"method": "Filecoin.BeaconGetEntry","params":[1933610], "id": 0}\' \ncurl http://127.0.0.1:3453/rpc/v1 -X POST -H "Content-Type: application/json" -H "Authorization: Bearer token" -d \'{"method": "Filecoin.StateGetBeaconEntry","params":[1933610], "id": 0}\'\n')])])])]),e._v(" "),a("li",[a("p",[e._v("检查主网 v8 actors cid,确保与下面输出一样")]),e._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[e._v("./venus state actor-cids\n\n# 顺序可能会不一样\n_manifest bafy2bzacebogjbpiemi7npzxchgcjjki3tfxon4ims55obfyfleqntteljsea \naccount bafk2bzacedudbf7fc5va57t3tmo63snmt3en4iaidv4vo3qlyacbxaa6hlx6y \nstoragemarket bafk2bzacediohrxkp2fbsl4yj4jlupjdkgsiwqb4zuezvinhdo2j5hrxco62q \nstorageminer bafk2bzacecgnynvd3tene3bvqoknuspit56canij5bpra6wl4mrq2mxxwriyu \nmultisig bafk2bzacebhldfjuy4o5v7amrhp5p2gzv2qo5275jut4adnbyp56fxkwy5fag \npaymentchannel bafk2bzacebalad3f72wyk7qyilvfjijcwubdspytnyzlrhvn73254gqis44rq \nreward bafk2bzacecwzzxlgjiavnc3545cqqil3cmq4hgpvfp2crguxy2pl5ybusfsbe \nsystem bafk2bzacedwq5uppsw7vp55zpj7jdieizirmldceehu6wvombw3ixq2tcq57w \ncron bafk2bzacecqb3eolfurehny6yp7tgmapib4ocazo5ilkopjce2c7wc2bcec62 \ninit bafk2bzaceaipvjhoxmtofsnv3aj6gj5ida4afdrxa4ewku2hfipdlxpaektlw \nstoragepower bafk2bzacebjvqva6ppvysn5xpmiqcdfelwbbcxmghx5ww6hr37cgred6dyrpm \nverifiedregistry bafk2bzaceb3zbkjz3auizmoln2unmxep7dyfcmsre64vnqfhdyh7rkqfoxlw4\n")])])])]),e._v(" "),a("li",[a("p",[e._v("主网可以通过设置环境变量 "),a("code",[e._v("export VENUS_USE_FVM_TO_SYNC_MAINNET_V15=1")]),e._v(" 在 nv15 网络使用 fvm")])]),e._v(" "),a("li",[a("p",[e._v("若不排查问题,rust 日志级别"),a("strong",[e._v("不建议")]),e._v("设置为 "),a("code",[e._v("trace")]),e._v(",因为会打印较多日志")])]),e._v(" "),a("li",[a("p",[e._v("升级后可以通过命令来 "),a("code",[e._v("./venus state get-actor t01000")]),e._v(" 来确认是否升级成功")])])]),e._v(" "),a("h3",{attrs:{id:"venus-messager"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-messager"}},[e._v("#")]),e._v(" venus-messager")]),e._v(" "),a("p",[e._v("tag:v1.6.0")]),e._v(" "),a("p",[e._v("影响功能:支持新的网络版本,新增主目录,默认在 "),a("code",[e._v("~/.venus-messager")])]),e._v(" "),a("p",[e._v("依赖升级组件:")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("ol",[a("li",[a("p",[e._v("升级后是否生成主目录 "),a("code",[e._v("~/.venus-messager")])])]),e._v(" "),a("li",[a("p",[e._v("升级后主目录应包含 "),a("code",[e._v("config.toml")]),e._v(" 和 "),a("code",[e._v("tipset.json")]),e._v(","),a("code",[e._v("config.toml")]),e._v(" 应与启动 "),a("code",[e._v("messager")]),e._v(" 使用的配置文件内容一致,"),a("code",[e._v("~/.venus-messager/tipset.json")]),e._v(" 是由当前目录中的 "),a("code",[e._v("tipset.json")]),e._v(" 拷贝而来")])]),e._v(" "),a("li",[a("p",[e._v("升级成功后再次重启是读取的配置是"),a("code",[e._v("~/.venus-messager/config.toml")])])]),e._v(" "),a("li",[a("p",[e._v("能否正常收到消息和推送消息到节点")])])]),e._v(" "),a("h3",{attrs:{id:"venus-miner"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-miner"}},[e._v("#")]),e._v(" venus-miner")]),e._v(" "),a("p",[e._v("tag: v1.6.0")]),e._v(" "),a("p",[e._v("影响功能:")]),e._v(" "),a("ol",[a("li",[e._v("获取 beacon 的接口名字 由 "),a("code",[e._v("BeaconGetEntry")]),e._v(" 改为 "),a("code",[e._v("StateGetBeaconEntry")])])]),e._v(" "),a("p",[e._v("依赖升级组件:venus,venus-auth,venus-gateway")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("ol",[a("li",[e._v("升级后常用命令 address state/list/update验证一遍.")]),e._v(" "),a("li",[e._v("如果用 mysql 数据库,检查下 miner_blocks 表中 parent_key 字段是 varchar(1000)")])]),e._v(" "),a("h3",{attrs:{id:"venus-gateway"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-gateway"}},[e._v("#")]),e._v(" venus-gateway")]),e._v(" "),a("p",[e._v("tag: v1.6.0")]),e._v(" "),a("p",[e._v("影响功能:修复没有自动清理超时的请求")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("ol",[a("li",[e._v("升级后 "),a("code",[e._v("wallet")]),e._v(" 是否重新注册上来")])]),e._v(" "),a("h3",{attrs:{id:"venus-market"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-market"}},[e._v("#")]),e._v(" venus-market")]),e._v(" "),a("p",[e._v("tag: v2.2.0")]),e._v(" "),a("p",[e._v("影响功能:")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("h3",{attrs:{id:"venus-wallet"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[e._v("#")]),e._v(" venus-wallet")]),e._v(" "),a("h4",{attrs:{id:"社区"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#社区"}},[e._v("#")]),e._v(" 社区")]),e._v(" "),a("p",[e._v("tag: v1.6.0")]),e._v(" "),a("p",[e._v("影响功能:")]),e._v(" "),a("p",[e._v("注意事项:")]),e._v(" "),a("ol",[a("li",[e._v("需要解锁钱包")]),e._v(" "),a("li",[e._v("是否注册到 gateway")])])])}),[],!1,null,null,null);v.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/53.929b2f39.js b/assets/js/53.936c519a.js similarity index 99% rename from assets/js/53.929b2f39.js rename to assets/js/53.936c519a.js index 6499516bc..6e488611d 100644 --- a/assets/js/53.929b2f39.js +++ b/assets/js/53.936c519a.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[53],{443:function(e,a,v){"use strict";v.r(a);var t=v(17),s=Object(t.a)({},(function(){var e=this,a=e.$createElement,v=e._self._c||a;return v("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[v("h1",{attrs:{id:"nv17-各组件升级文档"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#nv17-各组件升级文档"}},[e._v("#")]),e._v(" nv17 各组件升级文档")]),e._v(" "),v("p",[e._v("如果 "),v("code",[e._v("venus-wallet")]),e._v(" 或者 "),v("code",[e._v("venus-gateway")]),e._v(" 的版本从 "),v("code",[e._v("v1.6.x")]),e._v(" 升级到 "),v("code",[e._v("v1.8.0")]),e._v(",请先阅读 "),v("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5265",target:"_blank",rel:"noopener noreferrer"}},[e._v("Venus 组件 v1.7.0 使用注意事项 "),v("OutboundLink")],1),e._v(",注意 "),v("code",[e._v("venus-gateway")]),e._v(" 和 "),v("code",[e._v("venus-wallet")]),e._v("的升级顺序。")]),e._v(" "),v("h3",{attrs:{id:"时间线"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#时间线"}},[e._v("#")]),e._v(" 时间线")]),e._v(" "),v("p",[e._v("升级时间:2022-11-30T14:00:00Z,北京时间是 2022-11-30 22:00:00")]),e._v(" "),v("h3",{attrs:{id:"各组件版本"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#各组件版本"}},[e._v("#")]),e._v(" 各组件版本")]),e._v(" "),v("ul",[v("li",[v("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5386#discussioncomment-3893446",target:"_blank",rel:"noopener noreferrer"}},[e._v("calibrationnet"),v("OutboundLink")],1)]),e._v(" "),v("li",[v("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5386#discussioncomment-3893449",target:"_blank",rel:"noopener noreferrer"}},[e._v("mainnet"),v("OutboundLink")],1)])]),e._v(" "),v("h3",{attrs:{id:"venus-auth"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus-auth"}},[e._v("#")]),e._v(" venus-auth")]),e._v(" "),v("p",[e._v("影响功能:")]),e._v(" "),v("p",[e._v("依赖升级组件:无")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("ol",[v("li",[v("code",[e._v("miners")]),e._v(" 表增加字段 "),v("code",[e._v("open_mining")]),e._v(",0 表示不出块,1 表示出块,默认是 1")])]),e._v(" "),v("h3",{attrs:{id:"venus"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[e._v("#")]),e._v(" venus")]),e._v(" "),v("p",[e._v("影响功能:支持 nv17 网络")]),e._v(" "),v("p",[e._v("依赖升级组件:无")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("p",[e._v("编译:先 "),v("code",[e._v("make dist-clean")]),e._v(" 再 "),v("code",[e._v("make")]),e._v(",这样可以防止未能正常升级 "),v("code",[e._v("filecoin-ffi")]),e._v(" 而带来的问题")]),e._v(" "),v("ol",[v("li",[v("p",[e._v("升级后检查 vk 文件是否完整")])]),e._v(" "),v("li",[v("p",[e._v("升级后检查配置文件,升级高度是否正常设置,配置文件默认在 "),v("code",[e._v("~/.venus/config.json")]),e._v(" :")]),e._v(" "),v("div",{staticClass:"language- extra-class"},[v("pre",{pre:!0,attrs:{class:"language-text"}},[v("code",[e._v('# cali\n"upgradeSkyrHeight": 16800\n# mainnet\n"upgradeSkyrHeight": 2383680\n')])])])]),e._v(" "),v("li",[v("p",[e._v("升级后需检查是否正常同步区块")])]),e._v(" "),v("li",[v("p",[e._v("检查主网 v9 actors code,确保与下面输出一样")]),e._v(" "),v("div",{staticClass:"language- extra-class"},[v("pre",{pre:!0,attrs:{class:"language-text"}},[v("code",[e._v("./venus state actor-cids --network-version 17\n\n# 顺序可能会不一样\nNetwork Version: 17\nActor Version: 9\nActor CID\nreward bafk2bzacebezgbbmcm2gbcqwisus5fjvpj7hhmu5ubd37phuku3hmkfulxm2o\nsystem bafk2bzaceagvlo2jtahj7dloshrmwfulrd6e2izqev32qm46eumf754weec6c\n_manifest bafy2bzaceb6j6666h36xnhksu3ww4kxb6e25niayfgkdnifaqi6m6ooc66i6i\nstoragemarket bafk2bzacec3j7p6gklk64stax5px3xxd7hdtejaepnd4nw7s2adihde6emkcu\nmultisig bafk2bzacec4va3nmugyqjqrs3lqyr2ij67jhjia5frvx7omnh2isha6abxzya\npaymentchannel bafk2bzacebhdvjbjcgupklddfavzef4e4gnkt3xk3rbmgfmk7xhecszhfxeds\nstoragepower bafk2bzacedsetphfajgne4qy3vdrpyd6ekcmtfs2zkjut4r34cvnuoqemdrtw\nverifiedregistry bafk2bzacecf3yodlyudzukumehbuabgqljyhjt5ifiv4vetcfohnvsxzynwga\ndatacap bafk2bzacebb6uy2ys7tapekmtj7apnjg7oyj4ia5t7tlkvbmwtxwv74lb2pug\naccount bafk2bzacect2p7urje3pylrrrjy3tngn6yaih4gtzauuatf2jllk3ksgfiw2y\ncron bafk2bzacebcec3lffmos3nawm5cvwehssxeqwxixoyyfvejy7viszzsxzyu26\ninit bafk2bzacebtdq4zyuxk2fzbdkva6kc4mx75mkbfmldplfntayhbl5wkqou33i\nstorageminer bafk2bzacedyux5hlrildwutvvjdcsvjtwsoc5xnqdjl73ouiukgklekeuyfl4\n")])])])]),e._v(" "),v("li",[v("p",[e._v("若不排查问题,rust 日志级别"),v("strong",[e._v("不建议")]),e._v("设置为 "),v("code",[e._v("trace")]),e._v(",因为会打印较多日志")])]),e._v(" "),v("li",[v("p",[e._v("升级后可以通过命令来 "),v("code",[e._v("./venus state get-actor t01000")]),e._v(" 来确认是否升级成功")])])]),e._v(" "),v("h3",{attrs:{id:"venus-messager"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus-messager"}},[e._v("#")]),e._v(" venus-messager")]),e._v(" "),v("p",[e._v("功能:")]),e._v(" "),v("ol",[v("li",[e._v("增加对 basefee 的控制,可以对某个地址单独设置 basefee,当链上 basefee 高于限制的 basefee,消息将不会被推送出去")])]),e._v(" "),v("p",[e._v("依赖升级组件:")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("ol",[v("li",[e._v("升级后观察消息能否正常上链")])]),e._v(" "),v("h3",{attrs:{id:"venus-miner"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus-miner"}},[e._v("#")]),e._v(" venus-miner")]),e._v(" "),v("p",[e._v("影响功能:")]),e._v(" "),v("p",[e._v("依赖升级组件:")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("ol",[v("li",[e._v("从 "),v("code",[e._v("1.7.*")]),e._v("升级到"),v("code",[e._v("v1.8.0")]),e._v("会自动迁移配置文件,从 "),v("code",[e._v("1.6.*")]),e._v(" 升级到"),v("code",[e._v("v1.8.0")]),e._v("需重新初始化"),v("code",[e._v("repo")]),e._v("(init),"),v("a",{attrs:{href:"https://github.com/filecoin-project/venus-miner/blob/master/docs/zh/CHANGELOG.md#%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9-2",target:"_blank",rel:"noopener noreferrer"}},[e._v("参考"),v("OutboundLink")],1)]),e._v(" "),v("li",[e._v("升级后能否正常出块")])]),e._v(" "),v("h3",{attrs:{id:"venus-gateway"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus-gateway"}},[e._v("#")]),e._v(" venus-gateway")]),e._v(" "),v("p",[e._v("影响功能:")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("p",[e._v("编译:先 "),v("code",[e._v("make dist-clean")]),e._v(" 再 "),v("code",[e._v("make")])]),e._v(" "),v("ol",[v("li",[e._v("升级后检查钱包:"),v("code",[e._v("./venus-gateway wallet list")])]),e._v(" "),v("li",[e._v("升级后检查矿工:"),v("code",[e._v("./venus-gateway miner list")])])]),e._v(" "),v("h3",{attrs:{id:"venus-market"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus-market"}},[e._v("#")]),e._v(" venus-market")]),e._v(" "),v("p",[e._v("影响功能:")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("p",[e._v("编译:先 "),v("code",[e._v("make dist-clean")]),e._v(" 再 "),v("code",[e._v("make")])]),e._v(" "),v("h3",{attrs:{id:"venus-wallet"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[e._v("#")]),e._v(" venus-wallet")]),e._v(" "),v("p",[e._v("影响功能:")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("ol",[v("li",[e._v("启动后需要解锁钱包")]),e._v(" "),v("li",[e._v("是否注册到 gateway")])])])}),[],!1,null,null,null);a.default=s.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[53],{444:function(e,a,v){"use strict";v.r(a);var t=v(17),s=Object(t.a)({},(function(){var e=this,a=e.$createElement,v=e._self._c||a;return v("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[v("h1",{attrs:{id:"nv17-各组件升级文档"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#nv17-各组件升级文档"}},[e._v("#")]),e._v(" nv17 各组件升级文档")]),e._v(" "),v("p",[e._v("如果 "),v("code",[e._v("venus-wallet")]),e._v(" 或者 "),v("code",[e._v("venus-gateway")]),e._v(" 的版本从 "),v("code",[e._v("v1.6.x")]),e._v(" 升级到 "),v("code",[e._v("v1.8.0")]),e._v(",请先阅读 "),v("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5265",target:"_blank",rel:"noopener noreferrer"}},[e._v("Venus 组件 v1.7.0 使用注意事项 "),v("OutboundLink")],1),e._v(",注意 "),v("code",[e._v("venus-gateway")]),e._v(" 和 "),v("code",[e._v("venus-wallet")]),e._v("的升级顺序。")]),e._v(" "),v("h3",{attrs:{id:"时间线"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#时间线"}},[e._v("#")]),e._v(" 时间线")]),e._v(" "),v("p",[e._v("升级时间:2022-11-30T14:00:00Z,北京时间是 2022-11-30 22:00:00")]),e._v(" "),v("h3",{attrs:{id:"各组件版本"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#各组件版本"}},[e._v("#")]),e._v(" 各组件版本")]),e._v(" "),v("ul",[v("li",[v("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5386#discussioncomment-3893446",target:"_blank",rel:"noopener noreferrer"}},[e._v("calibrationnet"),v("OutboundLink")],1)]),e._v(" "),v("li",[v("a",{attrs:{href:"https://github.com/filecoin-project/venus/discussions/5386#discussioncomment-3893449",target:"_blank",rel:"noopener noreferrer"}},[e._v("mainnet"),v("OutboundLink")],1)])]),e._v(" "),v("h3",{attrs:{id:"venus-auth"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus-auth"}},[e._v("#")]),e._v(" venus-auth")]),e._v(" "),v("p",[e._v("影响功能:")]),e._v(" "),v("p",[e._v("依赖升级组件:无")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("ol",[v("li",[v("code",[e._v("miners")]),e._v(" 表增加字段 "),v("code",[e._v("open_mining")]),e._v(",0 表示不出块,1 表示出块,默认是 1")])]),e._v(" "),v("h3",{attrs:{id:"venus"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[e._v("#")]),e._v(" venus")]),e._v(" "),v("p",[e._v("影响功能:支持 nv17 网络")]),e._v(" "),v("p",[e._v("依赖升级组件:无")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("p",[e._v("编译:先 "),v("code",[e._v("make dist-clean")]),e._v(" 再 "),v("code",[e._v("make")]),e._v(",这样可以防止未能正常升级 "),v("code",[e._v("filecoin-ffi")]),e._v(" 而带来的问题")]),e._v(" "),v("ol",[v("li",[v("p",[e._v("升级后检查 vk 文件是否完整")])]),e._v(" "),v("li",[v("p",[e._v("升级后检查配置文件,升级高度是否正常设置,配置文件默认在 "),v("code",[e._v("~/.venus/config.json")]),e._v(" :")]),e._v(" "),v("div",{staticClass:"language- extra-class"},[v("pre",{pre:!0,attrs:{class:"language-text"}},[v("code",[e._v('# cali\n"upgradeSkyrHeight": 16800\n# mainnet\n"upgradeSkyrHeight": 2383680\n')])])])]),e._v(" "),v("li",[v("p",[e._v("升级后需检查是否正常同步区块")])]),e._v(" "),v("li",[v("p",[e._v("检查主网 v9 actors code,确保与下面输出一样")]),e._v(" "),v("div",{staticClass:"language- extra-class"},[v("pre",{pre:!0,attrs:{class:"language-text"}},[v("code",[e._v("./venus state actor-cids --network-version 17\n\n# 顺序可能会不一样\nNetwork Version: 17\nActor Version: 9\nActor CID\nreward bafk2bzacebezgbbmcm2gbcqwisus5fjvpj7hhmu5ubd37phuku3hmkfulxm2o\nsystem bafk2bzaceagvlo2jtahj7dloshrmwfulrd6e2izqev32qm46eumf754weec6c\n_manifest bafy2bzaceb6j6666h36xnhksu3ww4kxb6e25niayfgkdnifaqi6m6ooc66i6i\nstoragemarket bafk2bzacec3j7p6gklk64stax5px3xxd7hdtejaepnd4nw7s2adihde6emkcu\nmultisig bafk2bzacec4va3nmugyqjqrs3lqyr2ij67jhjia5frvx7omnh2isha6abxzya\npaymentchannel bafk2bzacebhdvjbjcgupklddfavzef4e4gnkt3xk3rbmgfmk7xhecszhfxeds\nstoragepower bafk2bzacedsetphfajgne4qy3vdrpyd6ekcmtfs2zkjut4r34cvnuoqemdrtw\nverifiedregistry bafk2bzacecf3yodlyudzukumehbuabgqljyhjt5ifiv4vetcfohnvsxzynwga\ndatacap bafk2bzacebb6uy2ys7tapekmtj7apnjg7oyj4ia5t7tlkvbmwtxwv74lb2pug\naccount bafk2bzacect2p7urje3pylrrrjy3tngn6yaih4gtzauuatf2jllk3ksgfiw2y\ncron bafk2bzacebcec3lffmos3nawm5cvwehssxeqwxixoyyfvejy7viszzsxzyu26\ninit bafk2bzacebtdq4zyuxk2fzbdkva6kc4mx75mkbfmldplfntayhbl5wkqou33i\nstorageminer bafk2bzacedyux5hlrildwutvvjdcsvjtwsoc5xnqdjl73ouiukgklekeuyfl4\n")])])])]),e._v(" "),v("li",[v("p",[e._v("若不排查问题,rust 日志级别"),v("strong",[e._v("不建议")]),e._v("设置为 "),v("code",[e._v("trace")]),e._v(",因为会打印较多日志")])]),e._v(" "),v("li",[v("p",[e._v("升级后可以通过命令来 "),v("code",[e._v("./venus state get-actor t01000")]),e._v(" 来确认是否升级成功")])])]),e._v(" "),v("h3",{attrs:{id:"venus-messager"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus-messager"}},[e._v("#")]),e._v(" venus-messager")]),e._v(" "),v("p",[e._v("功能:")]),e._v(" "),v("ol",[v("li",[e._v("增加对 basefee 的控制,可以对某个地址单独设置 basefee,当链上 basefee 高于限制的 basefee,消息将不会被推送出去")])]),e._v(" "),v("p",[e._v("依赖升级组件:")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("ol",[v("li",[e._v("升级后观察消息能否正常上链")])]),e._v(" "),v("h3",{attrs:{id:"venus-miner"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus-miner"}},[e._v("#")]),e._v(" venus-miner")]),e._v(" "),v("p",[e._v("影响功能:")]),e._v(" "),v("p",[e._v("依赖升级组件:")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("ol",[v("li",[e._v("从 "),v("code",[e._v("1.7.*")]),e._v("升级到"),v("code",[e._v("v1.8.0")]),e._v("会自动迁移配置文件,从 "),v("code",[e._v("1.6.*")]),e._v(" 升级到"),v("code",[e._v("v1.8.0")]),e._v("需重新初始化"),v("code",[e._v("repo")]),e._v("(init),"),v("a",{attrs:{href:"https://github.com/filecoin-project/venus-miner/blob/master/docs/zh/CHANGELOG.md#%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9-2",target:"_blank",rel:"noopener noreferrer"}},[e._v("参考"),v("OutboundLink")],1)]),e._v(" "),v("li",[e._v("升级后能否正常出块")])]),e._v(" "),v("h3",{attrs:{id:"venus-gateway"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus-gateway"}},[e._v("#")]),e._v(" venus-gateway")]),e._v(" "),v("p",[e._v("影响功能:")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("p",[e._v("编译:先 "),v("code",[e._v("make dist-clean")]),e._v(" 再 "),v("code",[e._v("make")])]),e._v(" "),v("ol",[v("li",[e._v("升级后检查钱包:"),v("code",[e._v("./venus-gateway wallet list")])]),e._v(" "),v("li",[e._v("升级后检查矿工:"),v("code",[e._v("./venus-gateway miner list")])])]),e._v(" "),v("h3",{attrs:{id:"venus-market"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus-market"}},[e._v("#")]),e._v(" venus-market")]),e._v(" "),v("p",[e._v("影响功能:")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("p",[e._v("编译:先 "),v("code",[e._v("make dist-clean")]),e._v(" 再 "),v("code",[e._v("make")])]),e._v(" "),v("h3",{attrs:{id:"venus-wallet"}},[v("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[e._v("#")]),e._v(" venus-wallet")]),e._v(" "),v("p",[e._v("影响功能:")]),e._v(" "),v("p",[e._v("注意事项:")]),e._v(" "),v("ol",[v("li",[e._v("启动后需要解锁钱包")]),e._v(" "),v("li",[e._v("是否注册到 gateway")])])])}),[],!1,null,null,null);a.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/55.570dabf5.js b/assets/js/55.38df145b.js similarity index 99% rename from assets/js/55.570dabf5.js rename to assets/js/55.38df145b.js index bcb4aa06b..852b22e07 100644 --- a/assets/js/55.570dabf5.js +++ b/assets/js/55.38df145b.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[55],{447:function(v,e,a){"use strict";a.r(e);var t=a(17),_=Object(t.a)({},(function(){var v=this,e=v.$createElement,a=v._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":v.$parent.slotKey}},[a("h1",{attrs:{id:"venus-各组件升级文档"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-各组件升级文档"}},[v._v("#")]),v._v(" Venus 各组件升级文档")]),v._v(" "),a("h2",{attrs:{id:"注意事项"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#注意事项"}},[v._v("#")]),v._v(" 注意事项")]),v._v(" "),a("ol",[a("li",[v._v("所有组件全部更换")]),v._v(" "),a("li",[v._v("更新完通过 curl 命令调用 "),a("code",[v._v("Version")]),v._v(" 接口检查版本号,各组件接口调用方式:https://github.com/filecoin-project/venus/issues/5132")]),v._v(" "),a("li",[v._v("pre/pro消息上链的情况")]),v._v(" "),a("li",[v._v("WD 消息上链的情况")]),v._v(" "),a("li",[v._v("出块情况是否正常")]),v._v(" "),a("li",[v._v("gas fee 相关设置是否生效")])]),v._v(" "),a("h2",{attrs:{id:"需要升级的组件"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#需要升级的组件"}},[v._v("#")]),v._v(" 需要升级的组件")]),v._v(" "),a("table",[a("thead",[a("tr",[a("th",[v._v("组件名")]),v._v(" "),a("th",[v._v("tag")]),v._v(" "),a("th",[v._v("commit")])])]),v._v(" "),a("tbody",[a("tr",[a("td",[v._v("venus-auth")]),v._v(" "),a("td",[v._v("v1.11.0")]),v._v(" "),a("td",[v._v("0c30588")])]),v._v(" "),a("tr",[a("td",[v._v("venus")]),v._v(" "),a("td",[v._v("v1.11.1")]),v._v(" "),a("td",[v._v("870f1b4")])]),v._v(" "),a("tr",[a("td",[v._v("venus-messager")]),v._v(" "),a("td",[v._v("v1.11.0")]),v._v(" "),a("td",[v._v("e4c4ab4")])]),v._v(" "),a("tr",[a("td",[v._v("venus-gateway")]),v._v(" "),a("td",[v._v("v1.11.1")]),v._v(" "),a("td",[v._v("8d7be74")])]),v._v(" "),a("tr",[a("td",[v._v("venus-wallet")]),v._v(" "),a("td",[v._v("v1.11.0")]),v._v(" "),a("td",[v._v("7afa1eb")])]),v._v(" "),a("tr",[a("td",[v._v("venus-miner")]),v._v(" "),a("td",[v._v("v1.11.0")]),v._v(" "),a("td",[v._v("a30f342")])]),v._v(" "),a("tr",[a("td",[v._v("venus-market")]),v._v(" "),a("td",[v._v("v2.7.1")]),v._v(" "),a("td",[v._v("b920551")])]),v._v(" "),a("tr",[a("td",[v._v("venus-sector-manager")]),v._v(" "),a("td",[v._v("v0.6.0-rc3")]),v._v(" "),a("td",[v._v("134b502")])]),v._v(" "),a("tr",[a("td",[v._v("venus-worker")]),v._v(" "),a("td",[v._v("无需升级")]),v._v(" "),a("td",[v._v("-")])])])]),v._v(" "),a("h3",{attrs:{id:"升级顺序"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#升级顺序"}},[v._v("#")]),v._v(" 升级顺序")]),v._v(" "),a("ol",[a("li",[v._v("venus-auth")]),v._v(" "),a("li",[v._v("venus")]),v._v(" "),a("li",[v._v("venus-gateway")]),v._v(" "),a("li",[v._v("venus-messager")]),v._v(" "),a("li",[v._v("venus-miner")]),v._v(" "),a("li",[v._v("venus-market")]),v._v(" "),a("li",[v._v("venus-wallet-pro")]),v._v(" "),a("li",[v._v("venus-sector-manager")])]),v._v(" "),a("h3",{attrs:{id:"venus-auth"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-auth"}},[v._v("#")]),v._v(" venus-auth")]),v._v(" "),a("p",[v._v("影响功能:")]),v._v(" "),a("ul",[a("li",[v._v("其他组件对获取 auth 的服务")])]),v._v(" "),a("p",[v._v("依赖升级组件:无")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v('启动时使用 "--disable-perm-check" ,暂时关闭 auth 接口保护的特性')]),v._v(" "),a("li",[v._v("创建 token 之前需要先创建对应的用户")])]),v._v(" "),a("p",[v._v("备注:")]),v._v(" "),a("ul",[a("li",[v._v('新版本的 auth 在启动的时候会自动生成一个名为 "defaultLocalToken" 的 token, 该 token 用于 auth-cli 执行命令时的鉴权')])]),v._v(" "),a("h3",{attrs:{id:"venus"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[v._v("#")]),v._v(" venus")]),v._v(" "),a("p",[v._v("影响功能:无")]),v._v(" "),a("p",[v._v("依赖升级组件:venus-auth")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("p",[v._v("编译:先 "),a("code",[v._v("make dist-clean")]),v._v(" 再 "),a("code",[v._v("make")]),v._v(",这样可以防止未能正常升级 "),a("code",[v._v("filecoin-ffi")]),v._v(" 而带来的问题")]),v._v(" "),a("p",[a("strong",[v._v("启动时应带上 flag --auth-token ,或者修改配置文件 api.venusAuthToken 配置项")])]),v._v(" "),a("ol",[a("li",[a("p",[v._v("升级后检查 vk 文件是否完整")])]),v._v(" "),a("li",[a("p",[v._v("升级后检查配置文件,通过日志检查 "),a("code",[v._v("UpgradeLightningHeight")]),v._v(" 和 "),a("code",[v._v("UpgradeThunderHeight")]),v._v(" 是否正常 :")]),v._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[v._v("# cali\nUpgradeLightningHeight:489094\nUpgradeThunderHeight:489094+3120\n# mainnet\nUpgradeLightningHeight:2809800\nUpgradeThunderHeight: 2809800 + 2880*21 = 2870280\n")])])])]),v._v(" "),a("li",[a("p",[v._v("升级后需检查是否正常同步区块")])]),v._v(" "),a("li",[a("p",[v._v("检查主网 v11 actors code,确保与下面输出一样")]),v._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[v._v("./venus state actor-cids --network-version 19\n\n# 顺序可能会不一样\nNetwork Version: 19\nActor Version: 11\nActor CID\nreward bafk2bzacebwjw2vxkobs7r2kwjdqqb42h2kucyuk6flbnyzw4odg5s4mogamo\nsystem bafk2bzaced7npe5mt5nh72jxr2igi2sofoa7gedt4w6kueeke7i3xxugqpjfm\neam bafk2bzaceaelwt4yfsfvsu3pa3miwalsvy3cfkcjvmt4sqoeopsppnrmj2mf2\ncron bafk2bzacebpewdvvgt6tk2o2u4rcovdgym67tadiis5usemlbejg7k3kt567o\ndatacap bafk2bzacebslykoyrb2hm7aacjngqgd5n2wmeii2goadrs5zaya3pvdf6pdnq\nethaccount bafk2bzaceclkmc4yidxc6lgcjpfypbde2eddnevcveo4j5kmh4ek6inqysz2k\nevm bafk2bzacediwh6etwzwmb5pivtclpdplewdjzphouwqpppce6opisjv2fjqfe\ninit bafk2bzaceckwf3w6n2nw6eh77ktmsxqgsvshonvgnyk5q5syyngtetxvasfxg\nmultisig bafk2bzaceafajceqwg5ybiz7xw6rxammuirkgtuv625gzaehsqfprm4bazjmk\npaymentchannel bafk2bzaceb4e6cnsnviegmqvsmoxzncruvhra54piq7bwiqfqevle6oob2gvo\naccount bafk2bzacealnlr7st6lkwoh6wxpf2hnrlex5sknaopgmkr2tuhg7vmbfy45so\nstorageminer bafk2bzacec24okjqrp7c7rj3hbrs5ez5apvwah2ruka6haesgfngf37mhk6us\nstoragepower bafk2bzaceaxgloxuzg35vu7l7tohdgaq2frsfp4ejmuo7tkoxjp5zqrze6sf4\nplaceholder bafk2bzacedfvut2myeleyq67fljcrw4kkmn5pb5dpyozovj7jpoez5irnc3ro\nverifiedregistry bafk2bzacedej3dnr62g2je2abmyjg3xqv4otvh6e26du5fcrhvw7zgcaaez3a\nstoragemarket bafk2bzaceazu2j2zu4p24tr22btnqzkhzjvyjltlvsagaj6w3syevikeb5d7m\n")])])])]),v._v(" "),a("li",[a("p",[v._v("若不排查问题,rust 日志级别"),a("strong",[v._v("不建议")]),v._v("设置为 "),a("code",[v._v("trace")]),v._v(",因为会打印较多日志")])]),v._v(" "),a("li",[a("p",[v._v("升级后可以通过命令来 "),a("code",[v._v("./venus state get-actor t01000")]),v._v(" 来确认是否升级成功")])]),v._v(" "),a("li",[a("p",[v._v("actor 迁移")]),v._v(" "),a("p",[a("strong",[v._v("经测试本次预迁移时间在 80 秒左右,正式迁移时间再 60 秒左右")])]),v._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[v._v("预迁移高度是升级高度前 120 个高度:2809800 - 120 = 2809680\npre-migration 开始:STARTING pre-migration 结束:COMPLETED pre-migration\nmigration 开始:STARTING migration 结束:COMPLETED migration\n")])])])])]),v._v(" "),a("h3",{attrs:{id:"venus-gateway"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-gateway"}},[v._v("#")]),v._v(" venus-gateway")]),v._v(" "),a("p",[v._v("影响功能:无")]),v._v(" "),a("p",[v._v("依赖升级组件:venus-auth")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v("编译时,需要先 "),a("code",[v._v("make dist-clean")]),v._v(" 再 "),a("code",[v._v("make")])]),v._v(" "),a("li",[v._v("启动时,应带上 flag --auth-token ,或者直接在配置中设置配置项:AuthConfig.Token")]),v._v(" "),a("li",[v._v("移除 flag:"),a("code",[v._v("--disable-address-verify")]),v._v(","),a("strong",[v._v("升级时检查启动命令是否还在使用该 flag")])])]),v._v(" "),a("h3",{attrs:{id:"venus-messager"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-messager"}},[v._v("#")]),v._v(" venus-messager")]),v._v(" "),a("p",[v._v("影响功能:")]),v._v(" "),a("ul",[a("li",[v._v("消息 replace")]),v._v(" "),a("li",[v._v("list --block 命令")])]),v._v(" "),a("p",[v._v("依赖升级组件:venus, venus-auth, venus-gateway")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v("升级第一次启动时,带上 auth-token flag, 或者先修改配置文件 JWTConfig.Token 配置项")]),v._v(" "),a("li",[v._v("升级之后需要观察能否正常接收消息,消息能否正常上链")])]),v._v(" "),a("p",[v._v("备注:")]),v._v(" "),a("ul",[a("li",[v._v("replace fee 系数的最小值 由 1.25 下调 到 1.11")]),v._v(" "),a("li",[v._v("list blocked 消息的时候,unfill 状态的消息也会作为 blocked 消息被列出来")])]),v._v(" "),a("h3",{attrs:{id:"venus-miner"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-miner"}},[v._v("#")]),v._v(" venus-miner")]),v._v(" "),a("p",[v._v("影响功能:")]),v._v(" "),a("ul",[a("li",[v._v("选消息增加超时机制")])]),v._v(" "),a("p",[v._v("依赖升级组件:auth, venus, gateway")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v("配置文件中 [Auth].[Token] 必须配置,且在 venus-auth 中具有 admin 权限,不要使用"),a("code",[v._v("defaultLocalToken")]),v._v("对应的 token,应手动创建一个。")])]),v._v(" "),a("h3",{attrs:{id:"venus-market"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-market"}},[v._v("#")]),v._v(" venus-market")]),v._v(" "),a("p",[v._v("影响功能:")]),v._v(" "),a("ul",[a("li",[v._v("新增和调整部分命令\n依赖升级组件:auth, venus, gateway, messager")])]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v("启动时必须带上 cs-token, 或者修改 配置项 AuthNode.Token")])]),v._v(" "),a("h3",{attrs:{id:"venus-wallet"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[v._v("#")]),v._v(" venus-wallet")]),v._v(" "),a("p",[v._v("影响功能:无")]),v._v(" "),a("p",[v._v("依赖升级组件:gateway")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v("升级后观察是否正常签名,消息能否正常上链")])]),v._v(" "),a("h3",{attrs:{id:"venus-sector-manger"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-sector-manger"}},[v._v("#")]),v._v(" venus-sector-manger")]),v._v(" "),a("p",[v._v("影响功能:fip-0061 wdpost 算法改动")]),v._v(" "),a("p",[v._v("依赖升级组件:链服务组件")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v("编译时,需要先 "),a("code",[v._v("make dist-clean")]),v._v(" 再 "),a("code",[v._v("make")])]),v._v(" "),a("li",[v._v("wdpost 算法回滚步骤\n"),a("ol",[a("li",[v._v("vsm 切换到 [fip-0061-fallback] https://github.com/ipfs-force-community/venus-cluster/tree/fip-0061-fallback 分支")])])])]),v._v(" "),a("hr"),v._v(" "),a("p",[v._v("更新结果验证步骤:")]),v._v(" "),a("ol",[a("li",[v._v("程序启动正常")]),v._v(" "),a("li",[v._v("pre/pro消息正常上链")]),v._v(" "),a("li",[v._v("出块正常")]),v._v(" "),a("li",[v._v("WD 上链正常")]),v._v(" "),a("li",[v._v("算力增长正常")]),v._v(" "),a("li",[v._v("真实订单检索正常")]),v._v(" "),a("li",[v._v("数据库各种 gas,生命周期,聚合设置正常")])]),v._v(" "),a("h3",{attrs:{id:"数据库变更"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#数据库变更"}},[v._v("#")]),v._v(" 数据库变更")]),v._v(" "),a("ol",[a("li",[a("p",[a("a",{attrs:{href:"https://github.com/filecoin-project/venus/issues/5558",target:"_blank",rel:"noopener noreferrer"}},[v._v("venus-messager 增加对 actor 的配置及相关命令,新增 "),a("code",[v._v("actor_cfg")]),v._v(" 表"),a("OutboundLink")],1)])]),v._v(" "),a("li",[a("p",[v._v("venus-market "),a("code",[v._v("storage_deals")]),v._v(" 表增加索引:"),a("code",[v._v("CREATE INDEX idx_cdpprovider_state ON storage_deals(cdp_provider,state)")])])])])])}),[],!1,null,null,null);e.default=_.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[55],{446:function(v,e,a){"use strict";a.r(e);var t=a(17),_=Object(t.a)({},(function(){var v=this,e=v.$createElement,a=v._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":v.$parent.slotKey}},[a("h1",{attrs:{id:"venus-各组件升级文档"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-各组件升级文档"}},[v._v("#")]),v._v(" Venus 各组件升级文档")]),v._v(" "),a("h2",{attrs:{id:"注意事项"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#注意事项"}},[v._v("#")]),v._v(" 注意事项")]),v._v(" "),a("ol",[a("li",[v._v("所有组件全部更换")]),v._v(" "),a("li",[v._v("更新完通过 curl 命令调用 "),a("code",[v._v("Version")]),v._v(" 接口检查版本号,各组件接口调用方式:https://github.com/filecoin-project/venus/issues/5132")]),v._v(" "),a("li",[v._v("pre/pro消息上链的情况")]),v._v(" "),a("li",[v._v("WD 消息上链的情况")]),v._v(" "),a("li",[v._v("出块情况是否正常")]),v._v(" "),a("li",[v._v("gas fee 相关设置是否生效")])]),v._v(" "),a("h2",{attrs:{id:"需要升级的组件"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#需要升级的组件"}},[v._v("#")]),v._v(" 需要升级的组件")]),v._v(" "),a("table",[a("thead",[a("tr",[a("th",[v._v("组件名")]),v._v(" "),a("th",[v._v("tag")]),v._v(" "),a("th",[v._v("commit")])])]),v._v(" "),a("tbody",[a("tr",[a("td",[v._v("venus-auth")]),v._v(" "),a("td",[v._v("v1.11.0")]),v._v(" "),a("td",[v._v("0c30588")])]),v._v(" "),a("tr",[a("td",[v._v("venus")]),v._v(" "),a("td",[v._v("v1.11.1")]),v._v(" "),a("td",[v._v("870f1b4")])]),v._v(" "),a("tr",[a("td",[v._v("venus-messager")]),v._v(" "),a("td",[v._v("v1.11.0")]),v._v(" "),a("td",[v._v("e4c4ab4")])]),v._v(" "),a("tr",[a("td",[v._v("venus-gateway")]),v._v(" "),a("td",[v._v("v1.11.1")]),v._v(" "),a("td",[v._v("8d7be74")])]),v._v(" "),a("tr",[a("td",[v._v("venus-wallet")]),v._v(" "),a("td",[v._v("v1.11.0")]),v._v(" "),a("td",[v._v("7afa1eb")])]),v._v(" "),a("tr",[a("td",[v._v("venus-miner")]),v._v(" "),a("td",[v._v("v1.11.0")]),v._v(" "),a("td",[v._v("a30f342")])]),v._v(" "),a("tr",[a("td",[v._v("venus-market")]),v._v(" "),a("td",[v._v("v2.7.1")]),v._v(" "),a("td",[v._v("b920551")])]),v._v(" "),a("tr",[a("td",[v._v("venus-sector-manager")]),v._v(" "),a("td",[v._v("v0.6.0-rc3")]),v._v(" "),a("td",[v._v("134b502")])]),v._v(" "),a("tr",[a("td",[v._v("venus-worker")]),v._v(" "),a("td",[v._v("无需升级")]),v._v(" "),a("td",[v._v("-")])])])]),v._v(" "),a("h3",{attrs:{id:"升级顺序"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#升级顺序"}},[v._v("#")]),v._v(" 升级顺序")]),v._v(" "),a("ol",[a("li",[v._v("venus-auth")]),v._v(" "),a("li",[v._v("venus")]),v._v(" "),a("li",[v._v("venus-gateway")]),v._v(" "),a("li",[v._v("venus-messager")]),v._v(" "),a("li",[v._v("venus-miner")]),v._v(" "),a("li",[v._v("venus-market")]),v._v(" "),a("li",[v._v("venus-wallet-pro")]),v._v(" "),a("li",[v._v("venus-sector-manager")])]),v._v(" "),a("h3",{attrs:{id:"venus-auth"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-auth"}},[v._v("#")]),v._v(" venus-auth")]),v._v(" "),a("p",[v._v("影响功能:")]),v._v(" "),a("ul",[a("li",[v._v("其他组件对获取 auth 的服务")])]),v._v(" "),a("p",[v._v("依赖升级组件:无")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v('启动时使用 "--disable-perm-check" ,暂时关闭 auth 接口保护的特性')]),v._v(" "),a("li",[v._v("创建 token 之前需要先创建对应的用户")])]),v._v(" "),a("p",[v._v("备注:")]),v._v(" "),a("ul",[a("li",[v._v('新版本的 auth 在启动的时候会自动生成一个名为 "defaultLocalToken" 的 token, 该 token 用于 auth-cli 执行命令时的鉴权')])]),v._v(" "),a("h3",{attrs:{id:"venus"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[v._v("#")]),v._v(" venus")]),v._v(" "),a("p",[v._v("影响功能:无")]),v._v(" "),a("p",[v._v("依赖升级组件:venus-auth")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("p",[v._v("编译:先 "),a("code",[v._v("make dist-clean")]),v._v(" 再 "),a("code",[v._v("make")]),v._v(",这样可以防止未能正常升级 "),a("code",[v._v("filecoin-ffi")]),v._v(" 而带来的问题")]),v._v(" "),a("p",[a("strong",[v._v("启动时应带上 flag --auth-token ,或者修改配置文件 api.venusAuthToken 配置项")])]),v._v(" "),a("ol",[a("li",[a("p",[v._v("升级后检查 vk 文件是否完整")])]),v._v(" "),a("li",[a("p",[v._v("升级后检查配置文件,通过日志检查 "),a("code",[v._v("UpgradeLightningHeight")]),v._v(" 和 "),a("code",[v._v("UpgradeThunderHeight")]),v._v(" 是否正常 :")]),v._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[v._v("# cali\nUpgradeLightningHeight:489094\nUpgradeThunderHeight:489094+3120\n# mainnet\nUpgradeLightningHeight:2809800\nUpgradeThunderHeight: 2809800 + 2880*21 = 2870280\n")])])])]),v._v(" "),a("li",[a("p",[v._v("升级后需检查是否正常同步区块")])]),v._v(" "),a("li",[a("p",[v._v("检查主网 v11 actors code,确保与下面输出一样")]),v._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[v._v("./venus state actor-cids --network-version 19\n\n# 顺序可能会不一样\nNetwork Version: 19\nActor Version: 11\nActor CID\nreward bafk2bzacebwjw2vxkobs7r2kwjdqqb42h2kucyuk6flbnyzw4odg5s4mogamo\nsystem bafk2bzaced7npe5mt5nh72jxr2igi2sofoa7gedt4w6kueeke7i3xxugqpjfm\neam bafk2bzaceaelwt4yfsfvsu3pa3miwalsvy3cfkcjvmt4sqoeopsppnrmj2mf2\ncron bafk2bzacebpewdvvgt6tk2o2u4rcovdgym67tadiis5usemlbejg7k3kt567o\ndatacap bafk2bzacebslykoyrb2hm7aacjngqgd5n2wmeii2goadrs5zaya3pvdf6pdnq\nethaccount bafk2bzaceclkmc4yidxc6lgcjpfypbde2eddnevcveo4j5kmh4ek6inqysz2k\nevm bafk2bzacediwh6etwzwmb5pivtclpdplewdjzphouwqpppce6opisjv2fjqfe\ninit bafk2bzaceckwf3w6n2nw6eh77ktmsxqgsvshonvgnyk5q5syyngtetxvasfxg\nmultisig bafk2bzaceafajceqwg5ybiz7xw6rxammuirkgtuv625gzaehsqfprm4bazjmk\npaymentchannel bafk2bzaceb4e6cnsnviegmqvsmoxzncruvhra54piq7bwiqfqevle6oob2gvo\naccount bafk2bzacealnlr7st6lkwoh6wxpf2hnrlex5sknaopgmkr2tuhg7vmbfy45so\nstorageminer bafk2bzacec24okjqrp7c7rj3hbrs5ez5apvwah2ruka6haesgfngf37mhk6us\nstoragepower bafk2bzaceaxgloxuzg35vu7l7tohdgaq2frsfp4ejmuo7tkoxjp5zqrze6sf4\nplaceholder bafk2bzacedfvut2myeleyq67fljcrw4kkmn5pb5dpyozovj7jpoez5irnc3ro\nverifiedregistry bafk2bzacedej3dnr62g2je2abmyjg3xqv4otvh6e26du5fcrhvw7zgcaaez3a\nstoragemarket bafk2bzaceazu2j2zu4p24tr22btnqzkhzjvyjltlvsagaj6w3syevikeb5d7m\n")])])])]),v._v(" "),a("li",[a("p",[v._v("若不排查问题,rust 日志级别"),a("strong",[v._v("不建议")]),v._v("设置为 "),a("code",[v._v("trace")]),v._v(",因为会打印较多日志")])]),v._v(" "),a("li",[a("p",[v._v("升级后可以通过命令来 "),a("code",[v._v("./venus state get-actor t01000")]),v._v(" 来确认是否升级成功")])]),v._v(" "),a("li",[a("p",[v._v("actor 迁移")]),v._v(" "),a("p",[a("strong",[v._v("经测试本次预迁移时间在 80 秒左右,正式迁移时间再 60 秒左右")])]),v._v(" "),a("div",{staticClass:"language- extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[v._v("预迁移高度是升级高度前 120 个高度:2809800 - 120 = 2809680\npre-migration 开始:STARTING pre-migration 结束:COMPLETED pre-migration\nmigration 开始:STARTING migration 结束:COMPLETED migration\n")])])])])]),v._v(" "),a("h3",{attrs:{id:"venus-gateway"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-gateway"}},[v._v("#")]),v._v(" venus-gateway")]),v._v(" "),a("p",[v._v("影响功能:无")]),v._v(" "),a("p",[v._v("依赖升级组件:venus-auth")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v("编译时,需要先 "),a("code",[v._v("make dist-clean")]),v._v(" 再 "),a("code",[v._v("make")])]),v._v(" "),a("li",[v._v("启动时,应带上 flag --auth-token ,或者直接在配置中设置配置项:AuthConfig.Token")]),v._v(" "),a("li",[v._v("移除 flag:"),a("code",[v._v("--disable-address-verify")]),v._v(","),a("strong",[v._v("升级时检查启动命令是否还在使用该 flag")])])]),v._v(" "),a("h3",{attrs:{id:"venus-messager"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-messager"}},[v._v("#")]),v._v(" venus-messager")]),v._v(" "),a("p",[v._v("影响功能:")]),v._v(" "),a("ul",[a("li",[v._v("消息 replace")]),v._v(" "),a("li",[v._v("list --block 命令")])]),v._v(" "),a("p",[v._v("依赖升级组件:venus, venus-auth, venus-gateway")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v("升级第一次启动时,带上 auth-token flag, 或者先修改配置文件 JWTConfig.Token 配置项")]),v._v(" "),a("li",[v._v("升级之后需要观察能否正常接收消息,消息能否正常上链")])]),v._v(" "),a("p",[v._v("备注:")]),v._v(" "),a("ul",[a("li",[v._v("replace fee 系数的最小值 由 1.25 下调 到 1.11")]),v._v(" "),a("li",[v._v("list blocked 消息的时候,unfill 状态的消息也会作为 blocked 消息被列出来")])]),v._v(" "),a("h3",{attrs:{id:"venus-miner"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-miner"}},[v._v("#")]),v._v(" venus-miner")]),v._v(" "),a("p",[v._v("影响功能:")]),v._v(" "),a("ul",[a("li",[v._v("选消息增加超时机制")])]),v._v(" "),a("p",[v._v("依赖升级组件:auth, venus, gateway")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v("配置文件中 [Auth].[Token] 必须配置,且在 venus-auth 中具有 admin 权限,不要使用"),a("code",[v._v("defaultLocalToken")]),v._v("对应的 token,应手动创建一个。")])]),v._v(" "),a("h3",{attrs:{id:"venus-market"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-market"}},[v._v("#")]),v._v(" venus-market")]),v._v(" "),a("p",[v._v("影响功能:")]),v._v(" "),a("ul",[a("li",[v._v("新增和调整部分命令\n依赖升级组件:auth, venus, gateway, messager")])]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v("启动时必须带上 cs-token, 或者修改 配置项 AuthNode.Token")])]),v._v(" "),a("h3",{attrs:{id:"venus-wallet"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[v._v("#")]),v._v(" venus-wallet")]),v._v(" "),a("p",[v._v("影响功能:无")]),v._v(" "),a("p",[v._v("依赖升级组件:gateway")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v("升级后观察是否正常签名,消息能否正常上链")])]),v._v(" "),a("h3",{attrs:{id:"venus-sector-manger"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#venus-sector-manger"}},[v._v("#")]),v._v(" venus-sector-manger")]),v._v(" "),a("p",[v._v("影响功能:fip-0061 wdpost 算法改动")]),v._v(" "),a("p",[v._v("依赖升级组件:链服务组件")]),v._v(" "),a("p",[v._v("注意事项:")]),v._v(" "),a("ul",[a("li",[v._v("编译时,需要先 "),a("code",[v._v("make dist-clean")]),v._v(" 再 "),a("code",[v._v("make")])]),v._v(" "),a("li",[v._v("wdpost 算法回滚步骤\n"),a("ol",[a("li",[v._v("vsm 切换到 [fip-0061-fallback] https://github.com/ipfs-force-community/venus-cluster/tree/fip-0061-fallback 分支")])])])]),v._v(" "),a("hr"),v._v(" "),a("p",[v._v("更新结果验证步骤:")]),v._v(" "),a("ol",[a("li",[v._v("程序启动正常")]),v._v(" "),a("li",[v._v("pre/pro消息正常上链")]),v._v(" "),a("li",[v._v("出块正常")]),v._v(" "),a("li",[v._v("WD 上链正常")]),v._v(" "),a("li",[v._v("算力增长正常")]),v._v(" "),a("li",[v._v("真实订单检索正常")]),v._v(" "),a("li",[v._v("数据库各种 gas,生命周期,聚合设置正常")])]),v._v(" "),a("h3",{attrs:{id:"数据库变更"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#数据库变更"}},[v._v("#")]),v._v(" 数据库变更")]),v._v(" "),a("ol",[a("li",[a("p",[a("a",{attrs:{href:"https://github.com/filecoin-project/venus/issues/5558",target:"_blank",rel:"noopener noreferrer"}},[v._v("venus-messager 增加对 actor 的配置及相关命令,新增 "),a("code",[v._v("actor_cfg")]),v._v(" 表"),a("OutboundLink")],1)])]),v._v(" "),a("li",[a("p",[v._v("venus-market "),a("code",[v._v("storage_deals")]),v._v(" 表增加索引:"),a("code",[v._v("CREATE INDEX idx_cdpprovider_state ON storage_deals(cdp_provider,state)")])])])])])}),[],!1,null,null,null);e.default=_.exports}}]); \ No newline at end of file diff --git a/assets/js/56.41060eed.js b/assets/js/56.a740b860.js similarity index 99% rename from assets/js/56.41060eed.js rename to assets/js/56.a740b860.js index 0de228288..045427408 100644 --- a/assets/js/56.41060eed.js +++ b/assets/js/56.a740b860.js @@ -1 +1 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[56],{446:function(v,a,e){"use strict";e.r(a);var _=e(17),t=Object(_.a)({},(function(){var v=this,a=v.$createElement,e=v._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":v.$parent.slotKey}},[e("h1",{attrs:{id:"venus-各组件升级文档"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#venus-各组件升级文档"}},[v._v("#")]),v._v(" Venus 各组件升级文档")]),v._v(" "),e("h2",{attrs:{id:"注意事项"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#注意事项"}},[v._v("#")]),v._v(" 注意事项")]),v._v(" "),e("ol",[e("li",[v._v("所有组件全部更换")]),v._v(" "),e("li",[v._v("更新完通过 curl 命令调用 "),e("code",[v._v("Version")]),v._v(" 接口检查版本号,各组件接口调用方式:https://github.com/filecoin-project/venus/issues/5132")]),v._v(" "),e("li",[v._v("pre/pro消息上链的情况")]),v._v(" "),e("li",[v._v("WD消息上链的情况")]),v._v(" "),e("li",[v._v("出块情况是否正常")]),v._v(" "),e("li",[v._v("gas fee 相关设置是否生效")])]),v._v(" "),e("h2",{attrs:{id:"需要升级的组件"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#需要升级的组件"}},[v._v("#")]),v._v(" 需要升级的组件")]),v._v(" "),e("table",[e("thead",[e("tr",[e("th",[v._v("组件名")]),v._v(" "),e("th",[v._v("tag")]),v._v(" "),e("th",[v._v("commit")])])]),v._v(" "),e("tbody",[e("tr",[e("td",[v._v("sophon-auth")]),v._v(" "),e("td",[v._v("v1.14.0")]),v._v(" "),e("td",[v._v("7caadbc")])]),v._v(" "),e("tr",[e("td",[v._v("venus")]),v._v(" "),e("td",[v._v("v1.14.2")]),v._v(" "),e("td",[v._v("9204048")])]),v._v(" "),e("tr",[e("td",[v._v("sophon-messager")]),v._v(" "),e("td",[v._v("v1.14.0")]),v._v(" "),e("td",[v._v("e5f8371")])]),v._v(" "),e("tr",[e("td",[v._v("soohon-gateway")]),v._v(" "),e("td",[v._v("v1.14.0")]),v._v(" "),e("td",[v._v("1adf038")])]),v._v(" "),e("tr",[e("td",[v._v("venus-wallet")]),v._v(" "),e("td",[v._v("v1.14.0")]),v._v(" "),e("td",[v._v("b478cd0")])]),v._v(" "),e("tr",[e("td",[v._v("sophon-miner")]),v._v(" "),e("td",[v._v("v1.14.0")]),v._v(" "),e("td",[v._v("9ca976c")])]),v._v(" "),e("tr",[e("td",[v._v("droplet")]),v._v(" "),e("td",[v._v("v2.10.0")]),v._v(" "),e("td",[v._v("6daf168")])]),v._v(" "),e("tr",[e("td",[v._v("damocles-manager")]),v._v(" "),e("td",[v._v("v0.9.2")]),v._v(" "),e("td",[v._v("f3c5400")])]),v._v(" "),e("tr",[e("td",[v._v("damocles-worker")]),v._v(" "),e("td",[v._v("v0.9.2")]),v._v(" "),e("td",[v._v("f3c5400")])])])]),v._v(" "),e("h3",{attrs:{id:"升级顺序"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#升级顺序"}},[v._v("#")]),v._v(" 升级顺序")]),v._v(" "),e("ol",[e("li",[v._v("sophon-auth")]),v._v(" "),e("li",[v._v("venus")]),v._v(" "),e("li",[v._v("soohon-gateway")]),v._v(" "),e("li",[v._v("sophon-messager")]),v._v(" "),e("li",[v._v("sophon-miner")]),v._v(" "),e("li",[v._v("droplet")]),v._v(" "),e("li",[v._v("venus-wallet")]),v._v(" "),e("li",[v._v("damocles-manager")]),v._v(" "),e("li",[v._v("damocles-worker")])]),v._v(" "),e("h3",{attrs:{id:"sophon-auth"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sophon-auth"}},[v._v("#")]),v._v(" sophon-auth")]),v._v(" "),e("p",[v._v("影响功能:")]),v._v(" "),e("ul",[e("li",[v._v("其他组件对获取 auth 的服务")])]),v._v(" "),e("p",[v._v("依赖升级组件: 无")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("启动后能否正常鉴权")])]),v._v(" "),e("h3",{attrs:{id:"venus"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[v._v("#")]),v._v(" venus")]),v._v(" "),e("p",[v._v("影响功能:无")]),v._v(" "),e("p",[v._v("依赖升级组件: sophon-auth")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("p",[v._v("编译:先 "),e("code",[v._v("make dist-clean")]),v._v(" 再 "),e("code",[v._v("make")]),v._v(",这样可以防止未能正常升级 "),e("code",[v._v("filecoin-ffi")]),v._v(" 而带来的问题\n"),e("strong",[v._v("如果 "),e("code",[v._v("~/.venus")]),v._v(" 存在且需要导入快照,需要先删除 "),e("code",[v._v("~/.venus/version")]),v._v(" 文件再导入快照")])]),v._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[v._v("本次升级 migration(actor迁移)使用的CPU越多,消耗的内存也越多,所以需要限制CPU使用的数量。\n在 venus 中可以通过环境变量(VENUS_MIGRATION_MAX_WORKER_COUN)来控制 migration 使用的CPU数量,\n例子:export VENUS_MIGRATION_MAX_WORKER_COUNT=13。以下是对于不同机器内存时,建议设置 VENUS_MIGRATION_MAX_WORKER_COUNT 的数量:\n\n48G VENUS_MIGRATION_MAX_WORKER_COUNT=13\n64G VENUS_MIGRATION_MAX_WORKER_COUNT=18\n96G VENUS_MIGRATION_MAX_WORKER_COUNT=24\n")])])]),e("ol",[e("li",[e("p",[v._v("升级后检查vk文件是否完整")])]),v._v(" "),e("li",[e("p",[v._v("升级后执行命令 "),e("code",[v._v("./venus state network-info")]),v._v(",然后检查通过日志检查 UpgradeWatermelonHeight 是否正常:")]),v._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[v._v("# cali\nUpgradeWatermelonHeight: 1013134\n# mainnet\nUpgradeWatermelonHeight: 3469380\n")])])])]),v._v(" "),e("li",[e("p",[v._v("升级后需检查是否正常同步区块")])]),v._v(" "),e("li",[e("p",[v._v("检查主网 v12 actors code,确保与下面输出一样")]),v._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[v._v("./venus state actor-cids --network-version 21\n\n# 顺序可能会不一样\nNetwork Version: 21\nActor Version: 12\nActor CID\ndatacap bafk2bzacebpiwb2ml4qbnnaayxumtk43ryhc63exdgnhivy3hwgmzemawsmpq\nethaccount bafk2bzaceb4gkau2vgsijcxpfuq33bd7w3efr2rrhxrwiacjmns2ntdiamswq\nreward bafk2bzacealqnxn5lwzwexd6reav4dppypquklx2ujlnvaxiqk2tzstyvkp5u\nverifiedregistry bafk2bzacedudgflxc75c77c6zkmfyq4u2xuk7k6xw6dfdccarjrvxx453b77q\neam bafk2bzaceb3elj4hfbbjp7g5bptc7su7mptszl4nlqfedilxvstjo5ungm6oe\nmultisig bafk2bzacecw5lyp3n3t67xdwrmo36h4z7afc3lobmmr6wg55w6yjzg5jhmh42\nstoragemarket bafk2bzacedylkg5am446lcuih4voyzdn4yjeqfsxfzh5b6mcuhx4mok5ph5c4\nsystem bafk2bzacebfqrja2hip7esf4eafxjmu6xcogoqu5xxtgdg7xa5szgvvdguchu\naccount bafk2bzaceboftg75mdiba7xbo2i3uvgtca4brhnr3u5ptihonixgpnrvhpxoa\ncron bafk2bzacechxjkfe2cehx4s7skj3wzfpzf7zolds64khrrrs66bhazsemktls\nplaceholder bafk2bzacedfvut2myeleyq67fljcrw4kkmn5pb5dpyozovj7jpoez5irnc3ro\nstoragepower bafk2bzacecsij5tpfzjpfuckxvccv2p3bdqjklkrfyyoei6lx5dyj5j4fvjm6\nevm bafk2bzacecmnyfiwb52tkbwmm2dsd7ysi3nvuxl3lmspy7pl26wxj4zj7w4wi\ninit bafk2bzacebllyegx5r6lggf6ymyetbp7amacwpuxakhtjvjtvoy2bfkzk3vms\npaymentchannel bafk2bzacectv4cm47bnhga5febf3lo3fq47g72kmmp2xd5s6tcxz7hiqdywa4\nstorageminer bafk2bzacedo75pabe4i2l3hvhtsjmijrcytd2y76xwe573uku25fi7sugqld6\n")])])])]),v._v(" "),e("li",[e("p",[v._v("若不排查问题,rust日志级别"),e("strong",[v._v("不建议")]),v._v("设置为 "),e("code",[v._v("trace")]),v._v(",因为会打印较多日志")])]),v._v(" "),e("li",[e("p",[v._v("升级后可以通过命令来 "),e("code",[v._v("./venus state get-actor t01000")]),v._v(" 来确认是否升级成功")])]),v._v(" "),e("li",[e("p",[v._v("actor 迁移")]),v._v(" "),e("p",[e("strong",[v._v("经测试本次预迁移时间在 20-30 分钟,正式迁移时间在 70 秒左右")])]),v._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[v._v("预迁移高度是升级高度前 180 个高度:\npre-migration 开始:STARTING pre-migration 结束:COMPLETED pre-migration\nmigration 开始:STARTING migration 结束:COMPLETED migration\n")])])])])]),v._v(" "),e("h3",{attrs:{id:"sophon-gateway"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sophon-gateway"}},[v._v("#")]),v._v(" sophon-gateway")]),v._v(" "),e("p",[v._v("影响功能:无")]),v._v(" "),e("p",[v._v("依赖升级组件: sophon-auth")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("编译时,需要先 "),e("code",[v._v("make dist-clean")]),v._v(" 再 "),e("code",[v._v("make")])])]),v._v(" "),e("h3",{attrs:{id:"sophon-messager"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sophon-messager"}},[v._v("#")]),v._v(" sophon-messager")]),v._v(" "),e("p",[v._v("影响功能:")]),v._v(" "),e("p",[v._v("依赖升级组件: venus, sophon-auth, soohon-gateway")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("升级之后需要观察能否正常接收消息, 消息能否正常上链")])]),v._v(" "),e("h3",{attrs:{id:"sophon-miner"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sophon-miner"}},[v._v("#")]),v._v(" sophon-miner")]),v._v(" "),e("p",[v._v("影响功能:")]),v._v(" "),e("p",[v._v("依赖升级组件:auth, venus, gateway")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("配置文件中 [Auth].[Token] 必须配置,且在sophon-auth中具有admin权限,不要使用"),e("code",[v._v("defaultLocalToken")]),v._v("对应的token,应手动创建一个.")])]),v._v(" "),e("h3",{attrs:{id:"droplet"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#droplet"}},[v._v("#")]),v._v(" droplet")]),v._v(" "),e("p",[v._v("影响功能:")]),v._v(" "),e("ul",[e("li",[v._v("支持 v2 版本发单协议")]),v._v(" "),e("li",[v._v("支持离线计算 commP")])]),v._v(" "),e("p",[v._v("依赖升级组件: auth, venus, gateway, messager")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("升级后能否正常发单和检索")])]),v._v(" "),e("h3",{attrs:{id:"venus-wallet"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[v._v("#")]),v._v(" venus-wallet")]),v._v(" "),e("p",[v._v("影响功能: 无")]),v._v(" "),e("p",[v._v("依赖升级组件: gateway")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("升级后观察是否正常签名,消息能否正常上链")])]),v._v(" "),e("h3",{attrs:{id:"damocles-manager"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#damocles-manager"}},[v._v("#")]),v._v(" damocles-manager")]),v._v(" "),e("p",[v._v("依赖升级组件: 链服务组件")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("编译时,需要先 "),e("code",[v._v("make dist-clean")]),v._v(" 再 "),e("code",[v._v("make")])])]),v._v(" "),e("h3",{attrs:{id:"damocles-worker"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#damocles-worker"}},[v._v("#")]),v._v(" damocles-worker")]),v._v(" "),e("p",[v._v("依赖升级组件: damocles-manager")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("建议等封装完所有的任务之后, 没有正在进行的的封装任务时, 进行程序更新。如果需要再封装进行的过程中进行更新的话,封装线程可能会卡在 "),e("code",[v._v("SyntheticPoRepNeeded")]),v._v(" 状态。这个时候重置任务的状态为 "),e("code",[v._v("PCSubmitted")]),v._v(" 即可:"),e("code",[v._v("damocles-manager util worker resume PCSubmitted")])]),v._v(" "),e("li",[v._v("新的证明类型 SyntheticPoRep 会使用新的证明参数文件。 如果启用 SyntheticPoRep 最好提前准备好新的证明参数,"),e("strong",[v._v("证明参数有问题可能会导致 SyntheticPoRep 死锁")]),v._v("。")])]),v._v(" "),e("hr"),v._v(" "),e("p",[v._v("更新结果验证步骤:")]),v._v(" "),e("ol",[e("li",[v._v("程序启动正常")]),v._v(" "),e("li",[v._v("pre/pro消息正常上链")]),v._v(" "),e("li",[v._v("出块正常")]),v._v(" "),e("li",[v._v("WD上链正常")]),v._v(" "),e("li",[v._v("算力增长正常")]),v._v(" "),e("li",[v._v("真实订单检索正常")]),v._v(" "),e("li",[v._v("数据库各种gas,生命周期,聚合设置正常")])]),v._v(" "),e("h3",{attrs:{id:"数据库变更"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#数据库变更"}},[v._v("#")]),v._v(" 数据库变更")]),v._v(" "),e("ol",[e("li",[v._v("droplet "),e("code",[v._v("storage_deals")]),v._v(" 表增加 "),e("code",[v._v("id")]),v._v(" 字段 ==> "),e("code",[v._v("ALTER TABLE storage_deals ADD id varchar(128)")])])])])}),[],!1,null,null,null);a.default=t.exports}}]); \ No newline at end of file +(window.webpackJsonp=window.webpackJsonp||[]).push([[56],{447:function(v,a,e){"use strict";e.r(a);var _=e(17),t=Object(_.a)({},(function(){var v=this,a=v.$createElement,e=v._self._c||a;return e("ContentSlotsDistributor",{attrs:{"slot-key":v.$parent.slotKey}},[e("h1",{attrs:{id:"venus-各组件升级文档"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#venus-各组件升级文档"}},[v._v("#")]),v._v(" Venus 各组件升级文档")]),v._v(" "),e("h2",{attrs:{id:"注意事项"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#注意事项"}},[v._v("#")]),v._v(" 注意事项")]),v._v(" "),e("ol",[e("li",[v._v("所有组件全部更换")]),v._v(" "),e("li",[v._v("更新完通过 curl 命令调用 "),e("code",[v._v("Version")]),v._v(" 接口检查版本号,各组件接口调用方式:https://github.com/filecoin-project/venus/issues/5132")]),v._v(" "),e("li",[v._v("pre/pro消息上链的情况")]),v._v(" "),e("li",[v._v("WD消息上链的情况")]),v._v(" "),e("li",[v._v("出块情况是否正常")]),v._v(" "),e("li",[v._v("gas fee 相关设置是否生效")])]),v._v(" "),e("h2",{attrs:{id:"需要升级的组件"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#需要升级的组件"}},[v._v("#")]),v._v(" 需要升级的组件")]),v._v(" "),e("table",[e("thead",[e("tr",[e("th",[v._v("组件名")]),v._v(" "),e("th",[v._v("tag")]),v._v(" "),e("th",[v._v("commit")])])]),v._v(" "),e("tbody",[e("tr",[e("td",[v._v("sophon-auth")]),v._v(" "),e("td",[v._v("v1.14.0")]),v._v(" "),e("td",[v._v("7caadbc")])]),v._v(" "),e("tr",[e("td",[v._v("venus")]),v._v(" "),e("td",[v._v("v1.14.2")]),v._v(" "),e("td",[v._v("9204048")])]),v._v(" "),e("tr",[e("td",[v._v("sophon-messager")]),v._v(" "),e("td",[v._v("v1.14.0")]),v._v(" "),e("td",[v._v("e5f8371")])]),v._v(" "),e("tr",[e("td",[v._v("soohon-gateway")]),v._v(" "),e("td",[v._v("v1.14.0")]),v._v(" "),e("td",[v._v("1adf038")])]),v._v(" "),e("tr",[e("td",[v._v("venus-wallet")]),v._v(" "),e("td",[v._v("v1.14.0")]),v._v(" "),e("td",[v._v("b478cd0")])]),v._v(" "),e("tr",[e("td",[v._v("sophon-miner")]),v._v(" "),e("td",[v._v("v1.14.0")]),v._v(" "),e("td",[v._v("9ca976c")])]),v._v(" "),e("tr",[e("td",[v._v("droplet")]),v._v(" "),e("td",[v._v("v2.10.0")]),v._v(" "),e("td",[v._v("6daf168")])]),v._v(" "),e("tr",[e("td",[v._v("damocles-manager")]),v._v(" "),e("td",[v._v("v0.9.2")]),v._v(" "),e("td",[v._v("f3c5400")])]),v._v(" "),e("tr",[e("td",[v._v("damocles-worker")]),v._v(" "),e("td",[v._v("v0.9.2")]),v._v(" "),e("td",[v._v("f3c5400")])])])]),v._v(" "),e("h3",{attrs:{id:"升级顺序"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#升级顺序"}},[v._v("#")]),v._v(" 升级顺序")]),v._v(" "),e("ol",[e("li",[v._v("sophon-auth")]),v._v(" "),e("li",[v._v("venus")]),v._v(" "),e("li",[v._v("soohon-gateway")]),v._v(" "),e("li",[v._v("sophon-messager")]),v._v(" "),e("li",[v._v("sophon-miner")]),v._v(" "),e("li",[v._v("droplet")]),v._v(" "),e("li",[v._v("venus-wallet")]),v._v(" "),e("li",[v._v("damocles-manager")]),v._v(" "),e("li",[v._v("damocles-worker")])]),v._v(" "),e("h3",{attrs:{id:"sophon-auth"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sophon-auth"}},[v._v("#")]),v._v(" sophon-auth")]),v._v(" "),e("p",[v._v("影响功能:")]),v._v(" "),e("ul",[e("li",[v._v("其他组件对获取 auth 的服务")])]),v._v(" "),e("p",[v._v("依赖升级组件: 无")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("启动后能否正常鉴权")])]),v._v(" "),e("h3",{attrs:{id:"venus"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#venus"}},[v._v("#")]),v._v(" venus")]),v._v(" "),e("p",[v._v("影响功能:无")]),v._v(" "),e("p",[v._v("依赖升级组件: sophon-auth")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("p",[v._v("编译:先 "),e("code",[v._v("make dist-clean")]),v._v(" 再 "),e("code",[v._v("make")]),v._v(",这样可以防止未能正常升级 "),e("code",[v._v("filecoin-ffi")]),v._v(" 而带来的问题\n"),e("strong",[v._v("如果 "),e("code",[v._v("~/.venus")]),v._v(" 存在且需要导入快照,需要先删除 "),e("code",[v._v("~/.venus/version")]),v._v(" 文件再导入快照")])]),v._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[v._v("本次升级 migration(actor迁移)使用的CPU越多,消耗的内存也越多,所以需要限制CPU使用的数量。\n在 venus 中可以通过环境变量(VENUS_MIGRATION_MAX_WORKER_COUN)来控制 migration 使用的CPU数量,\n例子:export VENUS_MIGRATION_MAX_WORKER_COUNT=13。以下是对于不同机器内存时,建议设置 VENUS_MIGRATION_MAX_WORKER_COUNT 的数量:\n\n48G VENUS_MIGRATION_MAX_WORKER_COUNT=13\n64G VENUS_MIGRATION_MAX_WORKER_COUNT=18\n96G VENUS_MIGRATION_MAX_WORKER_COUNT=24\n")])])]),e("ol",[e("li",[e("p",[v._v("升级后检查vk文件是否完整")])]),v._v(" "),e("li",[e("p",[v._v("升级后执行命令 "),e("code",[v._v("./venus state network-info")]),v._v(",然后检查通过日志检查 UpgradeWatermelonHeight 是否正常:")]),v._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[v._v("# cali\nUpgradeWatermelonHeight: 1013134\n# mainnet\nUpgradeWatermelonHeight: 3469380\n")])])])]),v._v(" "),e("li",[e("p",[v._v("升级后需检查是否正常同步区块")])]),v._v(" "),e("li",[e("p",[v._v("检查主网 v12 actors code,确保与下面输出一样")]),v._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[v._v("./venus state actor-cids --network-version 21\n\n# 顺序可能会不一样\nNetwork Version: 21\nActor Version: 12\nActor CID\ndatacap bafk2bzacebpiwb2ml4qbnnaayxumtk43ryhc63exdgnhivy3hwgmzemawsmpq\nethaccount bafk2bzaceb4gkau2vgsijcxpfuq33bd7w3efr2rrhxrwiacjmns2ntdiamswq\nreward bafk2bzacealqnxn5lwzwexd6reav4dppypquklx2ujlnvaxiqk2tzstyvkp5u\nverifiedregistry bafk2bzacedudgflxc75c77c6zkmfyq4u2xuk7k6xw6dfdccarjrvxx453b77q\neam bafk2bzaceb3elj4hfbbjp7g5bptc7su7mptszl4nlqfedilxvstjo5ungm6oe\nmultisig bafk2bzacecw5lyp3n3t67xdwrmo36h4z7afc3lobmmr6wg55w6yjzg5jhmh42\nstoragemarket bafk2bzacedylkg5am446lcuih4voyzdn4yjeqfsxfzh5b6mcuhx4mok5ph5c4\nsystem bafk2bzacebfqrja2hip7esf4eafxjmu6xcogoqu5xxtgdg7xa5szgvvdguchu\naccount bafk2bzaceboftg75mdiba7xbo2i3uvgtca4brhnr3u5ptihonixgpnrvhpxoa\ncron bafk2bzacechxjkfe2cehx4s7skj3wzfpzf7zolds64khrrrs66bhazsemktls\nplaceholder bafk2bzacedfvut2myeleyq67fljcrw4kkmn5pb5dpyozovj7jpoez5irnc3ro\nstoragepower bafk2bzacecsij5tpfzjpfuckxvccv2p3bdqjklkrfyyoei6lx5dyj5j4fvjm6\nevm bafk2bzacecmnyfiwb52tkbwmm2dsd7ysi3nvuxl3lmspy7pl26wxj4zj7w4wi\ninit bafk2bzacebllyegx5r6lggf6ymyetbp7amacwpuxakhtjvjtvoy2bfkzk3vms\npaymentchannel bafk2bzacectv4cm47bnhga5febf3lo3fq47g72kmmp2xd5s6tcxz7hiqdywa4\nstorageminer bafk2bzacedo75pabe4i2l3hvhtsjmijrcytd2y76xwe573uku25fi7sugqld6\n")])])])]),v._v(" "),e("li",[e("p",[v._v("若不排查问题,rust日志级别"),e("strong",[v._v("不建议")]),v._v("设置为 "),e("code",[v._v("trace")]),v._v(",因为会打印较多日志")])]),v._v(" "),e("li",[e("p",[v._v("升级后可以通过命令来 "),e("code",[v._v("./venus state get-actor t01000")]),v._v(" 来确认是否升级成功")])]),v._v(" "),e("li",[e("p",[v._v("actor 迁移")]),v._v(" "),e("p",[e("strong",[v._v("经测试本次预迁移时间在 20-30 分钟,正式迁移时间在 70 秒左右")])]),v._v(" "),e("div",{staticClass:"language- extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[v._v("预迁移高度是升级高度前 180 个高度:\npre-migration 开始:STARTING pre-migration 结束:COMPLETED pre-migration\nmigration 开始:STARTING migration 结束:COMPLETED migration\n")])])])])]),v._v(" "),e("h3",{attrs:{id:"sophon-gateway"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sophon-gateway"}},[v._v("#")]),v._v(" sophon-gateway")]),v._v(" "),e("p",[v._v("影响功能:无")]),v._v(" "),e("p",[v._v("依赖升级组件: sophon-auth")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("编译时,需要先 "),e("code",[v._v("make dist-clean")]),v._v(" 再 "),e("code",[v._v("make")])])]),v._v(" "),e("h3",{attrs:{id:"sophon-messager"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sophon-messager"}},[v._v("#")]),v._v(" sophon-messager")]),v._v(" "),e("p",[v._v("影响功能:")]),v._v(" "),e("p",[v._v("依赖升级组件: venus, sophon-auth, soohon-gateway")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("升级之后需要观察能否正常接收消息, 消息能否正常上链")])]),v._v(" "),e("h3",{attrs:{id:"sophon-miner"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#sophon-miner"}},[v._v("#")]),v._v(" sophon-miner")]),v._v(" "),e("p",[v._v("影响功能:")]),v._v(" "),e("p",[v._v("依赖升级组件:auth, venus, gateway")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("配置文件中 [Auth].[Token] 必须配置,且在sophon-auth中具有admin权限,不要使用"),e("code",[v._v("defaultLocalToken")]),v._v("对应的token,应手动创建一个.")])]),v._v(" "),e("h3",{attrs:{id:"droplet"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#droplet"}},[v._v("#")]),v._v(" droplet")]),v._v(" "),e("p",[v._v("影响功能:")]),v._v(" "),e("ul",[e("li",[v._v("支持 v2 版本发单协议")]),v._v(" "),e("li",[v._v("支持离线计算 commP")])]),v._v(" "),e("p",[v._v("依赖升级组件: auth, venus, gateway, messager")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("升级后能否正常发单和检索")])]),v._v(" "),e("h3",{attrs:{id:"venus-wallet"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#venus-wallet"}},[v._v("#")]),v._v(" venus-wallet")]),v._v(" "),e("p",[v._v("影响功能: 无")]),v._v(" "),e("p",[v._v("依赖升级组件: gateway")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("升级后观察是否正常签名,消息能否正常上链")])]),v._v(" "),e("h3",{attrs:{id:"damocles-manager"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#damocles-manager"}},[v._v("#")]),v._v(" damocles-manager")]),v._v(" "),e("p",[v._v("依赖升级组件: 链服务组件")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("编译时,需要先 "),e("code",[v._v("make dist-clean")]),v._v(" 再 "),e("code",[v._v("make")])])]),v._v(" "),e("h3",{attrs:{id:"damocles-worker"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#damocles-worker"}},[v._v("#")]),v._v(" damocles-worker")]),v._v(" "),e("p",[v._v("依赖升级组件: damocles-manager")]),v._v(" "),e("p",[v._v("注意事项:")]),v._v(" "),e("ul",[e("li",[v._v("建议等封装完所有的任务之后, 没有正在进行的的封装任务时, 进行程序更新。如果需要再封装进行的过程中进行更新的话,封装线程可能会卡在 "),e("code",[v._v("SyntheticPoRepNeeded")]),v._v(" 状态。这个时候重置任务的状态为 "),e("code",[v._v("PCSubmitted")]),v._v(" 即可:"),e("code",[v._v("damocles-manager util worker resume PCSubmitted")])]),v._v(" "),e("li",[v._v("新的证明类型 SyntheticPoRep 会使用新的证明参数文件。 如果启用 SyntheticPoRep 最好提前准备好新的证明参数,"),e("strong",[v._v("证明参数有问题可能会导致 SyntheticPoRep 死锁")]),v._v("。")])]),v._v(" "),e("hr"),v._v(" "),e("p",[v._v("更新结果验证步骤:")]),v._v(" "),e("ol",[e("li",[v._v("程序启动正常")]),v._v(" "),e("li",[v._v("pre/pro消息正常上链")]),v._v(" "),e("li",[v._v("出块正常")]),v._v(" "),e("li",[v._v("WD上链正常")]),v._v(" "),e("li",[v._v("算力增长正常")]),v._v(" "),e("li",[v._v("真实订单检索正常")]),v._v(" "),e("li",[v._v("数据库各种gas,生命周期,聚合设置正常")])]),v._v(" "),e("h3",{attrs:{id:"数据库变更"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#数据库变更"}},[v._v("#")]),v._v(" 数据库变更")]),v._v(" "),e("ol",[e("li",[v._v("droplet "),e("code",[v._v("storage_deals")]),v._v(" 表增加 "),e("code",[v._v("id")]),v._v(" 字段 ==> "),e("code",[v._v("ALTER TABLE storage_deals ADD id varchar(128)")])])])])}),[],!1,null,null,null);a.default=t.exports}}]); \ No newline at end of file diff --git a/assets/js/app.b4fd4919.js b/assets/js/app.8057c934.js similarity index 78% rename from assets/js/app.b4fd4919.js rename to assets/js/app.8057c934.js index 6d13be23a..4cdc4ca85 100644 --- a/assets/js/app.b4fd4919.js +++ b/assets/js/app.8057c934.js @@ -1,8 +1,8 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[0],[]]);!function(e){function n(n){for(var r,i,s=n[0],c=n[1],l=n[2],p=0,d=[];p0?o(r(e),9007199254740991):0}},function(e,n){var t=Array.isArray;e.exports=t},function(e,n,t){var r=t(152),o="object"==typeof self&&self&&self.Object===Object&&self,a=r||o||Function("return this")();e.exports=a},function(e,n,t){"use strict";function r(e,n,t,r,o,a,i,s){var c,l="function"==typeof e?e.options:e;if(n&&(l.render=n,l.staticRenderFns=t,l._compiled=!0),r&&(l.functional=!0),a&&(l._scopeId="data-v-"+a),i?(c=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(i)},l._ssrRegister=c):o&&(c=s?function(){o.call(this,(l.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(l.functional){l._injectStyles=c;var u=l.render;l.render=function(e,n){return c.call(n),u(e,n)}}else{var p=l.beforeCreate;l.beforeCreate=p?[].concat(p,c):[c]}return{exports:e,options:l}}t.d(n,"a",(function(){return r}))},function(e,n,t){var r=t(5),o=t(1),a=t(7),i=Object.defineProperty,s={},c=function(e){throw e};e.exports=function(e,n){if(a(s,e))return s[e];n||(n={});var t=[][e],l=!!a(n,"ACCESSORS")&&n.ACCESSORS,u=a(n,0)?n[0]:c,p=a(n,1)?n[1]:void 0;return s[e]=!!t&&!o((function(){if(l&&!r)return!0;var e={length:-1};l?i(e,1,{enumerable:!0,get:c}):e[1]=1,t.call(e,u,p)}))}},function(e,n,t){var r=t(126),o=t(2),a=function(e){return"function"==typeof e?e:void 0};e.exports=function(e,n){return arguments.length<2?a(r[e])||a(o[e]):r[e]&&r[e][n]||o[e]&&o[e][n]}},function(e,n,t){var r=t(5),o=t(84),a=t(35),i=t(11),s=t(39),c=t(7),l=t(121),u=Object.getOwnPropertyDescriptor;n.f=r?u:function(e,n){if(e=i(e),n=s(n,!0),l)try{return u(e,n)}catch(e){}if(c(e,n))return a(!o.f.call(e,n),e[n])}},function(e,n){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},function(e,n,t){"use strict";var r=t(0),o=t(32).filter,a=t(59),i=t(18),s=a("filter"),c=i("filter");r({target:"Array",proto:!0,forced:!s||!c},{filter:function(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}})},function(e,n){e.exports=!1},function(e,n){var t={}.toString;e.exports=function(e){return t.call(e).slice(8,-1)}},function(e,n){e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},function(e,n,t){var r=t(235),o=t(238);e.exports=function(e,n){var t=o(e,n);return r(t)?t:void 0}},function(e,n,t){"use strict";var r=t(114).charAt,o=t(31),a=t(127),i=o.set,s=o.getterFor("String Iterator");a(String,"String",(function(e){i(this,{type:"String Iterator",string:String(e),index:0})}),(function(){var e,n=s(this),t=n.string,o=n.index;return o>=t.length?{value:void 0,done:!0}:(e=r(t,o),n.index+=e.length,{value:e,done:!1})}))},function(e,n,t){var r,o=t(6),a=t(110),i=t(82),s=t(40),c=t(125),l=t(79),u=t(55),p=u("IE_PROTO"),d=function(){},f=function(e){return" - + @@ -46,6 +46,6 @@

Distributed Infrastructure

Adhering to design principles of distributed systems, Venus chain service enables you to scale and guarantees availability to your storage providing systems

Optimized Storage Deal

Solution for both storage client and storage provider enables seamless storage deal process

Reimagined Storage Power

Completely revamped sealer submodule to help you to grow and maintain your storage power with more efficiency and stability

- + diff --git a/intro/_Footer.html b/intro/_Footer.html index 3c57ce098..a5d76756a 100644 --- a/intro/_Footer.html +++ b/intro/_Footer.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

See something missing? Have tips to share? File an issue (opens new window), and we'll follow up as soon as possible. (If you have write permission in this repo, feel free to edit directly.)

Last Updated: 12/11/2023, 8:37:54 AM
- + diff --git a/intro/contribute-docs.html b/intro/contribute-docs.html index 1c58b4cf7..117fce16a 100644 --- a/intro/contribute-docs.html +++ b/intro/contribute-docs.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -72,6 +72,6 @@ Droplet (opens new window)

- + diff --git a/intro/damocles.html b/intro/damocles.html index 347005192..f66e9e586 100644 --- a/intro/damocles.html +++ b/intro/damocles.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

damocles

# Damocles

Damocles, formerly known as Venus Power Service, is THE Filecoin storage power solution. Learn more about Damocles here (opens new window).

Last Updated: 12/11/2023, 8:37:54 AM
- + diff --git a/intro/droplet.html b/intro/droplet.html index a6db24be2..fe367346f 100644 --- a/intro/droplet.html +++ b/intro/droplet.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

droplet

# Droplet

Droplet, formerly known as Venus Deal Service, is THE Filecoin storage deal solution. Learn more about Droplet here (opens new window).

Last Updated: 12/11/2023, 8:37:54 AM
- + diff --git a/intro/index.html b/intro/index.html index cb33bb0b9..4649c4214 100644 --- a/intro/index.html +++ b/intro/index.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -42,6 +42,6 @@ →

- + diff --git a/intro/one-pager.html b/intro/one-pager.html index c2e1c5b8d..f93137ffd 100644 --- a/intro/one-pager.html +++ b/intro/one-pager.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -47,6 +47,6 @@ (opens new window)

- + diff --git a/intro/sophon.html b/intro/sophon.html index 5b4b9a44f..830b0f1d6 100644 --- a/intro/sophon.html +++ b/intro/sophon.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

sophon

# Sophon

Sophon, formerly known as Venus chain service, is THE Filecoin super node solution. Learn more about Sophon here (opens new window).

Last Updated: 12/11/2023, 8:37:54 AM
- + diff --git a/operation/Efficiency_of_sealing.html b/operation/Efficiency_of_sealing.html index 4581cb882..8464e7047 100644 --- a/operation/Efficiency_of_sealing.html +++ b/operation/Efficiency_of_sealing.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -140,6 +140,6 @@ MaxSealingSectors = 7

# Stop-loss

If one of tasks fails too many times, manual intervention is needed to get sealing pipeline back to its normal output.

Remove sectors when you have the following issues.

  1. Expired ticket
  2. Expired Commit
  3. Corrupted proof params

To remove incomplete sectors.

venus-sealer sectors remove --really-do-it <sectorNum>
 
Last Updated: 12/11/2023, 8:37:54 AM
- + diff --git a/operation/System_monitor_of_Zabbix.html b/operation/System_monitor_of_Zabbix.html index 33c3de9f7..32272e61d 100644 --- a/operation/System_monitor_of_Zabbix.html +++ b/operation/System_monitor_of_Zabbix.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -113,6 +113,6 @@

Check zabbix RAM usage.

Check problems in dashboard.

Last Updated: 12/11/2023, 8:37:54 AM
- + diff --git a/operation/_Footer.html b/operation/_Footer.html index ecba7098d..6c06149c2 100644 --- a/operation/_Footer.html +++ b/operation/_Footer.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

See something missing? Have tips to share? File an issue (opens new window), and we'll follow up as soon as possible. (If you have write permission in this repo, feel free to edit directly.)

Last Updated: 12/11/2023, 8:37:54 AM
- + diff --git a/operation/example-single-box.html b/operation/example-single-box.html index 3406fb0d0..3c522d1ba 100644 --- a/operation/example-single-box.html +++ b/operation/example-single-box.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

# Venus Single box setup

This is an exmaple venus single box setup that is estimated to grow 1TiB power per day.

# Specs

Parts Recommendation
CPU 3970X * 1 (32 core)
RAM 512G
NVMe (for sealing) 3T/SSD
SSD (for OS) 500G
GPU RTX 3080 * 1

# Job scheduling

Task Core limit Minutes RAM(G) Hourly production rate Daily growth(T)
P1 * 5 20 220 376 1.3636 1.0227
AP, P2, Commit 12 10 120 3 1.125

For more information on core limit, please refer to the next tutorial.

Last Updated: 12/11/2023, 8:37:54 AM
- + diff --git a/operation/index.html b/operation/index.html index d042304fd..8e6189fd0 100644 --- a/operation/index.html +++ b/operation/index.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -42,6 +42,6 @@ →

- + diff --git a/operation/lotus-vs-venus.html b/operation/lotus-vs-venus.html index 46b4d881a..35997e4a5 100644 --- a/operation/lotus-vs-venus.html +++ b/operation/lotus-vs-venus.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

# Commands from Lotus

Many basic commands including but not limited to creating worker/controler addresses (opens new window), setting different types of configurations (opens new window), or changing storage locations (opens new window) apply to both Lotus and Venus. Node operators are expected to follow the same process as what is instructed on the Lotus documentation. If you encounter any questions please do not hesitate to reach out to us on #fil-venus (opens new window).

Last Updated: 12/11/2023, 8:37:54 AM
- + diff --git a/operation/nv15-upgrade.html b/operation/nv15-upgrade.html index 830490928..0138e6b91 100644 --- a/operation/nv15-upgrade.html +++ b/operation/nv15-upgrade.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -51,6 +51,6 @@

- + diff --git a/operation/nv16-upgrade.html b/operation/nv16-upgrade.html index aaaac4aac..ce3d71710 100644 --- a/operation/nv16-upgrade.html +++ b/operation/nv16-upgrade.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -69,6 +69,6 @@ →

- + diff --git a/operation/nv17-upgrade.html b/operation/nv17-upgrade.html index c1897f6f1..8563663de 100644 --- a/operation/nv17-upgrade.html +++ b/operation/nv17-upgrade.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -70,6 +70,6 @@ →

- + diff --git a/operation/nv18-upgrade.html b/operation/nv18-upgrade.html index 6f8cc1a9c..f6974880a 100644 --- a/operation/nv18-upgrade.html +++ b/operation/nv18-upgrade.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -98,6 +98,6 @@ →

- + diff --git a/operation/nv19-upgrade.html b/operation/nv19-upgrade.html index 4dc6e03a5..d097ebaea 100644 --- a/operation/nv19-upgrade.html +++ b/operation/nv19-upgrade.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -79,6 +79,6 @@ →

- + diff --git a/operation/nv21-upgrade.html b/operation/nv21-upgrade.html index 20397e291..6f011777a 100644 --- a/operation/nv21-upgrade.html +++ b/operation/nv21-upgrade.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -87,6 +87,6 @@ →

- + diff --git a/questions.html b/questions.html index e9d8fc4ba..e0b40de13 100644 --- a/questions.html +++ b/questions.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

# Have a question?

Filecoin.io (opens new window) - general information about the Filecoin network

Community Channels (opens new window) - links to Filecoin community chat and forum

Last Updated: 12/11/2023, 8:37:54 AM
- + diff --git a/zh/TODO.html b/zh/TODO.html index a1f184f58..fa09cf7ab 100644 --- a/zh/TODO.html +++ b/zh/TODO.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -39,6 +39,6 @@ 简体中文

# 原则

  基于目前的需要,先从重构 guide 和 modules 模块,让两块联动,形成比较易读的 venus 集群部署介绍。

  • modules 模块存储各组件的简介,将不相干的文档移到对应位置

  • guide 和 modules 对于组件介绍存在很多重复的,只保留一份

  • modules 模块组件介绍老旧,超链接到项目的介绍文档,避免项目内更新后 doc 中不及时及重复劳动

  • guide 将组件介绍,编译构建,部署文档独立

  • guide 模块增加 QA 模块,将 venus discussion 的问题以超链接方式统一到 QA 模块

  • 部署模块尽量少一些设计的介绍,简明扼要,每个指定的操作尽量不涉及不相干的,以免造成误解

# TODO list

  • [ ] modules 模块

    • [ ] 引导页内容更新
    • [ ] 不相关文档移走
    • [ ] 文档命名一致
    • [ ] 组件介绍匹配项目进度
    • [x] 编译构建独立到一个文档
    • [ ] 组件文档移除从项目中搬过来的内容,用超链接
    • [ ] market 和 cluster 模块的技术文档移到 modules 模块,
  • [ ] guide 模块

    • [ ] 将部署用到的基础知识单独形成文档
    • [x] 编译构建超链接到对应文档
    • [x] 增加部分组件的验证:怎么判断部署成功
    • [ ] 目录结构调整
      • [ ] market 和 cluster 归属到链服务部署和独立组件部署文档
      • [ ] .fil_withdraw_and_send.md.swp 文件删除
      • [ ] sealer 文档放到单独的目录
    • [ ] Troubleshooting-&-FAQ.md 用超链接方式管理 venus discussion
  • [ ] 移除没有价值或过时的文档

  • [ ] 在很多模块中重复的内容整合

  • [ ] 每个项目搬过来的内容使用超链接

- + diff --git a/zh/about/index.html b/zh/about/index.html index 1eb364b64..75be7d60a 100644 --- a/zh/about/index.html +++ b/zh/about/index.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

# 使命,愿景,价值观

  • ❗️使命:建设 Filecoin 基础设施和工具,支持生态繁荣发展
  • 🌏 愿景:人人都能参与 Filecoin 生态
  • ☯️ 价值观:开放并且去信任

# 联系方式

# 其他资源

- + diff --git a/zh/index.html b/zh/index.html index 71e15ce14..d074a7c89 100644 --- a/zh/index.html +++ b/zh/index.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -46,6 +46,6 @@

分布式架构

依照分布式系统的设计理念和原则,实现了一套快速扩展,高可用的分布式基础架构

优化订单体验

完善了一整套方便存储提供者接收真实存储订单,同时也方便存储客户发送存储订单的解决方案

全新的算力服务

安全,有韧性的算力维持服务;高效,灵活,可扩容的算力增长服务

- + diff --git a/zh/intro/_Footer.html b/zh/intro/_Footer.html index 61bcac159..6116063d1 100644 --- a/zh/intro/_Footer.html +++ b/zh/intro/_Footer.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

See something missing? Have tips to share? File an issue (opens new window), and we'll follow up as soon as possible. (If you have write permission in this repo, feel free to edit directly.)

- + diff --git a/zh/intro/contribute-doc.html b/zh/intro/contribute-doc.html index 1d6cbf520..814934fbe 100644 --- a/zh/intro/contribute-doc.html +++ b/zh/intro/contribute-doc.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -50,6 +50,6 @@ 水滴 (opens new window)

- + diff --git a/zh/intro/damocles.html b/zh/intro/damocles.html index b7487fcf8..475263bf6 100644 --- a/zh/intro/damocles.html +++ b/zh/intro/damocles.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

damocles

# 执剑人

执剑人,原 Venus 算力服务,是一个Filecoin存储算力解决方案。请在 (opens new window)了解更多关于执剑人的信息。

- + diff --git a/zh/intro/droplet.html b/zh/intro/droplet.html index 819289a72..e08b99f5b 100644 --- a/zh/intro/droplet.html +++ b/zh/intro/droplet.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

droplet

# 水滴

水滴,原 Venus 订单服务,是一个Filecoin存储订单解决方案。请在 (opens new window)了解更多关于水滴的信息。

- + diff --git a/zh/intro/index.html b/zh/intro/index.html index 29fb0924f..d365bbd43 100644 --- a/zh/intro/index.html +++ b/zh/intro/index.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -42,6 +42,6 @@ →

- + diff --git a/zh/intro/one-pager.html b/zh/intro/one-pager.html index ae40380c1..d445cf1e4 100644 --- a/zh/intro/one-pager.html +++ b/zh/intro/one-pager.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -47,6 +47,6 @@ (opens new window)

- + diff --git a/zh/intro/sophon.html b/zh/intro/sophon.html index 3093e3120..c34e8225d 100644 --- a/zh/intro/sophon.html +++ b/zh/intro/sophon.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

sophon

# 智子

智子,原 Venus 链服务,是一个 Filecoin 超级节点解决方案。请在 (opens new window)了解更多关于智子的信息。

- + diff --git a/zh/operation/Efficiency_of_sealing.html b/zh/operation/Efficiency_of_sealing.html index e0611d8a3..3acc87a09 100644 --- a/zh/operation/Efficiency_of_sealing.html +++ b/zh/operation/Efficiency_of_sealing.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -201,6 +201,6 @@ MaxSealingSectorsForDeals = 0

此时我们可以通过一个简单的定时脚本就可以做到,始终维持最佳的任务量了

# 损失和止损

  如果一个任务执行错误之后又被反复的重试,这就像我们有 7 个通道进行算力的封装,但是此时有一通道阻塞或者损坏,这就会降低我们 1 / 7 的产量,所以及时的处理错误也是非常重要的

  • 何种情况下应该立刻抛弃任务

    1. ticket 过期
    2. Commit 过期
    3. 依赖文件损坏重试多次都未成功时;
  • 移除无法完成的 sector

venus-sealer sectors remove --really-do-it <sectorNum>
 

如遇到无法彻底删除请查询:顽固扇区如何删除 (opens new window)

- + diff --git a/zh/operation/Independent_com_access_analysis.html b/zh/operation/Independent_com_access_analysis.html index 5237e3ba4..d8953748b 100644 --- a/zh/operation/Independent_com_access_analysis.html +++ b/zh/operation/Independent_com_access_analysis.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -64,6 +64,6 @@ INFO filecoin_proofs::caches > no params in memory cache for STACKED[34359738368] INFO storage_proofs_core::parameter_cache > parameter set identifier for cache: layered_drgporep::PublicParams{ graph: stacked_graph::StackedGraph{expansion_degree: 8 base_graph
- + diff --git a/zh/operation/Sealing_deploy_plan_1.html b/zh/operation/Sealing_deploy_plan_1.html index c0b780874..29b7ae16d 100644 --- a/zh/operation/Sealing_deploy_plan_1.html +++ b/zh/operation/Sealing_deploy_plan_1.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -101,6 +101,6 @@ ./venus-worker storage attach --seal <ABSOLUTE_LOCAL_PATH>

TRUST_PARAMS=1 环境变量可以跳过校验证明参数文件,如果你确定参数文件都在且是正确的可以用此环境变量用加快 venus-sealer 或 venus-worker 的启动的速度;

seal 要求较高的磁盘吞吐量,建议 ssd 盘。

  • 磁盘空间及并发数计算:

    • 32G 内存消耗:56G cache + 64G * 运行数量

    • 32G 磁盘消耗:520G 左右 * 运行数量

    • 64G 内存消耗:112G cache + 128G

    • 64G 磁盘消耗:1T 左右 * 运行数量

    • 故这两台机器 1t 的内存大约能做 64G sector 的数量为:

   (1024G-112G)/128G=7.125,保险起见我们可以先并发 6 个观察一段时间资源使用率。

   确定了并发密封扇区个数后,就可以确定 seal 需要的磁盘空间= 6*1t=6t.

做策略的思路:先考虑内存,确定并发数,在补充其他资源,如临时磁盘空间,至于 cpu,如果不足,可以限额,这样做的好处是系统可以持续运行,而不被 oom。

可以利用 gpu 加速的任务时 P2,C2 和 windowPoSt,分配 gpu 的顺序是:wdPoSt>C2>P2

  • 并发数控制    ./venus-sealer sectors pledge 发送一个密封任务,通常写一个定时脚本或系统事务,每隔一段时间发送一个 sector 任务;配置文件 MaxSealingSectors 控制同时进行的 sector 上限数。
- + diff --git a/zh/operation/Sealing_deploy_plan_2.html b/zh/operation/Sealing_deploy_plan_2.html index b62da09d8..a5627128b 100644 --- a/zh/operation/Sealing_deploy_plan_2.html +++ b/zh/operation/Sealing_deploy_plan_2.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -91,6 +91,6 @@ sudo echo <PID> > /sys/fs/cgroup/cpuset/worker/cgroup.procs

PID: 进程 ID 号;

每次 worker 重启后 PID 会变化,需要更新文件。

/sys/fs/cgroup/cpuset是系统目录,worker是自己创建的.

- + diff --git a/zh/operation/System_monitor_of_Zabbix.html b/zh/operation/System_monitor_of_Zabbix.html index 7b8cd58c2..9734ba668 100644 --- a/zh/operation/System_monitor_of_Zabbix.html +++ b/zh/operation/System_monitor_of_Zabbix.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -117,6 +117,6 @@

5、查看 zabbix 监控机器的内存图

6、异常报警,需要处理的机器

- + diff --git a/zh/operation/_Footer.html b/zh/operation/_Footer.html index 56be3d394..83c2856a6 100644 --- a/zh/operation/_Footer.html +++ b/zh/operation/_Footer.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

See something missing? Have tips to share? File an issue (opens new window), and we'll follow up as soon as possible. (If you have write permission in this repo, feel free to edit directly.)

- + diff --git a/zh/operation/example-single-box.html b/zh/operation/example-single-box.html index 314e50168..2bfaea423 100644 --- a/zh/operation/example-single-box.html +++ b/zh/operation/example-single-box.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

# venus 集群日增算力 1T 机器选型方案

# 机器配置

资源 配置
CPU 3970X * 1 (32c)
内存 512G
硬盘 3T/SSD
网卡 千兆
系统盘 500G
显卡 3080 * 1

台数:1 台

# 任务配比

任务分为 AP,P1,P2,Commit 阶段

运行方式 核数限制 耗时 (分钟) 内存消耗 (G) 效率 (个/小时) 日产量 (T)
P1 * 5 20 220 376 1.3636 1.0227
P2,AP,Commit 12 10 120 3 1.125

关于限核,配置执行任务类型,并发任务数等请参考 venus-docs 项目中相关文档。

- + diff --git a/zh/operation/index.html b/zh/operation/index.html index a7fd3fc1b..c68d9522e 100644 --- a/zh/operation/index.html +++ b/zh/operation/index.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -42,6 +42,6 @@ →

- + diff --git a/zh/operation/lotus-vs-venus.html b/zh/operation/lotus-vs-venus.html index 09876365f..0dc9a4201 100644 --- a/zh/operation/lotus-vs-venus.html +++ b/zh/operation/lotus-vs-venus.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -38,6 +38,6 @@

# 从 Lotus 来的命令

很多日常的命令包括但不限于创建worker/controler地址 (opens new window),设置不同的配置 (opens new window),或者修改存储路径 (opens new window)等等,都同时适用于LotusVenus。节点运维工程师可以按照 Lotus 文档中的步骤来操作。如果遇到任何问题,欢迎到#fil-venus-cn (opens new window)来提出问题。

- + diff --git a/zh/operation/migrate_market_v1_to_v2.html b/zh/operation/migrate_market_v1_to_v2.html index c58ec7a00..9aca0c52c 100644 --- a/zh/operation/migrate_market_v1_to_v2.html +++ b/zh/operation/migrate_market_v1_to_v2.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -50,6 +50,6 @@

- + diff --git a/zh/operation/nv15-upgrade.html b/zh/operation/nv15-upgrade.html index ecd127c4d..a68389596 100644 --- a/zh/operation/nv15-upgrade.html +++ b/zh/operation/nv15-upgrade.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -82,6 +82,6 @@ →

- + diff --git a/zh/operation/nv16-upgrade.html b/zh/operation/nv16-upgrade.html index 8848ea42f..e03900031 100644 --- a/zh/operation/nv16-upgrade.html +++ b/zh/operation/nv16-upgrade.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -69,6 +69,6 @@ →

- + diff --git a/zh/operation/nv17-upgrade.html b/zh/operation/nv17-upgrade.html index c6111ba52..e7135509b 100644 --- a/zh/operation/nv17-upgrade.html +++ b/zh/operation/nv17-upgrade.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -69,6 +69,6 @@ →

- + diff --git a/zh/operation/nv18-upgrade.html b/zh/operation/nv18-upgrade.html index 1010f75b2..65db24a15 100644 --- a/zh/operation/nv18-upgrade.html +++ b/zh/operation/nv18-upgrade.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -98,6 +98,6 @@ →

- + diff --git a/zh/operation/nv19-upgrade.html b/zh/operation/nv19-upgrade.html index 6544ce278..338febb8a 100644 --- a/zh/operation/nv19-upgrade.html +++ b/zh/operation/nv19-upgrade.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -79,6 +79,6 @@ →

- + diff --git a/zh/operation/nv21-upgrade.html b/zh/operation/nv21-upgrade.html index 933a7ce22..d40b9183f 100644 --- a/zh/operation/nv21-upgrade.html +++ b/zh/operation/nv21-upgrade.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -83,6 +83,6 @@ →

- + diff --git a/zh/operation/prometheus-instruction.html b/zh/operation/prometheus-instruction.html index 8f5446f57..888ec5394 100644 --- a/zh/operation/prometheus-instruction.html +++ b/zh/operation/prometheus-instruction.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -110,6 +110,6 @@ instance: "messager"

# 启动

$ ./prometheus --config.file=prometheus.yml
 

使用http://localhost:9090/targets, 可查询组件的指标。

- + diff --git a/zh/operation/troubleshoot-consensus-fault.html b/zh/operation/troubleshoot-consensus-fault.html index 68eab9eeb..f361071a9 100644 --- a/zh/operation/troubleshoot-consensus-fault.html +++ b/zh/operation/troubleshoot-consensus-fault.html @@ -13,7 +13,7 @@ gtag('config', 'G-SMSDTMGLTV'); - + @@ -190,6 +190,6 @@ implicit message(f00 -> f03, method : 2, nonce:1288233) idx:480, Compare msg({'/': 'bafy2bzacebka5xwpzelt4cl5pa452k3oi45mbcy7pyrlc3om7sfnul4cz7dcu'}) stateAfterApply: bafy2bzacebhpihnow4fwuebtxenpl27kvl4k7aeozlsruwcdj3berrposkfgs execution-traces: failed

程序会打印出不同的 execution-trace 的消息,以及不匹配的调用堆栈,可以方便快速定位问题。

- +