À un niveau élevé, OpenStack est une collection de logiciels qui vous permet de créer et de gérer un service de cloud computing similaire à Amazon AWS ou Rackspace Cloud.
Ainsi, le client d'une installation OpenStack interagirait avec OpenStack pour créer de nouvelles machines virtuelles serveur, réserver plus d'espace de stockage, redémarrer ou réimager des serveurs, lire et écrire des fichiers dans le stockage, etc.
Concernant @Johan "Je peux [..] faire cela avec un serveur web normal et une base de données, et avec du python/php". Non, vous ne pouvez pas -- nous parlons de flottes de serveurs, peut-être des milliers de serveurs, et certains clients n'ont besoin que d'une fraction de la capacité d'un seul serveur, alors que d'autres clients ont besoin de centaines de serveurs.
À partir du Guide d'administration du OpenStack Object Storage:
Actuellement, OpenStack développe deux projets connexes : OpenStack Compute, qui offre une puissance de calcul grâce à la gestion de machines virtuelles et de réseaux, et OpenStack Object Storage, qui est un logiciel pour un stockage d'objets redondant et évoluable.
OpenStack ne le fait pas seul ; vous aurez évidemment besoin de nombreux serveurs, d'une couche de virtualisation/hyperviseur, de serveurs de stockage, d'un réseau bien géré, etc. OpenStack gère ensuite cette infrastructure existante de manière plus automatisée et programmatique.
Si vous cherchez plus d'informations, alors peut-être que les Guides pour les développeurs et les administrateurs sont le meilleur endroit pour commencer. Leur première page semble un peu inhabituelle, mais la Table des matières est toujours à l'extrême gauche.