Skip to content

Commit

Permalink
deploy: a566801
Browse files Browse the repository at this point in the history
  • Loading branch information
BulatSaif committed Nov 29, 2024
1 parent 414a5c7 commit da1f247
Show file tree
Hide file tree
Showing 31 changed files with 83 additions and 99 deletions.
2 changes: 1 addition & 1 deletion deployments/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ <h1 class="menu-title">Parachain Devops Guide</h1>
<main>
<h1 id="deployments"><a class="header" href="#deployments">Deployments</a></h1>
<p>This section describes the various types of deployments and options used for each.</p>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
2 changes: 1 addition & 1 deletion deployments/options.html
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@ <h2 id="parachain-specifics"><a class="header" href="#parachain-specifics">Parac
<p>A real life example of this while executing as a statemine collator would be:</p>
<pre><code class="language-bash">./statemine --chain statemine --in-peers 25 --out-peers 25 --db-cache 512 --pruning=1000 --unsafe-pruning -- --chain kusama -db-cache 512 --pruning=1000 --wasm-execution Compiled
</code></pre>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
2 changes: 1 addition & 1 deletion deployments/roles.html
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ <h2 id="simplified-diagram-of-the-parachain-network-architecture"><a class="head
<h2 id="downsides-of-deploying-nodes-without-clear-role-separation"><a class="header" href="#downsides-of-deploying-nodes-without-clear-role-separation">Downsides of deploying nodes without clear role separation</a></h2>
<p>Although, it is possible for a single node to assume multiple roles (collator, RPC, bootnode), robust network deployments are composed of multiple nodes of each types to ensure reliability.</p>
<p>For example, if a collator node also serves as an RPC node, receiving increased user traffic might overload the node and bring down block production. To prevent this from happening, it is possible to set up several dedicated RPC nodes behind a load balancer. Similarly, setting up additional collators in your network will allows downtime of fraction of the collator set without slowing down block production.</p>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
2 changes: 1 addition & 1 deletion deployments/targets.html
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ <h1 id="deployment-targets"><a class="header" href="#deployment-targets">Deploym
<tr><td>Kubernetes</td><td>A container orchestration engine to host your blockchain instances. This option is only recommended if you already have prior experience with Kubernetes, especially in production environments.</td></tr>
<tr><td>Local Container</td><td>An instance running on a local container engine (e.g. containerd, docker, Podman).</td></tr>
</tbody></table>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
2 changes: 1 addition & 1 deletion explanations/chainspecs.html
Original file line number Diff line number Diff line change
Expand Up @@ -429,7 +429,7 @@ <h3 id="verify-a-chain-spec-file"><a class="header" href="#verify-a-chain-spec-f
<h3 id="convert-a-plain-chain-spec-to-raw"><a class="header" href="#convert-a-plain-chain-spec-to-raw">Convert a plain chain-spec to raw</a></h3>
<pre><code class="language-bash">chain-spec-builder convert-to-raw chainspec.json &gt; chainspec.raw.json
</code></pre>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
2 changes: 1 addition & 1 deletion explanations/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,7 @@ <h2 id="general-approach-to-security"><a class="header" href="#general-approach-
<p>First is using cold / warm / hot keys, so that the compromise of say a session key would not lead to any funds being stolen. Also using multisig accounts on offline devices can greatly help security and also give an on-chain audit trail of all actions, allows for alerting for any onchain actions etc...</p>
<p><img src="../images/AEEVr6.png" alt="key stages" /></p>
<p>Proxy accounts also let you limit the permission that an account or multisig account has on a particular target account (e.g. only staking functions can be executed by the staking controller multisig account and require 3 of 5 people to approve).</p>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
2 changes: 1 addition & 1 deletion explanations/keys_accounts.html
Original file line number Diff line number Diff line change
Expand Up @@ -238,7 +238,7 @@ <h3 id="insert-a-specific-key-onto-a-node-keystore-using-the-node-binary"><a cla
<li><code>KEY_SCHEME</code>: an encryption scheme (eg. <code>sr25519</code>, <code>ed25519</code>, <code>ecdsa</code>)</li>
<li><code>KEY_FILE</code>: a plain text file which contains the seed or private key</li>
</ul>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
2 changes: 1 addition & 1 deletion guides/collator_deployment.html
Original file line number Diff line number Diff line change
Expand Up @@ -272,7 +272,7 @@ <h4 id="install-the-node-helm-chart"><a class="header" href="#install-the-node-h
setPublicAddressToExternalIp:
enabled: true
</code></pre>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
2 changes: 1 addition & 1 deletion guides/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ <h1 class="menu-title">Parachain Devops Guide</h1>
<main>
<h1 id="how-to-guides"><a class="header" href="#how-to-guides">How-to Guides</a></h1>
<p>This section provides useful guides for getting started with Polkadot infrastructure.</p>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
18 changes: 9 additions & 9 deletions guides/parachain_deployment.html
Original file line number Diff line number Diff line change
Expand Up @@ -152,15 +152,15 @@ <h1 class="menu-title">Parachain Devops Guide</h1>
<main>
<h1 id="guide-deploying-a-parachain-network"><a class="header" href="#guide-deploying-a-parachain-network">Guide: Deploying a Parachain Network</a></h1>
<p>This guide demonstrates the deployment of a parachain test network composed of 2 collators (nodes authoring blocks) and 1 RPC node.
We are using Rococo as an example, but this approach would work similarly for any Relaychain, whether it is a testnet (Westend, Rococo, Paseo) or a mainnet (Polkadot, Kusama).</p>
We are using Paseo as an example, but this approach would work similarly for any Relaychain, whether it is a testnet (Westend, Paseo) or a mainnet (Polkadot, Kusama).</p>
<h2 id="preparations"><a class="header" href="#preparations">Preparations</a></h2>
<h3 id="hardware"><a class="header" href="#hardware">Hardware</a></h3>
<p>For this example network, you will need 3 machines.
The specifications of these machines will depend on your intended usage. For a testnet, medium-sized virtual machines with 2 to 4 cores will suffice. However, for mainnet nodes, it is recommended to follow the <a href="https://wiki.polkadot.network/docs/maintain-guides-how-to-validate-polkadot#reference-hardware">&quot;validator reference hardware&quot; as detailed in the Polkadot Wiki</a>.</p>
<p>Requirements:</p>
<ul>
<li>The machines should have a public IP and allow network access on their P2P ports (defaults 30333 and 30334) as well as the RPC port for the RPC node (9944 for ws or 443 for wss).</li>
<li>The machine should have a big enough disk to host the relay-chain pruned database (&gt;250 GB for Rococo)</li>
<li>The machine should have a big enough disk to host the relay-chain pruned database (&gt;100 GB for Paseo)</li>
<li>You should have obtained SSH access to these machines.</li>
</ul>
<h3 id="parachain-binary-or-docker-image"><a class="header" href="#parachain-binary-or-docker-image">Parachain binary or docker image</a></h3>
Expand Down Expand Up @@ -207,11 +207,11 @@ <h3 id="generate-keys-for-your-collators-accountaura-keys"><a class="header" hre
Public key (SS58): 5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY
SS58 Address: 5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY
</code></pre>
<h2 id="reserve-a-paraid-on-rococo"><a class="header" href="#reserve-a-paraid-on-rococo">Reserve a ParaId on Rococo</a></h2>
<h2 id="reserve-a-paraid-on-paseo"><a class="header" href="#reserve-a-paraid-on-paseo">Reserve a ParaId on Paseo</a></h2>
<p>Note: although it is possible to use specific UIs for registering your parachain, this guide only documents how to do it by submitting extrinsics directly through the Polkadot.js Console.</p>
<p>To get reserve a ParaId for your parachain on Rococo, navigate to the <a href="https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frococo-rpc.polkadot.io">Polkadot.js Apps interface</a>.</p>
<p>To get reserve a ParaId for your parachain on Paseo, navigate to the <a href="https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frpc.ibp.network%2Fpaseo#/explorer">Polkadot.js Apps interface</a>.</p>
<ul>
<li>Ensure you are connected to the Rococo network by selecting the appropriate RPC endpoint (<code>wss://rococo-rpc.polkadot.io</code>).</li>
<li>Ensure you are connected to the Paseo network by selecting the appropriate RPC endpoint.</li>
<li>Go to the &quot;Developer&quot; tab and select &quot;Extrinsics&quot;.</li>
<li>Choose <code>registrar.reserve</code> from the dropdown menu and execute it with your account.</li>
<li>Check the included extrinsic result in the block to find your reserved <code>para_id</code> and note it down.</li>
Expand Down Expand Up @@ -303,7 +303,7 @@ <h3 id="generate-a-customized-plain-chainspec"><a class="header" href="#generate
&quot;tokenSymbol&quot;: &quot;UNIT&quot;
},
&quot;para_id&quot;: 4435,
&quot;relay_chain&quot;: &quot;rococo&quot;,
&quot;relay_chain&quot;: &quot;paseo&quot;,
...
</code></pre>
<p>You also need to set your <code>bootNodes</code> addresses, any node which has a public IP or DNS can be a bootnode:</p>
Expand Down Expand Up @@ -336,7 +336,7 @@ <h3 id="optional-dry-run-your-parachain-network-locally"><a class="header" href=
<li>Connect to it with <a href="https://polkadot.js.org/apps/?rpc=ws%3A%2F%2F127.0.0.1%3A9944">Polkadot.js Apps</a> on <code>ws://127.0.0.1:9944</code>.</li>
<li>You can inspect the <a href="https://polkadot.js.org/apps/?rpc=ws%3A%2F%2F127.0.0.1%3A9944#/chainstate">chain state in Polkadot.js Apps</a> to verify that everything is in order for the launch.</li>
</ul>
<p>Note: if you look at the node logs, it should be starting to sync the relay-chain (Rococo in our case). For this dry-run step, you don’t have to wait until it is fully synced. However, after deployment, a node needs to be fully synced in order to collate parachain blocks.</p>
<p>Note: if you look at the node logs, it should be starting to sync the relay-chain (Paseo in our case). For this dry-run step, you don’t have to wait until it is fully synced. However, after deployment, a node needs to be fully synced in order to collate parachain blocks.</p>
<h2 id="deploy-your-nodes"><a class="header" href="#deploy-your-nodes">Deploy your nodes</a></h2>
<p>You can use any method you choose to set up your nodes on your machines, we recommend either Ansible or Kubernetes.</p>
<h3 id="deploy-your-nodes-with-ansible"><a class="header" href="#deploy-your-nodes-with-ansible">Deploy your nodes with Ansible</a></h3>
Expand All @@ -357,7 +357,7 @@ <h3 id="register-parachain-genesis-code-and-state-on-relay-chain"><a class="head
<pre><code>parachain-template-node export-genesis-wasm --chain chainspec.raw.json &gt; genesis_wasm_code
</code></pre>
<ul>
<li>Register your parachain genesis configuration on the relay-chain by executing the <code>registrar.register</code> extrinsic on Rococo:
<li>Register your parachain genesis configuration on the relay-chain by executing the <code>registrar.register</code> extrinsic on Paseo:
<ul>
<li><code>id</code>: your parachain ID</li>
<li><code>genesisHead</code>: select the <code>genesis_state_head</code> file</li>
Expand Down Expand Up @@ -395,7 +395,7 @@ <h3 id="reserve-bulk-coretime"><a class="header" href="#reserve-bulk-coretime">R
<p>Note: any account with enough funds can buy and assign coretime for a parachain.</p>
<h3 id="renew-bulk-coretime"><a class="header" href="#renew-bulk-coretime">Renew Bulk Coretime</a></h3>
<p>TODO</p>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
2 changes: 1 addition & 1 deletion guides/readiness-checklist.html
Original file line number Diff line number Diff line change
Expand Up @@ -246,7 +246,7 @@ <h1 id="tips"><a class="header" href="#tips">Tips:</a></h1>
Other useful debug targets are<code>runtime=debug</code>, <code>sync=debug</code>, <code>author=debug</code>, <code>xcm=debug</code>, etc.</li>
<li>You should avoid setting trace logging on all your nodes; if you do, set it on a limited number of nodes where it is useful and remove it when not needed anymore.</li>
</ul>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
2 changes: 1 addition & 1 deletion guides/rpc_index.html
Original file line number Diff line number Diff line change
Expand Up @@ -263,7 +263,7 @@ <h4 id="tools-for-securing-websocket-connections"><a class="header" href="#tools
</ol>
<h3 id="how-to-guides"><a class="header" href="#how-to-guides">How-to Guides</a></h3>
<p>This section provides a deployment guide for an RPC node via Ansible and Kubernetes.</p>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
20 changes: 6 additions & 14 deletions guides/rpc_kubernetes.html
Original file line number Diff line number Diff line change
Expand Up @@ -167,14 +167,10 @@ <h4 id="relaychain-helm-values"><a class="header" href="#relaychain-helm-values"
tag: v1.14.0
node:
replicas: 1
chain: rococo
chain: westend
role: full
chainData:
chainPath: rococo_v2_2
# chainSnapshot:
# enabled: true
# method: http-filelist
# url: https://snapshots.polkadot.io/rococo-paritydb-archive
chainPath: westend2
volumeSize: 600Gi
storageClass: ssd-csi
database: paritydb
Expand Down Expand Up @@ -244,7 +240,7 @@ <h4 id="parachains-helm-values"><a class="header" href="#parachains-helm-values"
repository: parity/polkadot-parachain
tag: 1.14.0
node:
chain: bridge-hub-rococo
chain: bridge-hub-westend
command: polkadot-parachain
replicas: 1
role: full
Expand All @@ -258,17 +254,13 @@ <h4 id="parachains-helm-values"><a class="header" href="#parachains-helm-values"
enabled: true
isParachain: true
collatorRelayChain:
chain: rococo
chain: westend
chainData:
database: paritydb
pruning: 1000
storageClass: ssd-csi
volumeSize: 150Gi
# chainSnapshot:
# enabled: true
# method: http-filelist
# url: https://snapshots.polkadot.io/rococo-paritydb-prune
chainPath: rococo_v2_2
chainPath: westend2
chainKeystore:
mountInMemory:
enabled: true
Expand Down Expand Up @@ -309,7 +301,7 @@ <h3 id="best-practices"><a class="header" href="#best-practices">Best Practices<
<li>A backup is ideally used due to easily scale up new RPC nodes</li>
<li>Enabling serviceMonitor to enable monitoring of the RPC nodes</li>
</ul>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
2 changes: 1 addition & 1 deletion guides/subkey.html
Original file line number Diff line number Diff line change
Expand Up @@ -233,7 +233,7 @@ <h1 id="generate-node-keys-libp2p-keys"><a class="header" href="#generate-node-k
<p>Use the <code>subkey inspect-node-key</code> command to display the peer identifier for the node that corresponds with the node key in the specified file name. Before using this command, you should have previously used the <code>subkey generate-node-key</code> command and saved the key to a file.</p>
<pre><code>&gt; subkey inspect-node-key --file &lt;file-name&gt;
</code></pre>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
2 changes: 1 addition & 1 deletion index.html
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ <h1 id="overview"><a class="header" href="#overview">Overview</a></h1>
<li><a href="./explanations/index.html">Explanations</a>: Explanations of concepts and configurations relevant to Polkadot blockchain infrastructure.</li>
<li><a href="./references/index.html">References</a>: Index of useful links and tools.</li>
</ul>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
2 changes: 1 addition & 1 deletion kubernetes/helm.html
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@ <h2 id="important-chart-options"><a class="header" href="#important-chart-option
<tr><td>node.flags</td><td>Flags to use with binary in container</td></tr>
<tr><td>node.customChainspecUrl</td><td>Custom Chainspec URL</td></tr>
</tbody></table>
<footer id="last-change">Last change: 2024-08-19, commit: <a href="https://github.com/paritytech/devops-guide/commit/04f95a2">04f95a2</a></footer>
<footer id="last-change">Last change: 2024-11-29, commit: <a href="https://github.com/paritytech/devops-guide/commit/a566801">a566801</a></footer>
</main>

<nav class="nav-wrapper" aria-label="Page navigation">
Expand Down
Loading

0 comments on commit da1f247

Please sign in to comment.