On-the-fly replacement of software may require simultanous distributed updates of components. If an update changes some interfaces or protocols, the update must be performed in a globally consistent manner. This paper describes an architecture of a dynamically updatable component-based system that unifies research within architecture definitions, architecture configuration, and dynamic software update. It proposes a layered, modular design with meta-components, being responsible for performing the updates. The system is open for architectural and implementational extensions such as update constraints, or different update functions.