# Validatör Node'u Kurma

### **Validatör node'u nedir?** <a href="#what-is-a-validator-node" id="what-is-a-validator-node"></a>

Bir Chiliz Chain validatörü olmak için, belirli bir donanım kurulumuna sahip olmanız ve bir Validatör Node'u çalıştırabilmeniz gerekir. Bir node, işlemleri Chiliz Chain'de gerçekleştirmeden önce doğrulamak için özel olarak kurulmuş bir bilgisayar sistemidir.

### Validatör'ü Başlatma

\
\## Kısaca, aşağıdaki komutu çalıştırın ***(nodkeyhex parametresini güncellediğinizden emin olun!)***

```bash
docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
--mine \
--chiliz \
--datadir=/datadir \
--password=/datadir/password.txt \
--allow-insecure-unlock \
--unlock=f9100d364b45a8fdbd178ed1edfe632cc7eb2ecc \
--syncmode=full \
--gcmode=archive \
--miner.gastarget=30000000 \
--miner.gaslimit=40000000 \
--miner.gasprice=5000000000 \
--nodekeyhex=2668f377e69de_EXAMPLE_REPLACE_WITH_YOUR_VALUE_c88bea3e337446ed73 \
--nat=extip:140.250.140.250 \
--verbosity=4
```

#### Ön şartlar <a href="#prerequisites" id="prerequisites"></a>

Chiliz Chain validator node'unu çalıştırmak için makinenizde veya sunucunuzda Docker Engine kurulu olmalıdır, bu nedenle devam etmeden önce lütfen [**Docker kurulumunu**](https://docs.docker.com/engine/install/) tamamlayın.

**Sistem gereksinimleri**

Validatör node'unuzu çalıştırmak için özel bir sunucuya ihtiyacınız olacaktır. Bu sunucuda en az 4GB RAM, 2 CPU çekirdeği ve optimum performans için bir SSD bulunmalıdır. Zincirle senkronize etmek için en az 300 GB boş disk alanına sahip olmanız önerilir. Amazon Web Services, Google Cloud Platform ya da Microsoft Azure gibi bir bulut sağlayıcısı kullanabilir ya da kendi sunucunuzu kurabilirsiniz.

**Pre-build Docker İmajları**

Mainnet için Docker hub'ında [**Chiliz Chain 2.0 genel deposundaki önceden oluşturulmuş Docker imajlarını**](https://hub.docker.com/layers/chilizchain/ccv2-geth/v1.1.0/images/sha256-824cca6d3c5120bd156704e6b053d7e19e9a824635a0a970b2afbe72cfe11b38?context=repo) görüntüleyin veya kullanın.

### Validatör'ü başlatma ve senkronizasyon

Bir Chiliz Chain validatör node'u çalıştırmak için önerilen başlangıç noktası, bağlı veri birimidir. Bu yöntem bir Docker konteynerini yeniden oluşturmak için kullanılırsa, veriler dizinde saklanır ve kolayca yeniden kullanılabilir veya başka bir doğrulayıcıya klonlanabilir.

**Directory (dizin) oluşturma**

Bir dizin oluşturun ve aşağıdaki komutta `-v` parametresinde bu dizini işaret edin: .

```bash
docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-validator \
-p 30303:30303 \
chilizchain/ccv2-geth:latest ...

```

**Validatör adresi oluşturma**

Aşağıdaki komutla validator node'unu oluşturun:

```bash
docker run --rm -ti
-v $(pwd)/keystore:/root/.ethereum/keystore/
chilizchain/ccv2-geth:latest
account new
```

Gizli anahtar dosyası için bir parola yazmanız gerekecektir.

**Önceki komut için sonuç şöyle olacaktır:**

* **Anahtarın public adresi:** Validatör çalıştırılırken, bu adres `--unlock` parametresini ayarlamak için kullanılacaktır.

```bash
docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
...
--unlock=F9100d364b45a8fdbd178ed1edfe632cc7eb2ecc # example

```

