Sensor data can be used to detect changes in the performance of a system in near real-time which may be indicative of a system fault. However, there is a need for efficient and robust algorithms to detect such changes in the data streams. In this paper, sensor data from a marine diesel engine on an ocean-going ship are used for anomaly detection. The focus is on cluster-based methods for anomaly detection. The idea is to identify clusters in sensor data in normal operating conditions and to assess whether new observations belong in any of these clusters. New observations that obviously do not belong to any of the identified clusters, may be regarded as anomalies and call for further scrutiny. The cluster-based approaches to anomaly detection presented in this paper are truly unsupervised, and they are applied to sensor data with no known faults. Being fully unsupervised, however, the cluster based approaches do not need to explicitly assume that all observations in the training data are fault-free as long as the amount of faulty data is not large enough to form a separate cluster. Moreover, anomalies in the training data may be detected. Various clustering techniques are applied in this paper to provide a simple and unsupervised approach to anomaly detection. This could then be used as an efficient initial screening of the data streams before more detailed analysis is applied to suspicious parts of the data. The methods explored in this study include K-means clustering, Mixture of Gaussian models, density based clustering, self-organizing maps and spectral clustering. The performance of the various methods is reported, and also compared with that of other methods recently proposed for anomaly detection such as auto associative kernel regression (AAKR) and dynamical linear models (DLM). Overall, cluster-based methods are found to be promising candidates for online anomaly detection based on sensor data.