Skip to content

ahmetcelebi86/Mangata-AVS

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 

Repository files navigation

Mangata AVS

image

01.03.2024 tarihinden Daha önceden kurulum yapanlar için güncelleme yöntemi en altta yazmaktadır. Tıkla

Sistem gereksinimleri:

Ubunutu 22.04

NODE TİPİ CPU RAM SSD
Mangata 2 4 40

Kurulum

sudo apt-get update -y && sudo apt-get upgrade -y

Docker Kurulumu

for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
  "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Docker Güncelleme ve Çalıştırma

sudo apt update -y && sudo apt upgrade -y
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo docker run hello-world

Go Kurulumu

cd $HOME
ver="1.21.0"
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz"
rm "go$ver.linux-amd64.tar.gz"
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source $HOME/.bash_profile
go version

EigenLayer CLI kurulumu

git clone https://github.com/Layr-Labs/eigenlayer-cli.git
cd eigenlayer-cli
mkdir -p build
go build -o build/eigenlayer cmd/eigenlayer/main.go
cd
sudo cp eigenlayer-cli/build/eigenlayer /usr/local/bin/

Kapalı parantez dahil, <key-ismi> değiştirin, <> parantezleri kaldırın.

Ekran görüntüsü 2024-02-08 124148

eigenlayer operator keys create --key-type ecdsa <key-ismi>

Bu komuttan sonra şifre oluşturmanızı isteyecek, şifre karmaşık olmalı. Aynı şifreyi iki kere gireceğiz.

Ekran görüntüsü 2024-02-08 124257

ecdsa KEY bize bir EVM adresi, private key ve dosya path (yolu) verecek

Buradaki bilgiler sizde de benzer şekilde çıkacak güvenli şekilde saklayın.

Ekran görüntüsü 2024-02-08 124603

Kapalı parantez dahil, <key-ismi> değiştirin, <> parantezleri kaldırın. Ekran görüntüsü 2024-02-08 125720

eigenlayer operator keys create --key-type bls <key-ismi>

Bu komuttan sonra şifre oluşturmanızı isteyecek, şifre karmaşık olmalı. Aynı şifreyi iki kere gireceğiz.

Ekran görüntüsü 2024-02-08 125831

bls KEY ise bir private key verecek. Hepsini kayıt edelim.

Ekran görüntüsü 2024-02-08 125927

Keyleri listeyerek dosya yollarını kontrol ediyoruz.

Ekran görüntüsü 2024-02-08 130326

eigenlayer operator keys list

Operatör Kaydı

eigenlayer operator config create

Sırasıyla bunlarıda yazıyorum kolaylık için, en aşağıda görselide olcak:

y diyoruz

Ekran görüntüsü 2024-02-08 131009

operator adresi olarak, ecdsa key oluşturduğumuzda verdiği evm adresini girin.

Ekran görüntüsü 2024-02-08 131052

earning operator adres yine aynı ecdsa-evm adresi girin, yukarıdaki ile aynı.

Ekran görüntüsü 2024-02-08 131125

Public RPC alma;

goerli eth RPC isteyecek, BURADAN siteye gidiyoruz.

Ekran görüntüsü 2024-02-08 131453

İlk olarak kaydınız yok ise kayıt olun, varsa giriş yapın.

Ekran görüntüsü 2024-02-08 131720

Resimdeki gibi bir isim girip CREATE diyoruz.

Ekran görüntüsü 2024-02-08 131825

Ethereıum Goerli Seçiyoruz ve Save Changes butonuna basıyoruz.

Ekran görüntüsü 2024-02-08 131938

Bu şekilde bir https adresi verecek onu bir yere not edelim.

Ekran görüntüsü 2024-02-08 132102

WebSockets bölümüne gidip oradaki adresi de bir yere not edelim. Lazım olacak.

Kaldığımız yerden devam edelim;

ecdsa key oluşturduğumuzda bize verdiği key pathi tam şekilde giriyoruz

Ekran görüntüsü 2024-02-08 132339

goerli seçiyoruz ve bitiyor. Aşağıda tamamlanmış halinin resmini ekledim.

Bu bize operator.yaml ve metadata.json dosyalarını oluşturacak.

Metadata İşlemleri

nano metadata.json

Bu komutu çalıştırıp dosyanın içine girelim.

Ekran görüntüsü 2024-02-08 132835

Bunun içindeki bilgileri dolduralım. Dolu hali

Ekran görüntüsü 2024-02-08 133210

Bu şekilde dolduruyoruz. Sonra Bu doldurduğumuz bilgileri kopyalayıp bir yere not edelim.

Raw Public Linki oluşturma

Kendi Github sayfamızda Repositories sayfasına gidiyoruz sağda bulunan NEW butonuna basıyoruz.

Ekran görüntüsü 2024-02-08 133334

Reposity Name bölümüne magnata diye isim veriyoruz Public seçiyoruz. En altta Create Repository diyoruz.

Ekran görüntüsü 2024-02-08 133703

