Are you internally linking these pages well?
First step would be getting setup on search console and submitting your sitemap. That would at least let Google know they are there.
Then you need some strong internal linking between pages.
Once you've done that, pick a few you want to index and manually index them in search consol (not all just a few). Then pick a 100 of those and put it through an index service.
When Google starts indexing the ones you've tried to index, it will then start picking up the other pages because of the internal linking. It will take time but with 500k pages what can you expect.
Option 2: If you have the money, just use an index service for all the pages.