A stake pool needs at least 2 running nodes: A block-producing node and a relay node. The block-producing node will only connect with it's relay, while the relay will establish connections with other relays in the network. Each node must run in an independent server.
To process transactions and issue blocks, the block-producing node requires an operational certificate and a set of keys: Cold Keys, VRF Keys and KES Keys.
How to generate the keys:
Generate Cold Keys and a Cold_counter:
cardano-cli shelley node key-gen \
--cold-verification-key-file cold.vkey \
--cold-signing-key-file cold.skey \
NOTE: Don't store the cold keys on your server or in any computer with internet access. The best place for your cold keys is a SECURE USB or other SECURE EXTERNAL DEVICE.
Generate VRF Key pair:
cardano-cli shelley node key-gen-VRF \
--verification-key-file vrf.vkey \
Generate the KES Key pair:
cardano-cli shelley node key-gen-KES \
--verification-key-file kes.vkey \
to learn more about stake pool keys, please visit Generate your stake pool keys