Large scale deployment of Internet of Things (IoT) devices poses challenges in resource allocation. In this paper, alternating direction method of multipliers (ADMM) is adopted to solve such large scale resource allocation problems. Based on this, three optimization problems are investigated in a hierarchical IoT network. Considering ADMM could not solve a non-convex optimization problem directly, a non-convex fractional programming problem i.e., energy efficiency maximization problem for IoT region server, is formulated. Faced with this problem, we introduce the Dinkelbach algorithm to transfer the energy efficiency maximization problem into an equivalent convex optimization problem. Then the classic ADMM with two blocks is employed to solve the equivalent convex optimization problem. On the other hand, the classic ADMM with two blocks could not satisfy the convergence speed demands of the high-dimensional convex optimization problems any more. Thus, the network latency minimization problem for controller is designed and then solved by the Jacobian-ADMM algorithm in parallel. It is hard to satisfy controller and IoT region servers' objectives at the same time. Given this, an incentive mechanism on the basis of Stackelberg game is designed. Thus a game-based resource allocation problem is proposed to deal with the contradiction between the centralized objective of the controller and the individual objectives from the IoT region servers. Based on the Dinkelbach algorithm and Jacobian-ADMM algorithm, a two-layer iterative resource allocation algorithm is posed to solve the game-based resource allocation problem. Last but not least, the convergence of the proposed algorithms are analyzed with numerous simulation results.