There was an ongoing war between Donbass separatists and the central Ukrainian government that has been raging since 2014, with 14,000 dead (most of which were Donbass civilians). The frontlines in that war had been stable up to this winter, but the Ukrainian government was preparing to mount a major offensive with up to 100,000 troops massing on that frontline. This is what precipitated the timing of the Russian invasion.
This is also what drove Russian tactics of their multipronged attack and their move on Kiev, they opened up several fronts in order to pin large elements of Ukrainian troops in the defense of Kiev, preventing them from reinforcing the main Ukrainian army on the Donbass front.
The main reason for this war is that Ukraine in its current borders is an amalgam of two major cultures, western/central Ukrainian, and Russian culture.
Restrictions on the use of the Russian language have been imposed over the entire country, preventing the use of Russian in the school system, public administration and mass media. Those restrictions were extended by the Zelensky government. He run on a platform of inclusion, himself being a Russian speaker, but that platform was reversed due to the fact that the backbone of his government are Ukrainian nationalists who are totally unwilling to compromise on this issue, and who furthermore will not recognize Crimea, a region with >80% Russians that has voted to join Russia, as a Russian territory.
The endgame now is clear, Russia is going to carve out the Russian regions of Ukraine (in red on the map above), regions that were lumped into Ukraine in 1922 by Lenin (in pink below), at a time when the main adversary of his Bolshevik regime were Russian nationalists. The Soviets relied on the peripheral countries of the USSR in order to counterbalance and subdue Russian identity, which stood against their internationalist communist ideology.