Cloud RAN (C-RAN) where Base Band Units (BBUs) are collocated in a computing/processing center remotely away from their correspondent Remote Radio Heads (RRHs) for the efficient resource sharing is the prevailing RAN (Radio Access Network) design for next generation mobile networks. However, in C- RAN, the possible high latency from a RRH to the centralized Cloud BBU pool is not desirable for some latency critical applications. Thus, several local and smaller BBU pools are necessary to be deployed close to the RRHs to constrain the latency. This RAN architecture is so-call Fog RAN (F-RAN). A Mobile Edge Computing (MEC) center can be deployed beside or nearby a F-RAN BBU pool for timely processing. In this paper, we tackle the BBU resource allocation problem (a modified bin packing problem) between the set of RRHs and the set of BBU pools in F-RAN so that only a minimal number of BBU pools, i.e., the bins in a bin packing problem, will be turned on to serve all RRHs and so to save the energy consumption. Also, for the stability and fault tolerance, in addition to saving energy, the proposed algorithms also perform load balancing amid serving BBU pools. Our extensive simulation results show that the proposed scheme for energy efficient BBU resource allocation is able to achieve the goal of saving energy consumption and load balancing.