> For the complete documentation index, see [llms.txt](https://services.aknodes.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://services.aknodes.com/mainnet-networks/entangle/migrate-validator.md).

# Migrate Validator

## Migrate your validator to another machine

#### 1. install the mainnet node on your new server

#### 2. Confirm that you have the recovery seed phrase information for the active key running on the old machine

**backup your key**

```
entangled keys export mykey
```

> *This prints the private key that you can then paste into the file `mykey.backup`*

**get list of keys**

```
entangled keys list
```

#### 3. Recover the active key of the old machine on the new machine

**This can be done with the mnemonics**

```
entangled keys add mykey --recover
```

**Or with the backup file `mykey.backup` from the previous step**

```
entangled keys import mykey mykey.backup
```

#### 4. Wait for the new full node on the new machine to finish catching-up

**To check synchronization status**

```
entangled status 2>&1 | jq .SyncInfo
```

> *`catching_up` should be equal to `false`*

#### 5. After the new node has caught-up, stop the validator node

> *To prevent double signing, you should stop the validator node before stopping the new full node to ensure the new node is at a greater block height than the validator node* *If the new node is behind the old validator node, then you may double-sign blocks*

**Stop and disable service on old machine**

```
sudo systemctl stop entangled
sudo systemctl disable entangled
```

> *The validator should start missing blocks at this point*

#### 6. Stop service on new machine

```
sudo systemctl stop entangled
```

#### 7. Move the validator's private key from the old machine to the new machine

**Private key is located in: `~/.entangled/config/priv_validator_key.json`**

> *After being copied, the key `priv_validator_key.json` should then be removed from the old node's config directory to prevent double-signing if the node were to start back up*

```
sudo mv ~/.entangled/config/priv_validator_key.json ~/.entangled/bak_priv_validator_key.json
```

#### 8. Start service on a new validator node

```
sudo systemctl start entangled
```

> *The new node should start signing blocks once caught-up*

#### 9. Make sure your validator is not jailed

**To unjail your validator**

```
entangled tx slashing unjail --from $WALLET --chain-id entangle_33033-1 --gas=700000 --gas-prices="20aNGL" -y
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://services.aknodes.com/mainnet-networks/entangle/migrate-validator.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
