"Should I just put them as instances on circle or is there an option with just setting a position in geometry nodes?"
- Yes, in this case it makes sense to instantiate the objects as instances along the points of a circle.
- Yes, of course, with Geometry Nodes you can wonderfully change the position of instances according to your wishes.

On the one hand, you simply instantiate your objects at the points of the circle in the best case, and on the other hand, you simply move the instantiated objects along their Z-axis as soon as the sphere (or whatever) is in a certain proximity to their position.

If you want to solve the whole task with Geometry Nodes (which I assume) then the sphere is positioned somewhere on the circle via the Curve Factor. This Curve Factor is in this case also the value you would have to animate.
The Curve Factor is somewhere in the range between $0$ and $1$, and in this example I just use the current frame for a repeating sequence.
Then you only need the distance between the position of the sphere and each instance (Geometry Proximity is not needed here).
To customize the range, you simply use the Map Range node, and use the resulting value to move the corresponding instances on the Z-axis with Translate Instances as the sphere approaches in the defined range.

(Blender 3.2+)