I think they sound great together. As for popularity, Olivia is very popular already and I think Lucy is an adorable, fairly popular name that makes for a beautiful subset. If you went with a less popular/obscure name, they might not fit as well, though you could always use Lucinda, Luciana, Lula, Tallulah, Larissa to get to Lucy as a nickname. I think Larissa or Luciana would also sound beautiful with Olivia, though both are less popular.

Also, little Livy will probably want to be called by another name when she's older (Olivia, Olive, Ollie, Livia, Liv, etc) so the similarities between Lucy and Livy might be obsolete in a few years (especially if Lucy is used as a nickname for a more formal name, and wants to go by her full name as well)