Here is an example, if I were doing this in mplus, which might be helpful and compliment more comprehensive answers:
Say I have 3 continuous variables and want to identify clusters based on these. I would specify a mixture model (more specficially in this case, a latent profile model), assuming conditional independence (the observed variables are independent, given cluster membership) as:
Model:
%Overall%
v1* v2* v3*; ! Freely estimated variances
[v1 v2 v3]; ! Freely estimated means
I would run this model multiple times, each time specifying a different number of clusters, and choose the solution I like the most (to do this is a vast topic on its own).
To then run k-means, I would specify the following model:
Model:
%Overall%
v1@0 v2@0 v3@0; ! Variances constrained as zero
[v1 v2 v3]; ! Freely estimated means
So class membership is only based on distance to the means of the observed variables. As stated in other responses, the variances have nothing to do with it.
The nice thing about doing this in mplus is that these are nested models, and so you can directly test if the constraints result in worse fit or not, in addition to being able to compare discordance in classification between the two methods. Both of these models, by the way, can be estimated using an EM algorithm, so the difference is really more about the model.
If you think in 3-D space, the 3 means make a point...and the variances the three axes of an ellipsoid running through that point. If all three variances are the same, you would get a sphere.