Distributed systems based on cluster of computers have become a cost-effective solution for high performance computing. The management of such a system is a challenging task since Workstations and PCs are typically designed to work as a standalone system rather than as part of a computing cluster. Moreover, clusters consists of heterogeneous computers having different architectures and operating systems. Thus, portability is a critical issue in deploying effective monitoring and management tools. In this paper, a portable multi-channel architecture for distributed system monitoring entirely based on the Java programming language is presented. Being the resource monitoring subsystem developed following a platform-independent approach, the proposed tool can be exploited in any cluster environment. Moreover, by deploying the end-user interface for information visualization using Web-related technologies, the designed solution allows clusters to be supervised through virtually any device operating over various communication links. The effectiveness of the proposed architecture has been validated in a real cluster environment running a CPU-intensive, distributed application.