Arsenal face a tricky Europa League group stage with ties against Cologne and Red Star Belgrade as Arsene Wenger's side play in Europe's second-tier competition for the first time since 1997.
The Gunners, who were also given a difficult assignment in Belarus against Bate Borisov in Friday's draw, are playing in the Europa League after they finished fifth in the Premier League last season.
Another European giant, AC Milan, have an easier passage with ties against Austria Vienna, AEK Athens and Rijeka of Croatia.
Wayne Rooney's Everton will have a stern test in a group containing French club Lyon, whose Groupama Stadium will host the final on May 16.
Italian side Atalanta and Cypriot minnows Apollon Limassol round out Everton's group.
Everton manager Ronald Koeman said: "It's a strong group, all in a good part of Europe. Easy to travel. Tough but it's tough for everybody."
Lyon president Jean-Michel Aulas said he was glad to have been paired with "footballing nations".
"Everton and Atalanta are good teams in good leagues and we will also have to go to Limassol which hasn't been successful for us in the past," he said.
French club Nice, who have strengthened their star-studded squad with the addition of Dutch veteran Wesley Sneijder this summer, drew a big-name Italian opponent in the shape of Lazio.
Nice also face early Dutch league leaders Vitesse Arnhem and Zulte Waregem of Belgium.
Paul Pogba of last season's winners Manchester United was voted the best player of the 2016-2017 competition and received the trophy in a pre-recorded video message shown at the draw in Monaco.