In this paper we develop an algorithm for allocating redundancy among subsystems so as to achieve maximum system reliability without exceeding any of several linear constraints on redundancy. The algorithm represents a generalization of the one developed by Kettelle for the case of a single constraint on redundancy, published in this Journal in 1962.