Sonrasında size aşağıdaki gibi bir sayfa çıkacak orada READ ME seçip repoyu oluşturun.

Ekran görüntüsü 2024-02-08 133746

Sağ bölümde Add File seçeneği var ona basın. Create File var ona basın.

Ekran görüntüsü 2024-02-08 133906

Create File sekmesine geldiğinizde Aşağıdaki görselde olduğu gibi işlemlerinizi yapın. Node içine yazdığımız bilgilerin aynısı burada olacak.

Ekran görüntüsü 2024-02-08 134122

Bu adımları yaptıktan sonra Commit tuşuna basıyoruz.

Commit tuşuna bastıktan sonra dosyamız yayınlanacak o dosya repo içinden basıp ulaşıyoruz. Sağ bölümde RAW kısmı var ona basıyoruz.

Ekran görüntüsü 2024-02-08 134215

Raw tuşuna bastıktan sonra size tarayıcı da yeni bir sayfa açacaktır. Tarayıcıdaki URL bir yere not edin.

Ekran görüntüsü 2024-02-08 134338

Yukarıdaki adımları hallettiysek devam edelim

nano operator.yaml

metadata_url için metadata.json dosyamızın public raw linkini kullanacağız.

el_delegation_manager_address: 0x1b7b8F6b258f95Cf9596EabB9aa18B62940Eb0a8 # burda bu yazıyor olmalı

Adımları düzgünce eklediysek CTRL + X + Y Enter yapıp çıkıyoruz. Aşağıya görselini de ekledim.

Node içinde aldığınız Private Key dosyasını metamask içine import ediyoruz.

Metamask> Account basıyoruz => En altta Add Account kısmı var ona basıyoruz => Hesabı içe aktar seçeneğine basıyoruz. => Sonrasında node içinden aldığımız private key girip import işlemini tamamlıyoruz.

Node için kurduğumuz cüzdana 0,5 - 1 arasında GOERLİ ETH gönderelim. Yeni cüzdana ETH geçtikten sonra; (Eğer goerli ETH bulamazsanız daha düşük miktarlar da olur.)

eigenlayer operator register operator.yaml

komutunu çalıştırıp. Hem edsa hem bls şifremizi girip Logların akmasının bitmesini bekliyoruz.

eigenlayer operator status operator.yaml

Durum kontrolü yapıyoruz. Aşağıdaki gibi çıktı almanız gerekiyor.

Ekran görüntüsü 2024-02-09 091954

**Önemli!! ilk kez kuruyorsan ve metadata değişiklik yapmadıysan bu komutu girmene gerek yok!

eigenlayer operator update operator.yaml

Meta data üzerinde herhangi bir değişiklik yaparsanız, bu komut ile güncellemeyi unutmayın.

Mangata VS Kurulumu

Önemli rETH ve sETH TVL miktarınız yani platforma stake miktarınızın toplamı 0,3-0,35'den fazla olmalıdır. Birazını rETH, birazını da sETH yaparak eklersiniz.

BURADAN Uniswap'a gidiyoruz. Goereli Ağında yeni kurduğumuz cüzdan ile bağlanıyoruz.

İlk rETH alacağız. rETH=0x178e141a0e3b34152f73ff610437a7bf9b83267a kontrat adresi ile uniswapta aratıp bir miktar alıyoruz.

Şimdi de sETH alıyoruz. sETH= 0x1643e812ae58766192cf7d2cf9567df2c37e9b7f kontrat adresi ile uniswapta aratıp bir miktar alıyoruz.

BURADAN sETH ve rETH poollarına stake ediyoruz.

Stake adımları tamamlandıktan sonra Terminalden adımlarımıza devam edelim

git clone https://github.com/mangata-finance/avs-operator-setup.git
cd avs-operator-setup
chmod +x run.sh
nano .env

Ekran görüntüsü 2024-02-09 094222

Ekrana böyle bir sayfa gelecek buradaki düzenlememizi yapıyoruz.

ETH_RPC_URL buraya infuradan aldığımız https olan PRC adresini giriyoruz.

ETH_WS_URL buraya infura WSS linki giriliyor.

ECDSA_KEY_FILE_HOST buradaki dosya yolunu silip node içinden alıp kaydettiğimi ECDSA key dosya yolunu ekliyoruz.

BLS_KEY_FILE_HOST buradaki bölüme bls dosya yolunu yazıyoruz.

ECDSA_KEY_PASSWORD buraya ecdsa için verdiğimiz şifreyi giriyoruz.

BLS_KEY_FILE_HOST buraya bls için verdiğimiz şifreyi giriyoruz.

Bu adımları tamamladıktan sonra CTRL X + Y Enter yaparak çıkıyoruz.

./run.sh opt-in
docker compose up -d

Docker contianer id bulmak için

docker ps

aldığınız ID ile aşağıdaki komutu girip, log kayıtlarının akmasını bekliyoruz.

docker logs -f <container_id>

Aşağıdakine benzer şekilde log kayıtlarınız akmış olacak.

Ekran görüntüsü 2024-02-09 095454

