Software-Defined Networking (SDN) is a new architecture with symmetric/asymmetric network structures that separates the control plane of network devices from the data plane, and a Controller Placement Problem (CPP) is a critical management problem in SDN. The main research content of the CPP is to determine the number and location of controllers placed in a network topology, as well as the connection relationship between controllers and switches. However, traditional CPP solutions based on symmetric/asymmetric structures may not be efficient to meet the increasing requirements of SDN applications. In order to improve the CPP solutions from the viewpoint of hierarchical management, this paper considers the CPP solutions as a multi-objective optimization problem based on symmetric/asymmetric structures in the SDN architecture. Thus, this paper then proposes a multi-controller placement strategy based on an improved Harris Hawks Optimization algorithm. Firstly, the local controller load is limited, and a Sin chaotic map is introduced to initialize the CPP scheme. The total latency of the network, the reliability of the node, the total failure rate of the link and the total placement cost are seriously considered when placing the controllers. Secondly, a Cos nonlinear function is added to the global search. A dynamic adaptive weight factor is used to smooth the switching approach between the global search and the local search, so as to enhance the global search ability. Then, a Cauchy variation perturbation is added to the obtained CPP scheme to strengthen the diversity of CPP schemes, and the CPP scheme with the Pareto front is finally solved. The topology simulation of three real large-scale SDN networks shows that the proposed strategy, based on an improved Harris Hawks Optimization algorithm, has more robust advantages in comparison to other algorithms.