The 33-year-old former England international won the Premier League golden boot last season, scoring 23 goals as Leicester qualified for the Europa League by finishing fifth.
Vardy becomes the third Leicester player after Nampalys Mendy and James Maddison to sign new contracts at the King Power Stadium this week.
Vardy joined Leicester from Fleetwood Town in the summer of 2012 and has so far scored 129 goals from 309 appearances, making him the club’s fourth all-time top scorer.
He scored 24 goals as the Foxes won the Premier League title under Claudio Ranieri in the 2015/2016 season.
"The journey that I've been on with this football club is hard to describe, and although we've accomplished so much together already, I know that I've got so much more to achieve with this team, so it's a special feeling to be able to commit my future to Leicester City once again," he told the club's official website.
"I love playing my football in front of our fans at King Power Stadium and I'm delighted to continue this journey at such an exciting time for the club.
"We've a fantastic team that I believe is capable of getting even better and I can't wait to see what we can achieve together in the next few years."
Vardy scored seven goals in 26 international caps for England before excusing himself from national team call-ups in August 2018.