What are the key components and considerations in designing a distributed file storage solution?

Interview question asked to Technical Program Managers, Software Engineers, Machine Learning Engineers and other roles interviewing at Productboard, Apna, eBay and others: What are the key components and considerations in designing a distributed file storage solution?.