The paper describes a metaobject architecture for distributed fault tolerant systems. Basically metaobject protocols enables functional objects to be independent from meta-functional properties implemented by metaobjects. Metaobjects can thus be specialised for fault tolerance, security, distribution and used on a case-by-case basic within application. The runtime support for metaobjects must include basic common services required in distributed fault tolerant computing (i.e. atomic multicast protocols and group management facilities, detection mechanisms). Offthe-shelf microkernels correspond to the very basic layer of the system. Architectural issues, application issues, development issues, experimental and performance issues are presented. Some implementation details and properties (ease of use, reusability, configurability, etc., namely flexibility) of our system are also discussed. Two prototypes have been developed today, the last one being based on the Chorus microkernel.