Gizli anahtar dosyasının yolu: Bu dosyanın önceki adımlarda oluşturduğunuz `datadir $(pwd)/my-datadir` içindeki “keystore” dizinine taşınması gerekir, bu nedenle dosyanın son yolu şöyle olacaktır “`$(pwd)/my-datadir/keystore/UTC-(TIMESTAMP)-(ADDRESS)`”.&#x20;

**Dosyanın adını DEĞİŞTİRMEYİN.** \
\
**Parola:** Önceki komutun çalıştırılması sırasında yazdığınız parolanın bir dosyada saklanması gerekir: `$(pwd)/my-datadir/password.txt` \
Bu dosya, validatör node'unu çalıştırırken `--password` ayarlamak için kullanılacaktır. \
Unutmayın ki `$(pwd)/my-datadir` ana bilgisayar yolundaki tüm dosyalar /datadir dizinindeki kapsayıcıda bulunacaktır, bu nedenle parola parametresi aşağıdaki örnekte olduğu gibi ayarlanmalıdır:

```bash
docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
...
--password=/datadir/password.txt
...

```

Aşağıdaki önerileri aklınızda bulundurmanız çok önemlidir: <br>

{% hint style="danger" %}

* Genel **(public)** adresinizi herkesle paylaşabilirsiniz. Diğerleri sizinle etkileşime geçmek için buna ihtiyaç duyar.&#x20;
* Gizli anahtarı **ASLA** kimseyle paylaşmamalısınız! Anahtar, fonlarınıza erişimi kontrol eder!&#x20;
* Anahtar dosyanızı **YEDEKLEMELİSİNİZ**! Anahtar olmadan, hesap fonlarına erişmek imkansızdır! Şifrenizi **HATIRLAMALISINIZ**! Şifre olmadan anahtarın şifresini çözmek imkansızdır!
  {% endhint %}

### Validatör node'u anahtarı üretme

*Bu bölüm opsiyoneldir.*

Node için rastgele bir onaltılık dize oluşturulması önerilir. \
Bu, günlüklerde izlenebilirlik ve zincirle ilgili eşleme sorunlarından kaçınmak için yararlıdır.

Bunu başarmak için [https://www.browserling.com/tools/random-hex ](https://www.browserling.com/tools/random-hex)adresini kullanabilir ve node başına 64 karakterli bir onaltılık anahtar oluşturabilirsiniz.\
Bir validatör node'u çalıştırırken, `--nodekeyhex` değerini bu değerle ayarlayabilirsiniz. Bu, node'u yeniden başlattığınızda aynı node adresine (“enode address” olarak adlandırılır) sahip olmasını sağlayacak ve gelecekte daha kolay hata ayıklama veya hata bulmaya olanak tanıyacaktır.

```bash
docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
cchilizchain/ccv2-geth:latest \
...
--nodekeyhex=2668f377e69de_EXAMPLE_REPLACE_WITH_YOUR_VALUE_c88bea3e337446ed73 # example
...

```

### NAT port mapping mekanizması ayarlama

Geth belgelerine göre, `--nat` parametresinin farklı seçenekleri vardır: `any, none, upnp, pmp ve extip:<IP>`. Varsayılan değer `any'`dir.

`extip:<IP>` kullanmanızı öneririz; burada IP, validatörün başlatıldığı genel IPv4'tür.

```bash
docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
...
--nat=extip:140.250.140.250 # example
...
```

### Verbosity ayarlama

Daha derin sorun giderme için, günlük kaydı verbosity olarak ayarlanabilir:&#x20;

* 0=silent
* 1=error
* 2=warn
* 3=info
* 4=debug
* 5=detail

`--verbosity` parametresi için varsayılan değer 3'tür. \
Biz 4 kullanmanızı öneririz.

```bash
docker run \
-v $(pwd)/my-datadir:/datadir \
--name ccv2-node \
-p 30303:30303 \
chilizchain/ccv2-geth:latest \
...
--verbosity=4 #example
...
```


---

# Agent Instructions: 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://docs.chiliz.com/tr/ogren/validator-olma/validator-nodeu-kurma.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.
