The attacking formation had a lot of fluidity to it. As the starting point, the LB Hector pinched in and became the inverted fullback, while Draxler shifted out wide left, and Ozil operated in the half-space. On the right, Howedes was the wide attacking player and Muller pinched inside into the half-space.
The center of the holding CM's (Kroos mainly) was used as a pivot to cycle the ball, while the outside two CM's positioned themselves on the outside of Ukraine's block to try and stretch the outside midfielder away from the middle to create an avenue to play interior passes to the attacking CM's and the forward.
The front 3 were used to play in between the lines. They would put pressure on the Ukraine CBs with runs into the box and/or force the Ukraine backline to come out and pressure. The space that was vacated by those defenders was exploited by another of the front 3 or one of the wide players.
The wide players were just that, wide. Used to stretch the Ukrainian block, go 1v1, and serve in crosses. They had to be quite disciplined to stay out there without losing their shape or moving inside with the hope to see more of the ball.