I’ve found it best explained in some stackoverflow answer mentioning the pet vs cattle analogy. In short, if you know how many servers you have from the tip of your tongue, and what they do more or less, then they are akin to pets: you treat them well and keep an eye on each of them.
Kubernetes is meant for when you have so many of them, that come and go without you even noticing or caring, bearing a number for the sake of production/cost control, this is cattle. Needless to say that this is not your typical app/company running at such a scale, and that there is a 24/7 team of “ranchers” keeping an eye on the herd.