Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
63 changes: 49 additions & 14 deletions evm/installing-seid-cli.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -12,32 +12,63 @@

## Prerequisites

- Go 1.23+: Installation instructions are available [here](https://go.dev/doc/install).
- Go 1.23+ (build from source only): Installation instructions are available [here](https://go.dev/doc/install). The prebuilt binary has no prerequisites.

## Installation

To install seid, locate the version you wish to use on the [sei-chain releases page](https://github.com/sei-protocol/sei-chain/releases). A list of the currently used versions on mainnet and testnet are displayed right below.
To install `seid`, locate the version you wish to use on the [sei-chain releases page](https://github.com/sei-protocol/sei-chain/releases). A list of the currently used versions on mainnet and testnet are displayed right below.

<VersionTable />

Then, execute the following commands with the version that you picked:

```bash
git clone https://github.com/sei-protocol/sei-chain
cd sei-chain
git checkout [VERSION]
make install
```

You can verify that seid was installed correctly by running:
<Tabs>
<Tab title="Prebuilt binary (recommended)">
Each release attaches a statically linked `seid` build for `linux/amd64` with no
runtime dependencies:

```bash
VERSION=<version-tag> # e.g. v6.6.0 — see the version table above
FILE=sei-chain_${VERSION#v}_linux_x86_64.tar.gz # asset filenames omit the leading v

curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/${FILE}
curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/checksums.txt

# Verify integrity before trusting the binary; extract and install only if it passes
sha256sum -c checksums.txt --ignore-missing \
&& tar -xzf ${FILE} seid \
&& sudo install -m 0755 seid /usr/local/bin/seid
```

<Info>
Prebuilt binaries are `linux/amd64` only and omit hardware Ledger support. On
other architectures, or if you sign with a Ledger device, build from source.
</Info>

<Note>
Previously installed with `make install`? An older copy in `$(go env GOPATH)/bin`
can shadow `/usr/local/bin/seid` depending on your `PATH` order — `which -a seid`
lists every copy.
</Note>
</Tab>

<Tab title="Build from source">
```bash
git clone https://github.com/sei-protocol/sei-chain
cd sei-chain
git checkout <version-tag>
make install
```
</Tab>
</Tabs>

You can verify that `seid` was installed correctly by running:

```bash
seid version
```

## Troubleshooting Installation

<Warning>If you encounter an error like `command not found: seid`, you may need to set your GOPATH environment variable.</Warning>
<Warning>If you built from source and encounter an error like `command not found: seid`, you may need to set your GOPATH environment variable.</Warning>

- Use `go env GOPATH` to find your GOPATH
- Add the following lines to your `~/.bashrc` or `~/.zshrc`:
Expand All @@ -49,7 +80,7 @@

For more information see [here](https://pkg.go.dev/cmd/go#hdr-GOPATH_environment_variable).

## Command Overview

Check warning on line 83 in evm/installing-seid-cli.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/installing-seid-cli.mdx#L83

Use sentence case for headings: 'Command Overview'.

Seid supports all the commands you need to interact with the chain. To see a list of available commands and explanations of what they do, run seid:

Expand Down Expand Up @@ -97,7 +128,7 @@
Use "seid [command] --help" for more information about a command.
```

## Adding a Wallet

Check warning on line 131 in evm/installing-seid-cli.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/installing-seid-cli.mdx#L131

Use sentence case for headings: 'Adding a Wallet'.

You can create a new wallet using the seid keys command:

Expand Down Expand Up @@ -148,16 +179,16 @@
mnemonic: ""
```

## EVM Wallet Compatibility

Check warning on line 182 in evm/installing-seid-cli.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/installing-seid-cli.mdx#L182

Use sentence case for headings: 'EVM Wallet Compatibility'.

### Understanding Coin Types

Check warning on line 184 in evm/installing-seid-cli.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/installing-seid-cli.mdx#L184

Use sentence case for headings: 'Understanding Coin Types'.

Sei supports two coin types:

- Coin type 118 (default): Standard Cosmos address format
- Coin type 60: Ethereum-compatible address format for EVM wallets

### Creating an EVM-Compatible Wallet

Check warning on line 191 in evm/installing-seid-cli.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/installing-seid-cli.mdx#L191

Use sentence case for headings: 'Creating an EVM-Compatible Wallet'.

To create a new wallet that's compatible with EVM wallets like MetaMask:

Expand All @@ -184,7 +215,7 @@

<Info>`evm_address` is shown as empty here because it's only displayed after the key first broadcasts a transaction or is associated on-chain. The `0x` address is deterministically derived from the secp256k1 public key.</Info>

### Importing an Existing EVM Wallet

Check warning on line 218 in evm/installing-seid-cli.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/installing-seid-cli.mdx#L218

Use sentence case for headings: 'Importing an Existing EVM Wallet'.

To import an existing wallet from MetaMask or other EVM wallets:

Expand All @@ -210,7 +241,7 @@

<Info>Use coin type 60 when you want to use the same address across EVM-compatible chains or import from MetaMask. Use the default coin type 118 for standard Cosmos operations.</Info>

## Managing Wallets

Check warning on line 244 in evm/installing-seid-cli.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/installing-seid-cli.mdx#L244

Use sentence case for headings: 'Managing Wallets'.

To see your local wallets, you can run:

Expand Down Expand Up @@ -249,7 +280,7 @@

to see details about a specific wallet.

## Deleting Wallets

Check warning on line 283 in evm/installing-seid-cli.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

evm/installing-seid-cli.mdx#L283

Use sentence case for headings: 'Deleting Wallets'.

To delete a wallet/key, you can use the following command:

Expand All @@ -268,8 +299,12 @@

## Uninstalling seid

If you need to remove `seid` from your system, you can delete the binary from your `$GOPATH/bin` directory:
If you need to remove `seid` from your system, delete the binary from wherever it was installed:

```bash
# Prebuilt binary install
sudo rm /usr/local/bin/seid

# Build-from-source install
rm $(go env GOPATH)/bin/seid
```
105 changes: 74 additions & 31 deletions node/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,13 @@
<Card horizontal title="Archive Nodes" icon="database" />
</CardGroup>

## Network Versions

Check warning on line 22 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L22

Use sentence case for headings: 'Network Versions'.

<VersionTable />

_Live binary versions, genesis, and seed peers — see the [technical reference](/node/technical-reference)._

## Hardware Requirements

Check warning on line 28 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L28

Use sentence case for headings: 'Hardware Requirements'.

| Component | Required |
| --------- | ------------------------------------------------------ |
Expand All @@ -34,7 +34,7 @@
| Storage | 2 TB NVMe SSD (high IOPS required) |
| Network | 2 Gbps with low latency |

## Installation & Setup Steps

Check warning on line 37 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L37

Use sentence case for headings: 'Installation & Setup Steps'.

<Steps>

Expand All @@ -47,13 +47,13 @@
sudo apt update && sudo apt upgrade -y
```

###### 2. Install Essential Packages

Check warning on line 50 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L50

Use sentence case for headings: '2. Install Essential Packages'.

```bash
sudo apt install make gcc git jq chrony curl lz4 wget tar build-essential -y
```

###### 3. Synchronize System Time

Check warning on line 56 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L56

Use sentence case for headings: '3. Synchronize System Time'.

```bash
sudo timedatectl set-timezone UTC
Expand All @@ -61,11 +61,14 @@
timedatectl
```

##### Install Go

Check warning on line 64 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L64

Use sentence case for headings: 'Install Go'.

Only needed if you build `seid` from source — the prebuilt binary and Docker
install paths in the next step don't require Go.

Suggested Version: Go 1.24.x (required for seid v6.3+)

###### Installation Steps

Check warning on line 71 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L71

Use sentence case for headings: 'Installation Steps'.

```bash
# Check for existing Go installation
Expand All @@ -85,51 +88,91 @@
</Step>

<Step title="Install Sei">
##### Install Sei Binary
##### Install the `seid` binary

```bash
# Clone repository and install
git clone https://github.com/sei-protocol/sei-chain.git
cd sei-chain
git checkout <version-tag> # Replace with specific version
make install
See the Network Versions table above for the current recommended version.

# Verify installation
seid version
```
<Tabs>
<Tab title="Prebuilt binary (recommended)">
Each release attaches a statically linked `seid` build for `linux/amd64` with no
runtime dependencies: no Go toolchain and no shared libraries to install.

See Network Versions table above for current recommended version.
```bash
VERSION=<version-tag> # e.g. v6.6.0 — see the Network Versions table above
FILE=sei-chain_${VERSION#v}_linux_x86_64.tar.gz # asset filenames omit the leading v

<Accordion title="Alternative: Docker Image">
Official Docker images are available at GitHub Container Registry.
curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/${FILE}
curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/checksums.txt

```bash
# Pull the latest version
docker pull ghcr.io/sei-protocol/sei:latest
# Verify integrity before trusting the binary; extract and install only if it passes
sha256sum -c checksums.txt --ignore-missing \
&& tar -xzf ${FILE} seid \
&& sudo install -m 0755 seid /usr/local/bin/seid

# Or pull a specific version (recommended)
docker pull ghcr.io/sei-protocol/sei:v6.3.1
```
# Verify installation
seid version
Comment thread
alexander-sei marked this conversation as resolved.
```

Available architectures: linux/amd64 and linux/arm64.
</Accordion>
<Info>
Prebuilt binaries are `linux/amd64` only, omit hardware Ledger support, and
don't include the optional [RocksDB state-store backend](/node/rocksdb-backend).
On other architectures, or if you sign with a Ledger device, build from source
or use Docker; a RocksDB-enabled `seid` must be built from source.
</Info>

<Info>
If you encounter an error like `command not found: seid`, you may need to set your GOPATH environment variable.
<Note>
Switching from a previous `make install` build? Remove the old copy
(`rm -f "$(go env GOPATH)/bin/seid"`) or make sure your service unit points at
`/usr/local/bin/seid` — `which -a seid` lists every copy on your `PATH`.
</Note>
</Tab>

Add the following to your `~/.bashrc` or `~/.zshrc`:
<Tab title="Build from source">
Requires Go and a C toolchain (see the Environment Setup step above).

```bash
export GOPATH=$(go env GOPATH)
export PATH=$PATH:$GOPATH/bin
```
```bash
# Clone repository and install
git clone https://github.com/sei-protocol/sei-chain.git
cd sei-chain
git checkout <version-tag> # Replace with specific version
make install

Then reload your shell with `source ~/.bashrc` or `source ~/.zshrc`.
# Verify installation
seid version
```

For more information see [here](https://pkg.go.dev/cmd/go#hdr-GOPATH_environment_variable).
</Info>
<Info>
If you encounter an error like `command not found: seid`, you may need to set your GOPATH environment variable.

Add the following to your `~/.bashrc` or `~/.zshrc`:

```bash
export GOPATH=$(go env GOPATH)
export PATH=$PATH:$GOPATH/bin
```

Then reload your shell with `source ~/.bashrc` or `source ~/.zshrc`.

For more information see [here](https://pkg.go.dev/cmd/go#hdr-GOPATH_environment_variable).
</Info>
</Tab>

<Tab title="Docker">
Official Docker images are available at GitHub Container Registry.

```bash
# Pull the latest version
docker pull ghcr.io/sei-protocol/sei:latest

# Or pull a specific version (recommended)
docker pull ghcr.io/sei-protocol/sei:v6.3.1
```

Available architectures: linux/amd64 and linux/arm64.
</Tab>
</Tabs>

##### Initialize Chain Files

Check warning on line 175 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L175

Use sentence case for headings: 'Initialize Chain Files'.

<Info>Default init mode is **full** (RPC/P2P bind to all interfaces). For **validator** or **seed** nodes, use `--mode validator` or `--mode seed` so RPC and P2P bind to localhost only. See the [Validator Operations Guide](/node/validators) for the full validator init example.</Info>

Expand Down Expand Up @@ -157,7 +200,7 @@
sed -i 's/persistent-peers = .*/persistent-peers = "'$PEERS'"/' ~/.sei/config/config.toml
```

##### Configure App Settings

Check warning on line 203 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L203

Use sentence case for headings: 'Configure App Settings'.

```bash
# Set minimum gas price (recommended; helps prevent spam transactions)
Expand Down Expand Up @@ -187,7 +230,7 @@

<Accordion title="Advanced Configuration">

#### Archive Node Setup

Check warning on line 233 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L233

Use sentence case for headings: 'Archive Node Setup'.

An archive node maintains the complete historical record of the chain. This requires disabling state sync and starting with a pre-existing database using a "snapshot".

Expand All @@ -201,7 +244,7 @@

**2. Configure Archive Node Peers** — To sync from the height your snapshot was created at, you need peers retaining a large amount of historical blocks. The node will require specific peers during initial sync, which can be changed at a later time.

#### Mempool Configuration

Check warning on line 247 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L247

Use sentence case for headings: 'Mempool Configuration'.

For optimal transaction handling and resource management, it is recommended to update the mempool settings in your `config.toml` file.

Expand Down Expand Up @@ -289,7 +332,7 @@
sudo systemctl start seid
```

##### Monitoring & Troubleshooting

Check warning on line 335 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L335

Use sentence case for headings: 'Monitoring & Troubleshooting'.

Check your node's status with these commands:

Expand Down Expand Up @@ -325,9 +368,9 @@

[View Complete Node Setup Guide](/node/node-operators)

## Node Resources

Check warning on line 371 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L371

Use sentence case for headings: 'Node Resources'.

### Node Setup

Check warning on line 373 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L373

Use sentence case for headings: 'Node Setup'.

<CardGroup cols={3}>
<Card horizontal title="Node Operations Guide" icon="server" href="/node/node-operators">
Expand All @@ -341,7 +384,7 @@
</Card>
</CardGroup>

### Advanced Operations

Check warning on line 387 in node/index.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/index.mdx#L387

Use sentence case for headings: 'Advanced Operations'.

<CardGroup cols={3}>
<Card horizontal title="Configuration & Monitoring" icon="gauge-simple-high" href="/node/advanced-config-monitoring">
Expand Down
94 changes: 73 additions & 21 deletions node/node-operators.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@
including configuration management, maintenance procedures, and best practices
for stable and performant operations.

## Configuration Management

Check warning on line 12 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L12

Use sentence case for headings: 'Configuration Management'.

### Directory Structure

Check warning on line 14 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L14

Use sentence case for headings: 'Directory Structure'.

The Sei node configuration is stored in `$HOME/.sei/config/`:

Expand All @@ -31,9 +31,9 @@
[Default Configurations](#default-configurations) at the bottom of this
section.

### Essential Configuration Parameters

Check warning on line 34 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L34

Use sentence case for headings: 'Essential Configuration Parameters'.

#### Network Settings (config.toml)

Check warning on line 36 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L36

Use sentence case for headings: 'Network Settings (config.toml)'.

```toml
[p2p]
Expand All @@ -59,7 +59,7 @@
timeout-broadcast-tx-commit = "10s"
```

#### Application Settings (app.toml)

Check warning on line 62 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L62

Use sentence case for headings: 'Application Settings (app.toml)'.

```toml
# Minimum gas prices to prevent spam transactions
Expand Down Expand Up @@ -97,7 +97,7 @@
rs-backend = "pebbledb"
```

### Default Configurations

Check warning on line 100 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L100

Use sentence case for headings: 'Default Configurations'.

The full unmodified `app.toml`, `config.toml`, and `client.toml` produced by
`seid init` against the latest tagged `seid` release. Use these as the
Expand Down Expand Up @@ -1364,7 +1364,7 @@
</Tab>
</Tabs>

## Database Management

Check warning on line 1367 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1367

Use sentence case for headings: 'Database Management'.

### Architecture

Expand All @@ -1389,7 +1389,7 @@
deprecated and slated for removal — new deployments and existing nodes
should run on SeiDB.

### SeiDB Configuration

Check warning on line 1392 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1392

Use sentence case for headings: 'SeiDB Configuration'.

The full set of knobs is in the auto-generated
[Default Configurations](#default-configurations) above. The block below
Expand Down Expand Up @@ -1468,7 +1468,7 @@
snapshot creation. Too-large (less frequent) intervals mean pruning takes
longer overall, which can cause missed blocks and excessive resync time.

### Giga Storage and Giga Executor

Check warning on line 1471 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1471

Use sentence case for headings: 'Giga Storage and Giga Executor'.

These are two **separate** opt-in features that ship in newer `seid`
releases. Both default to off; only enable them deliberately and after
Expand Down Expand Up @@ -1512,7 +1512,7 @@
occ_enabled = false
```

### Database Maintenance

Check warning on line 1515 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1515

Use sentence case for headings: 'Database Maintenance'.

The database is typically stable and can be left alone, although some attention
may be required:
Expand All @@ -1539,9 +1539,9 @@

<Warning>The wipe command above deletes the entire local database (everything except `priv_validator_state.json`) and the `wasm` folder. It does not compact data in place — after running it, the node must be re-synced from a [snapshot](/node/snapshot) or via [state sync](/node/statesync) before it can serve traffic again.</Warning>

## Service Management

Check warning on line 1542 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1542

Use sentence case for headings: 'Service Management'.

### Systemd Commands

Check warning on line 1544 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1544

Use sentence case for headings: 'Systemd Commands'.

```bash
# Check service status
Expand All @@ -1560,7 +1560,7 @@
journalctl -fu seid -o cat
```

### Log Management

Check warning on line 1563 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1563

Use sentence case for headings: 'Log Management'.

Prevent logs from consuming excessive disk space by enabling rotation:

Expand All @@ -1581,27 +1581,59 @@
EOF
```

## Update Procedures

Check warning on line 1584 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1584

Use sentence case for headings: 'Update Procedures'.

<Info>
Upgrade with the same method you originally installed with: `make install`
writes `seid` to `$(go env GOPATH)/bin`, while the prebuilt-binary flow
installs to `/usr/local/bin`. Mixing the two leaves separate binaries on your
`PATH`, and your service unit may keep running the old version —
`which -a seid` lists every copy.
</Info>

### Minor Updates

Check warning on line 1594 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1594

Use sentence case for headings: 'Minor Updates'.

For minor updates that are non-consensus-breaking:

```bash
# Stop node
sudo systemctl stop seid
<Tabs>
<Tab title="Prebuilt binary">
```bash
# Stop node
sudo systemctl stop seid

# Download and verify the new release binary
VERSION=<new-version> # the new release tag, e.g. v6.6.0
FILE=sei-chain_${VERSION#v}_linux_x86_64.tar.gz # asset filenames omit the leading v

curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/${FILE}
curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/checksums.txt
sha256sum -c checksums.txt --ignore-missing \
&& tar -xzf ${FILE} seid \
&& sudo install -m 0755 seid /usr/local/bin/seid

# Restart node
sudo systemctl restart seid
```
</Tab>

# Update binary
cd sei-chain
git fetch --all
git checkout [new-version]
make install
<Tab title="Build from source">
```bash
# Stop node
sudo systemctl stop seid

# Restart node
sudo systemctl restart seid
```
# Update binary
cd sei-chain
git fetch --all
git checkout <new-version>
make install

# Restart node
sudo systemctl restart seid
```
</Tab>
</Tabs>

### Major Updates

Check warning on line 1636 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1636

Use sentence case for headings: 'Major Updates'.

For major upgrades that introduce state-breaking changes:

Expand All @@ -1611,21 +1643,41 @@
3. Update/replace the binary
4. Restart the node.

```bash
# After node halts
cd sei-chain
git pull
git checkout [new-version]
make install
sudo systemctl restart seid
```
<Tabs>
<Tab title="Prebuilt binary">
```bash
# After node halts
VERSION=<new-version> # the new release tag, e.g. v6.6.0
FILE=sei-chain_${VERSION#v}_linux_x86_64.tar.gz

curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/${FILE}
curl -fLO https://github.com/sei-protocol/sei-chain/releases/download/${VERSION}/checksums.txt
sha256sum -c checksums.txt --ignore-missing \
&& tar -xzf ${FILE} seid \
&& sudo install -m 0755 seid /usr/local/bin/seid

sudo systemctl restart seid
```
</Tab>

<Tab title="Build from source">
```bash
# After node halts
cd sei-chain
git pull
git checkout <new-version>
make install
sudo systemctl restart seid
```
</Tab>
</Tabs>

<Tip>
Build the upgrade before the halt-height so you can quickly replace it
with minimal downtime.
Download the release archive (or build the new binary) ahead of the
halt-height so the swap takes seconds at upgrade time.
</Tip>

## Performance Optimization

Check warning on line 1680 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1680

Use sentence case for headings: 'Performance Optimization'.

Performance optimizations can yield different results depending on your system's
hardware, workload, and network conditions. Before implementing any changes,
Expand All @@ -1633,7 +1685,7 @@
your specific configuration and requirements. Always back up important data
before making modifications.

### Memory Management (sysctl tuning)

Check warning on line 1688 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1688

Use sentence case for headings: 'Memory Management (sysctl tuning)'.

Optimizing memory management settings can help improve performance and
stability, particularly for high-load nodes. These settings control swap usage
Expand All @@ -1647,7 +1699,7 @@
vm.dirty_writeback_centisecs = 100 # Frequency (in hundredths of a second) at which the system writes "dirty" pages to disk
```

### Network Stack Optimization

Check warning on line 1702 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1702

Use sentence case for headings: 'Network Stack Optimization'.

Tuning the network stack can enhance packet processing efficiency and
throughput, particularly for nodes handling a large number of peers and high
Expand All @@ -1661,7 +1713,7 @@
net.core.wmem_max = 16777216 # send buffer size for network sockets
```

### Storage Optimization

Check warning on line 1716 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1716

Use sentence case for headings: 'Storage Optimization'.

Optimizing storage settings can significantly reduce write latency and improve
database performance, especially for nodes using NVMe SSDs.
Expand All @@ -1671,9 +1723,9 @@
blockdev --setra 4096 /dev/nvme0n1 # readahead value to optimize sequential reads
```

## Backup and Recovery

Check warning on line 1726 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1726

Use sentence case for headings: 'Backup and Recovery'.

### Regular Backups

Check warning on line 1728 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1728

Use sentence case for headings: 'Regular Backups'.

Automate backups to avoid data loss:

Expand All @@ -1692,7 +1744,7 @@
systemctl start seid
```

### Recovery Procedure

Check warning on line 1747 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1747

Use sentence case for headings: 'Recovery Procedure'.

Restoring from backup in case of corruption or accidental deletion:

Expand All @@ -1710,7 +1762,7 @@
systemctl start seid
```

## Security Considerations

Check warning on line 1765 in node/node-operators.mdx

View check run for this annotation

Mintlify / Mintlify Validation (seilabs) - vale-spellcheck

node/node-operators.mdx#L1765

Use sentence case for headings: 'Security Considerations'.

- Use firewalls and rate-limiting to prevent attacks
- Keep your system and node software updated
Expand Down
Loading