Centre-half Pennington, 22, has joined up with Leeds' squad in Austria and is expected to be confirmed as head coach Thomas Christiansen's ninth summer signing later on Wednesday.
Christiansen has been in the hunt for a central defender since Kyle Bartley returned to parent club Swansea following his season-long loan at Elland Road and Pennington will vie with Pontus Jansson and Liam Cooper for a starting place.
Leeds have also been linked with Bristol City centre-half Aden Flint, but Robins boss Lee Johnson confirmed at the weekend that no offers had been received for the player.
Pennington progressed through Everton's academy and, after making his Premier League debut towards the end of the 2015/16 season, has made a total of nine first-team appearances.
He scored for Everton in the Merseyside derby defeat at Anfield in April and has also had loan spells at Tranmere, Coventry and Walsall.
Leeds have signed Mateusz Klich, Felix Wiedwald, Vurnon Anita, Caleb Ekuban, Samuel Saiz and Ezgjan Alioski since Christiansen arrived last month and have turned the loan spells of Hadi Sacko and Jansson into permanent deals.