BURADAN Mangata'nın discord kanalına gidip Verify sonrasında #AVS Operator kanalına, yukarıdaki gibi görseli atıp Node Runner rolümüzü isteyelim.

Bu arada Dokümanın orjinali'ne BURADAN ulaşabilirsiniz. Rues hazırladığı dokümanı kullandım ve yeni başlayanlar için ayrıntıları ekledim.

Rues reposunda ödüllü olduğunu ve KYC yapılabileceğini belirtmiş. Ona göre kendi kararınızı verebilirsiniz.

Güncelleme

Güncelleme adımlarına başlayalım.

Unutmadan Stake yaptığınız rETH ve sETH miktarlarının toplamının 1ETH yi geçmesi veya eşit olması şart.

TIKLA Aşağıdaki gibi 1ETH yi geçmiş veya eşit olmalı resim

cd avs-operator-setup
docker compose down

.env dosyanızı yedeklemeniz gerekmekte. isterseniz nano .env yapıp direkt kopyalayın ekrandaki her şeyi

git reset --hard
git pull
docker compose pull
docker compose down

Az önce yazdığımız kodlar ile node dosyalarımızı güncelledik. bu nedenle güncellenmiş env dosyasını düzenlememiz gerekmektedir.

nano .env

resim

resmideki çift süslü parantezli yerleri yedeklediğimiz dosyadan kopyalayın başka hiçbir şeye dokunmayın.

SÜSÜLÜ PARANTEZLERİ DE SİLİN!!!

Eğer sizin env dosyanız resimdeki gibi değil ise aşağıdaki kodları yazın.

rm -rf .env
nano .env

Aşağıdaki kısmı kopyalayıp bir not defterinde açın süslü parantezleri silip gerekli değerleri yazın.

Sonra da az önce boş bir sayfa olarak açtığımız .env dosyasına yapıştırın sağ tık ile yapıştırın.

MAIN_SERVICE_IMAGE=mangatasolutions/avs-finalizer:80ac399c2c2f103dd8de1be62c114d5090cd11cd
MAIN_SERVICE_NAME=avs-finalizer-node

#COLORBT_SHOW_HIDDEN=1
#RUST_BACKTRACE=full

# Goerli contracts deployment
AVS_REGISTRY_COORDINATOR_ADDR=0x5620cDb94BaAaD10c20483bd8705DA711b2Bc0a3

# Finalizer Service Manager RPC
AVS_RPC_URL=https://avs-aggregator-testnet.mangata.online/
# register with AVS when the node starts
OPT_IN_AT_STARTUP=true

RUST_LOG=avs=info

###############################################################################
####### TODO: Operators please update below values for your node ##############
###############################################################################

# TODO: Operators need to update this to provide connection to ETH & network nodes
CHAIN_ID=5
ETH_RPC_URL={{RPC url https://goerli.infura.io/v3/ şeklinde olacak}}
ETH_WS_URL= {{Websocket url wss://goerli.infura.io/ws/v3/ şeklinde olacak}}
SUBSTRATE_RPC_URL=wss://collator-01-ws-rollup-testnet.mangata.online:443

# TODO: Operators need to update this to their own keys, either use files or encoded JSON
# this is where your keys are stored on local storage
ECDSA_KEY_FILE_HOST=/root/.eigenlayer/operator_keys/{{eigenlayer_cüzdan_adınız}}.ecdsa.key.json
BLS_KEY_FILE_HOST=/root/.eigenlayer/operator_keys/{{eigenlayer_cüzdan_adınız}}.bls.key.json

# this is where the node binary finds the keys in the docker container
ECDSA_KEY_FILE=/app/operator_keys/ecdsa_key.json
BLS_KEY_FILE=/app/operator_keys/bls_key.json

# it is possible to pass the encoded json key directly with these env flags
# comment above both ECDSA_KEY_FILE & BLS_KEY_FILE if used
#ECDSA_KEY_JSON=
#BLS_KEY_JSON=

# TODO: Operators need to add password to decrypt the above keys
ECDSA_KEY_PASSWORD={{Şifrenizi buraya yazın}}
BLS_KEY_PASSWORD={{Şifrenizi buraya yazın}}

İşiniz bittiği zaman bu resimdeki gibi gözükmesi lazım dosyanızın.

resim

env ile işiniz bitince

docker compose up -d
docker ps

Bu kod ile container id kopyalayın

docker logs -f {id} 

Süslü parantezli kısmı silip kopyaladığınız id yi yapıştırın.

Ardından resimdeki gibi gözükmesi lazım.

resim

Ama biraz sürebilir bu logların akmaya başlması şuan ağ çok yavaş. Resimdeki gibi Sucesfully registered yazdıysa bırakın kendi haline çok da kafaya takmayın. 30dk sonra ✅ görmez iseniz logda bi sorun olmuş olabilir. Telegram grubuna gelin çözelim sorunu hem rehbere de ekleriz başka karşılaşanlar için iyi olur.

Güncelleme Rehberini Yazan : @dwtexe Esenlikler Dilerim.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published