Server, Host, and Partition are all nouns, objects to be described:
Service is software that waits for and accepts "client" connection, and usually provides some functionality to them. Similarly a client initiates a connection to a service to gain access to some functionality. They're typically network connected, but this is not required.
Server any hardware that runs service software could be considered a "server". As a professional administrator the hardware is typically purpose built. This means using components that last longer than "consumer" hardware; better warranties; guarantees of compatibility and functionality; and the list goes on. (Side note: for anyone thinking about building hardware, there's a lot more involved than just the components, as listed. The initial cost of hardware is NOT the only, nor typically the majority, component in the Total Cost of Ownership).
Host is a representation of a computer attached to a network. One piece of hardware can represent one or multiple hosts. In certain situations multiple pieces of hardware can represent one host (clustering). Usually a "host" has a name that can be resolved via technical processes (DNS, etc) to locate the computer(s) representing it.
Partition unfortunately has multiple meanings. Most commonly it refers to storage being logically sliced and diced. This is not always the case; in particular Mainframes, in their virtualization technology, commonly refer to the "place" that a Virtual Machine runs as a Partition (more on virtualization in a moment).
Physical, Logical, and Virtual are all adjectives, they describe something else:
- Physical, is the whole object, it's not necessarily actually physical as it depends on the point of view of the technology involved.
Logical, is a object where the "consumer" knows that the object is less than the whole. You mention "Logical Partitions", this is something that's been sliced into pieces (usually a disk drive, but technology loves to confuse us by re-using terms) and the consuming software is aware of this. For example, all modern Operating Systems recognize some form of partition tables on disks, and can recognize the individual file systems on each.
It's worth mentioning here that the concepts of Logical and Physical Addressing are similar but subtly different than the adjectives presented here. A logical address is one where the address is arbitrarily assigned, and a physical one is hard coded into the hardware/firmware.
For example, in enterprise storage devices, the storage unit is frequently provided as a LUN (Logical Unit Number) address. So storage "0" may have switches on the back or software which can reassign that storage to "1", or another arbitrary number. Another convenient example, all network cards have a MAC address burnt into them (modern NICs can usually override this in operation, but the original MAC is still hard encoded to the chip).
Virtual, is an object where the "consumer" doesn't realize they're not getting the whole object. This commonly involves some form of technology that makes a logical object transparently available to the consumer as if it were a whole object.
Virtual Machine, one where the software running inside thinks it has access to the whole machine, but in reality only has access to certain logical pieces. A hypervisor enables this appearance; and the whole mess gets very complicated from there.
Virtual Host, this one gets tricky...
When a client connects to a service, it does so by connecting to a host on the network, then requesting whatever functionality. Typically if you want more than one instance of that functionality on a computer you would need to run multiple services.
By example, if your service is a web server, then in the "old days" if you wanted two different websites available on a network (say the Internet) then you would need to run two instances of that service. Clients could then connect to each service by their respective host names, and life is good, except you have two services doing almost the exact same thing. If the service was capable of representing itself as multiple hosts, then we could just run one instance.
A virtual host is what the service represents. The service knows that there's only the one instance of the software. But the clients connect to each of the multiple functionalities individually, and the client doesn't realize (or care) that the multiple functionalities are provided by the same service.
By far the most common use of this technology is in web servers. The concept still has the same name when applied to other technology. People who have only been exposed to HTTP Virtual Hosts may be confused in thinking that a "virtual host" only applies to web server!
For the most part, you can mix and match the above adjectives and nouns, and it will make sense (at least on some level). As noted above, some of these technologies have become synonymous with particular implementations of technology too, be careful to clarify meaning (between technology and implementation).
Disclaimer: As with most fields, this Answer tries to put hard definitions on extremely complicated concepts. While this is largely accurate the terms are oft abused, misused, misappropriated, and otherwise conflated. Don't be surprised when you find a pieces of technology that's using these terms differently; do feel free to harass them for their confusing non-conformity.