I am trying to validate a system to detect more than 2 cluster in a  network graph. For this i need to create a synthetic graph with some cluster. The graph should be very large, more than 100k nodes at least. I s there any system to do this? Any known dataset with more than 2 cluster would also be suffice.
If you stick to networkx, you can generate two large complete graphs with nx.complete_graph(), merge them, and then add some edges connecting randomly chosen nodes in each graph. If you want a more realistic example, build dense nx.erdos_renyi_graph()s instead of the complete graphs.
Synthetic network graph