One prevalent assumption in queueing theory is that the number of servers in a queueing model is deterministic. However, randomness in the number of available servers often arises in practice, e.g., in virtual call centers where agents are allowed to set their own schedules. In this paper, we study the problems of staffing and controlling queueing systems with an uncertain number of servers and impatient customers. Because randomness in the number of servers creates congestion in the system, the customer abandonment distribution plays an important role. We characterize how it affects both the optimal staffing policy and the cost incurred by the manager. Because of strong dependence on the abandonment distribution, it is natural to investigate ways of controlling customer abandonment behavior so as to mitigate that cost. Here, we propose doing so by making delay announcements in the system. We characterize how the manager may use three controls in her toolbox, staffing, compensation, and the announcements, to effectively control her system. We show that despite jointly optimizing the usage of those three controls, it may be cost effective for the manager to understaff, overstaff, or match supply and demand in any given shift.