You must first perform metrization of scales, i.e. convert linguistic variables in ordinal scales to numeric data. You can also convert numeric scales to text scales (nominal and ordinal), but this is not recommended. In addition, there are systems that do all this
to analyze datasets made of mixed-type data, where numeric (the difference between two values is meaningful), nominal (categorical, not ordered) or ordinal (categorical, ordered) features coexist.
K-means clustering traditionally uses euclidean distance, which is not appropriate for mixed-type (heterogeneous) data. To handle this issue, you may preprocess your data before clustering (discretization, one-hot-enconding, depending on your needs) or use an heterogeneous distance function.
I have been working with a couple of heterogeneous functions, that besides handling continuous (interval/ratio) and nominal data, also account for missing values. Most of them can be used directly to perform k-means. I would perhaps just introduce some more adequate comparison for ordinal data. Also, some of these distances take into consideration the class of each sample, which for your purpose (clustering, unsupervised) cannot be done. Nevertheless, take a look!
Article How Distance Metrics influence Missing Data Imputation with ...