Skip to content

Latest commit

 

History

History
169 lines (109 loc) · 6.01 KB

README_OPERATOR.md

File metadata and controls

169 lines (109 loc) · 6.01 KB

Register as an Aligned operator in testnet

Requirements

Note

You must be whitelisted to become an Aligned operator.

This guide assumes you are already registered as an operator with EigenLayer.

Hardware Requirements

Minimum hardware requirements:

Component Specification
CPU 16 cores
Memory 32 GB RAM
Bandwidth 1 Gbps
Storage 256 GB disk space

Building from Source (Recommended)

We recommend building from source whenever possible. If using the docker image, these steps can be skipped.

Ensure you have the following installed:

Also, you have to install the following dependencies for Linux:

  • pkg-config
  • libssl-dev

To install foundry, run:

make install_foundry
foundryup

To build the operator binary, run:

make build_operator

To update the operator, run:

git pull
make build_operator

This will recreate the binaries. You can then proceed to restart the operator.

Configuration

When building from source

Update the following placeholders in ./config-files/config-operator.yaml:

  • "<operator_address>"
  • "<earnings_receiver_address>"
  • "<ecdsa_key_store_location_path>"
  • "<ecdsa_key_store_password>"
  • "<bls_key_store_location_path>"
  • "<bls_key_store_password>"

"<ecdsa_key_store_location_path>" and "<bls_key_store_location_path>" are the paths to your keys generated with the EigenLayer CLI, "<operator_address>" and "<earnings_receiver_address>" can be found in the operator.yaml file created in the EigenLayer registration process. The keys are stored by default in the ~/.eigenlayer/operator_keys/ directory, so for example <ecdsa_key_store_location_path> could be /path/to/home/.eigenlayer/operator_keys/some_key.ecdsa.key.json and for <bls_key_store_location_path> it could be /path/to/home/.eigenlayer/operator_keys/some_key.bls.key.json.

When using docker

Update the following placeholders in ./config-files/config-operator.docker.yaml:

  • "<operator_address>"
  • "<earnings_receiver_address>"
  • "<ecdsa_key_store_password>"
  • "<bls_key_store_password>"

Make sure not to update the ecdsa_key_store_location_path and bls_key_store_location_path as they are already set to the correct path.

Then create a .env file in operator/docker/.env. An example of the file can be found in operator/docker/.env.example.

The file should contain the following variables:

Variable Name Description
ECDSA_KEY_FILE_HOST Absolute path to the ECDSA key file. If generated from Eigen cli it should be in ~/.eigenlayer/operator_keys/
BLS_KEY_FILE_HOST Absolute path to the BLS key file. If generated from Eigen cli it should be in ~/.eigenlayer/operator_keys/
OPERATOR_CONFIG_FILE_HOST Absolute path to the operator config file. It should be path to config-files/config-operator.docker.yaml

Deposit Strategy Tokens

We are using WETH as the strategy token.

To do so there are 2 options, either doing it through EigenLayer's website, and following their guide, or running the commands specified by us below.

You will need to stake a minimum of a 1000 Wei in WETH. We recommend to stake a maximum amount of 10 WETH. If you are staking more than 10 WETH please unstake any surplus over 10.

Option 1:

EigenLayer's guide can be found here.

Option 2:

If you have ETH and need to convert it to WETH you can use the following command, that will convert 1 Eth to WETH. Make sure to have foundry installed. Change the parameter in ---value if you want to wrap a different amount:

cast send 0x94373a4919B3240D86eA41593D5eBa789FEF3848 --rpc-url https://ethereum-holesky-rpc.publicnode.com --private-key <private_key> --value 1ether

Here <private_key> is the placeholder for the ECDSA key specified in the output when generating your keys with the EigenLayer CLI.

Finally, to end the staking process, you need to deposit into the WETH strategy, as shown in the Eigen guide.

An alternative using the CLI (only when running without docker)

Run the following command to deposit one WETH

./operator/build/aligned-operator deposit-into-strategy --config ./config-files/config-operator.yaml --strategy-address 0x80528D6e9A2BAbFc766965E0E26d5aB08D9CFaF9 --amount 1000000000000000000

If you don't have Holesky Eth, these are some useful faucets:

Start the operator

From Source (Recommended)

./operator/build/aligned-operator start --config ./config-files/config-operator.yaml

Using Docker

Ensure you have the following installed:

Then run:

make operator_start_docker

Unregister the operator from Aligned

To unregister the Aligned operator, run:

cast send --rpc-url https://ethereum-holesky-rpc.publicnode.com --private-key <private_key> 0x3aD77134c986193c9ef98e55e800B71e72835b62 'deregisterOperator(bytes)' 0x00

<private_key> is the one specified in the output when generating your keys with the EigenLayer CLI.