The 22-year-old, who made his debut for the Toffees in May 2016, played second fiddle to Seamus Coleman last season and was restricted to just 13 appearances across all competitions.
“Kenny will link up with Schalke manager David Wagner and his side when he returns from international duty with England Under-21s.
Kenny found game time difficult to come by last season, after impressing in the 2017/18 campaign when he made 25 senior appearances in all competitions.
The defender, who is currently away with Andy Boothroyd’s England Under-21 side, told Schalke's official website: "It is a big chance for me, to come to a new country and show off my abilities, especially at a big club like Schalke.
"Schalke is a club with a long history and fantastic fans. I am happy to be here and can't wait to get up and running with the team.”
The Gelsenkirchen outfit also had a disappointing year last season and finished 14th in the Bundesliga - down from second in the previous campaign.
Schalke’s poor form also saw former manager Domenico Tedesco lose his job in March and he has subsequently been replaced by former Huddersfield Town boss David Wagner ahead of the new season.
Kenny is Schalke’s first signing of the summer and he will be expected to compete with Sascha Riether and Daniel Caligiuri for a starting berth in 2019/20.
As for Everton, Kenny’s move suggests they may be in the market for a back-up right-back. Alternatively, Mason Holgate, who spent last season on loan at West Bromwich Albion, could return to Goodison Park.