Technical documentation
Here are the relevant details:
Polygon Node Deployment Configuration
This Kubernetes Deployment is designed to deploy Polygon node, a critical component of our blockchain ecosystem.
Polygon node consists of three main containers:
heimdall Container
The heimdall container is responsible for running the Heimdall node on the Polygon network. Its specific configurations include:
Docker Image:
0xpolygon/heimdall:1.0.0-beta
Command: Initiates the Heimdall process.
Arguments: Specifies various configuration options for Heimdall, such as the chain to connect to (--chain=mumbai), enabling the REST server (--rest-server), and the Heimdall data directory (--home=/var/lib/heimdall).
Ports: Exposes port 26656 to establish connections with other nodes for peer-to-peer communication.
Volume: Mounts a volume named
heimdall-config-volume
to store persistent Heimdall data.
Heimdall is critical for transaction validation on the Polygon network, ensuring the security and integrity of the blockchain.
bor Container
The bor container is responsible for running the Bor node on the Polygon network. Its specific configurations include:
Docker Image:
0xpolygon/bor:1.0.0-beta
Command: Starts the Bor server.
Arguments: Specifies the path to the Bor configuration file (--config=/var/lib/bor/config.toml).
Volume: Mounts a volume named
bor-config-volume
to store persistent Bor configuration data.
Bor plays a crucial role in the Polygon network, handling the consensus layer and transaction validation.
rabbitmq Container
The rabbitmq container uses the official RabbitMQ image and is responsible for providing a messaging infrastructure for internal system communication. Its specific configurations include:
Docker Image:
rabbitmq:3.8
Ports: Exposes ports
5672
and15672
for communication with services that require messaging.
RabbitMQ is a fundamental part of our system, enabling asynchronous communication between components for coordination and information exchange.
This Deployment is part of a broader infrastructure that supports the secure and efficient operation of our Polygon network.
Persistent Volumes (PVs) e Persistent Volume Claims (PVCs)
These PVs and PVCs play a crucial role in ensuring data persistence and storage management for these components within the Kubernetes cluster.
Let's break down their purposes and significance:
PV and PVC for Heimdall
heimdall-pv-sentry
Persistent Volume (PV):
Purpose: This PV is intended to provide a persistent storage solution for the Heimdall component of Polygon node.
Configuration Highlights:
Capacity: 150 gigabytes of storage (
storage: 150Gi
).Access Mode: ReadWriteOnce, allowing read and write access by a single node at a time.
Reclaim Policy: Retain, which means that even after the PVC is deleted, the data in the PV will be retained.
Storage Class: Uses the
standard
storage class.Host Path: Maps to the host machine's
/var/lib/heimdall
directory, ensuring data persistence.
heimdall-pvc-sentry
Persistent Volume Claim (PVC):
Purpose: The PVC is a request for storage resources that will be bound to the
heimdall-pv-sentry
PV. It allows Heimdall to access and use the specified storage capacity.Configuration Highlights:
Access Mode: ReadWriteOnce, ensuring that only one node can use the storage at a time.
Requested Storage: Requests 150 gigabytes of storage (
storage: 150Gi
).Storage Class: Uses the
standard
storage class.Selector: Matches labels with the
app: Polygon-Sentry
label to associate this PVC with the Polygon node application.
PV and PVC for Bor
bor-pv-sentry
Persistent Volume (PV):
Purpose: This PV is designed to offer persistent storage for the Bor component of Polygon node.
Configuration Highlights:
Capacity: 600 gigabytes of storage (
storage: 600Gi
).Access Mode: ReadWriteOnce, allowing a single node to read and write data.
Reclaim Policy: Retain, ensuring data retention even after PVC deletion.
Storage Class: Utilizes the
standard
storage class.Host Path: Mapped to the host machine's
/var/lib/bor
directory to maintain data persistence.
bor-pvc-sentry
Persistent Volume Claim (PVC):
Purpose: The PVC represents a request for storage resources bound to the
bor-pv-sentry
PV. It facilitates Bor's access to the specified storage capacity.Configuration Highlights:
Access Mode: ReadWriteOnce, allowing exclusive access by one node.
Requested Storage: Requests 600 gigabytes of storage (
storage: 600Gi
).Storage Class: Utilizes the
standard
storage class.Selector: Matches labels with the
app: Polygon-Sentry
label to associate this PVC with the Polygon node application.
In summary, these PVs and PVCs are essential for Polygon node's data storage needs. They ensure that Heimdall and Bor have access to the required storage capacity while maintaining data integrity and persistence, which are crucial for the reliable operation of our blockchain ecosystem.
Last updated