Weather in Second Life is practically non-existant to the user, with the exception of clouds and wind. However, there is an underlying weather system that is not completely used by SL. Clouds, in large part, are prepared for weather effects, but the visual end result of these have not been added. In absence of this, many residents have made their own weather systems using particles and objects.
Wind is ever present in SL, even going through objects and water. It also has effect on some things such as clouds, flexible objects, avatars, and water ripples. Wind also has an audible sound which can be adjusted through the preferences under "Audio & Video". Scripted objects can also get properties of wind.
On the server side clouds are generated by a cellular-automata algorithm on a grid that uses the values at nearest neighbors to generate the probability of transitions from between some small number of states like: (clear, cloudy, very_cloudy, raining). Each simulator has an 18x18 grid of cloud cells. The boundary values of the cloud grid is transmitted to neighbor sims, which make up the 1st and 18th rows/columns of the grid. Although it doesn't rain in SL, the 'raining' state is used to indicate that the cell is about to transition to 'clear'. The distribution of moisture is then transmitted to the client which is used to distribute the cloud particles within that region. On the client side, clouds are rendered as particles.