Well, depending on your needs and the schema you use, you could indeed face 2TB storage requirements for the whole planet (but not necessarily...). And OSM data is growing steadily each year, so factor that in as well.
I currently run a complex multi-scale topographic map style database for the whole of Europe (about 1/3 of planet) based on OSM data using a custom schema including materialized views and dedicated indexing, and that database is surely over 500 GB for Europe alone (I run it of a 2TB Samsung EVO SSD, for planet, I would need a 4TB one with this custom schema).
However, as to the "nodes" table: this is only needed if you intend to run (minutely) updates, as the nodes table is needed as the source for creating the new Point, Line and Polygon features contained in updates. And at least for osm2pgsql, you also have the option to store the nodes table outside your database (--flat-nodes option), but I don't know about osmosis, I have never used it.
If you only intend to import once, or replace the whole database by a fresh import now and then, then you can drop the nodes (and possibly ways and relations if present) table.
For your reference, I have found these links the most insightful about OSM in general:
https://learnosm.org/en/osm-data/
https://osm2pgsql.org/doc/manual.html
https://wiki.openstreetmap.org/wiki/Component_overview