With the advent of YARN as part of Apache Hadoop 2, Hadoop clusters evolved from running only MapReduce jobs to a whole new world of running various different applications starting from Apache Tez for interactive/batch applications to Apache Storm for stream-processing. To make the best use of a YARN cluster, there are questions that need to be addressed at various levels. For an administrator managing a YARN cluster, how does one go from configuring Map/Reduce slots to configuring resources and containers? Operations teams now have to deal with a new range of metrics when managing YARN clusters. A YARN application-developer has to understand how to write an efficient application to make the best use of YARN and at the same time gracefully degrading on a busy cluster. In this talk, we’ll will cover YARN best practices from various perspectives - administrators and developers. We’ll describe how administrators can configure a YARN cluster to optimally use the resources depending on the kind of hardware and types of applications being run. We’ll focus on managing a cluster shared across numerous users, how to manage queues and do capacity allocation across different business units. For developers, we’ll cover how to interact with the various components of YARN and focus on the implicit features that all applications need to be built with such as security and failure handling.