In your example:
1. Create a light and light mesh. Position them how they should be in relation to each other.
2. Add a grid. then press F9 or open adjustment box in left hand corner. set to number of lights(x) minus 1 by number of lights(Y) minus 1. Based on your picture it would be 3 by 2. Unless you choose to do by face(See step 5) then you don’t need to subtract 1. So it would be 4 by 3.
3. Select light, shift+select light mesh, and shift+Select grid last so it’s active.
4. Press ctrl+P->Object.
5. On object tab of properties editor expand the Instancing panel click vertex. now you will have an instance of each collection instance at every vertex on the grid. You could also use face. Then uncheck instancer Render so the grid isn’t rendered. you can also uncheck viewport if you don’t want to see it in the viewport either.
6. In outliner click eye and camera icon for the original Mesh and Light. Note: You will have to expand the the grid object to see the parented objects.
Additional info: If you scale in object mode it will also scale the instances. If you scale in edit mode it will create more space between the instances. Also if you decide you want to make everything real(Not linked to the original) then you can select the grid and press Ctrl+A->Make instances real. Then delete the grid.