> For the complete documentation index, see [llms.txt](https://docs.validator247.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.validator247.com/mainnet/penumbra.md).

# Penumbra

**Public Endpoints**

> Grpc:  <https://penumbra-grpc.validator247.com/>
>
> Rpc:  <https://penumbra-rpc.validator247.com/>
>
> Frontend: <https://penumbra-grpc.validator247.com/app/#/dashboard>

Update system

```
sudo apt update
sudo apt-get install git curl build-essential make jq gcc snapd chrony lz4 tmux unzip bc -y
```

Install Go

```
rm -rf $HOME/go
sudo rm -rf /usr/local/go
cd $HOME
curl https://dl.google.com/go/go1.22.1.linux-amd64.tar.gz | sudo tar -C/usr/local -zxvf -
cat <<'EOF' >>$HOME/.profile
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
EOF
source $HOME/.profile
go version
```

Install pcli

```
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/penumbra-zone/penumbra/releases/download/v0.79.0/pcli-installer.sh | sh

# confirm the pcli binary is installed by running:
pcli --version

```

Install pd

```
curl -sSfL -O https://github.com/penumbra-zone/penumbra/releases/download/v0.79.0/pd-x86_64-unknown-linux-gnu.tar.gz
tar -xf pd-x86_64-unknown-linux-gnu.tar.gz
sudo mv pd-x86_64-unknown-linux-gnu/pd /usr/local/bin/

# confirm the pd binary is installed by running:
pd --version

```

Install CometBFT

```
echo export GOPATH=\"\$HOME/go\" >> ~/.bash_profile
echo export PATH=\"\$PATH:\$GOPATH/bin\" >> ~/.bash_profile
```

```
git clone https://github.com/cometbft/cometbft.git
cd cometbft
git checkout v0.37.5
make install
```

to put the binary in `$GOPATH/bin` or use:

```
make build
```

## Create service files

/etc/systemd/system/cometbft.service

```
[Unit]
Description=CometBFT for Penumbra

[Service]
ExecStart=/usr/local/bin/cometbft start --home /root/.penumbra/network_data/node0/cometbft
Restart=no
User=root

[Install]
WantedBy=default.target

```

/etc/systemd/system/penumbra.service

```
[Unit]
Description=Penumbra pd
Wants=cometbft.service

[Service]
# If both 1) running pd as non-root; and 2) using auto-https logic, then
# uncomment the capability declarations below to permit binding to 443/TCP for HTTPS.
CapabilityBoundingSet=CAP_NET_BIND_SERVICE
AmbientCapabilities=CAP_NET_BIND_SERVICE

# ExecStart=/usr/local/bin/pd start
# Consider overriding the home directory, e.g.
ExecStart=/usr/local/bin/pd start --home /root/.penumbra/network_data/node0/pd
Restart=no
User=root
# Raise filehandle limit for tower-abci.
LimitNOFILE=65536
# Consider configuring logrotate if using debug logs
# Environment=RUST_LOG=info,pd=debug,penumbra=debug,jmt=debug

[Install]
WantedBy=default.target

```

```
sudo systemctl daemon-reload

sudo systemctl enable cometbft
sudo systemctl enable penumbra

sudo systemctl restart cometbft
sudo systemctl restart penumbra

sudo systemctl status penumbra

sudo systemctl status cometbft

```

Starrt cometbft

```
cometbft start --home /root/.penumbra/network_data/node0/cometbft
```

Check penumbra Logs

```
sudo journalctl -u penumbra -f -o cat
```
