Abelian groups of order n.
By the fundamental theorem for finite abelian groups the number of abelian groups of order $n=p_1^{n_1}\dots p_k^{n_k}$ is the product of the partition numbers of $n_i$.
Note that the partition number of $2$ is $2$ and the partition number of $4$ is $5$. Since $10^6=2^6\cdot 5^6$ such an $n$ therefore exists.
Given any number $n$, the number of different (up to isomorphism) abelian groups of order $n$ is dependant on the prime factorization of $n$. If $n$ is a prime power $p^k, k\in \Bbb N$, then the number of abelian groups of order $n$ is exactly the number of distinct partitions of $k$. Example: For $p = 3, k = 4$ and thus $n = 81$, there are $5$ different abelian groups: $$ \Bbb Z_{81} \quad \Bbb Z_{27}\times \Bbb Z_3 \quad \Bbb Z_{9} \times \Bbb Z_9 \quad \Bbb Z_9 \times \Bbb Z_3 \times \Bbb Z_3 \quad (\Bbb Z_3)^4 $$ Now, if there are multiple primes in the factorization of $n$, the number of partitions allowed by each one are just multiplied together. Example: If $n = 2^53^7 = 69,984$, then there are $7\cdot 15 = 105$ different abelian groups, since $5$ has $7$ partitions and $7$ has $15$.
Now, to construct a million, we need $2^65^6$ different partitions total. The easiest way (maybe the only way) is to let $n$ have be $6$ primes to the power $2$ ($2$ partitions) and $6$ primes to the power $4$ (five partitions). Thus, I believe the smallest such $n$ is given by $$ n = 2^43^45^47^411^413^417^219^223^229^231^237^2 \\= 49,659,789,817,537,838,957,341,175,342,490,000 $$
If $n=\prod_{i=1}^rp_i^{k_i}$, then the number of distinct abelian groups of order $n$ is given by $$ \prod_{i=1}^rp(k_i), $$ where $p(k)$ denotes the number of partitions of $k$. Now $10^6=p(k_1)\cdots p(k_r)$ has to be solved. But $p(2)=2$ and $p(4)=5$, so we can solve it.