Most languages insist every proper sentence must have at least a proper subject and a verb.
It's raining
The "it" in the sentence doesn't say anything - it's just needed to satisfy the rule "sentence needs subject", a so-called expletive.
German doesn't have such a strict rule - Sentences can perfectly live without a subject, like
Hier darf nicht geraucht werden
No subject, but a well-formed German sentence. The rule German has for proper sentences is rather the v2 rule: the verb occupies the second position in the sentence.
Then there are sentences, where es just as in, for example, English and French, acts as a subject-surrogate
it's raining / il pleut
es regnet
for impersonate verbs or verbs used in an impersonate manner (that's your example)
es ist kalt
ornate that with a temporal adverbial, like "heute", or "diesen Winter" (note "Winter is not the subject of the sentence, but a temporal adverbial here!), and you arrive at your example:
Heute ist es kalt
Diesen Winter ist es kalt
As opposed to
Dieser Winter ist kalt
like in
This winter, it's cold
vs.
This winter is cold