Bandwidth: can be mitigated using <a target="_blank" rel="noopener noreferrer" href="https://docs.joinpeertube.org/admin/following-instances#instances-redundancy">PeerTube redundancy system</a> and cache servers that serve video static files in front of your PeerTubeinstance
While viewers themselves contribute a little additional bandwidth while watching the video in their browsers (mostly during surges), mirroring servers have a much greater uplink and will help your instance with sustained higher concurrent streaming.
Except for video transcoding, a PeerTubeinstance is not CPU bound. Neither Nginx, PeerTube itself, PostgreSQL nor Redis require a lot of computing power. If it were only for those, one could easily get by with just one thread/vCPU.
<a target="_blank" rel="noopener noreferrer" href="https://search.joinpeertube.org/">PeerTube videos/channels searchindex</a> development and maintenance;
<a target="_blank" rel="noopener noreferrer" href="https://packages.joinpeertube.org/api/v1/ping">PeerTube plugins index</a> development and maintenance;