It is very challenging to schedule cluster tools subject to wafer residency time constraints and activity time variation. This work develops a Petri net model to describe the system and proposes a two-level real-time scheduling architecture. At the lower level, a real-time control policy is used to offset the activity time variation as much as possible. At the upper level, a periodical off-line schedule is derived under the normal condition. This work presents the schedulability conditions and scheduling algorithms for an off-line schedule. The schedulability conditions can be analytically checked. If they are satisfied, an off-line schedule can be analytically found. The off-line schedule together with a real-time control policy forms the real-time schedule for the system. It is optimal in terms of cycle time minimization. Illustrative examples are given to show the application of the proposed approach.