It is not always easy to divide Low-level Design and High-Level Design. How to differentiate between high-level and low-level design depends on the entity that we refer to. When we need to design our cloud then high-level decision could be for example choice of the technology that makes our SQL Servers highly-available. But when we talk about our business or company (the entity) then SQL Servers are in Low-level Design category. This means that following division to High-level Design and Low-level Design are only within our entity.
Architectural design questions you need to ask
In this simple environment we cannot speak about the design and definitely we cannot speak about the high-level design because there is no high-level design here. Design in IT is the process how to model environment according business needs. In our case we are only using technology. Even when we are not doing design for particular business I would like to give you the answers for the most common questions.
Physical vs. virtual
When you read the Microsoft recommendation you can find that you need a lot of power to run particular number of clients (for example for the Operations Manager or Service Manager). Also you can find that you SQL Servers have to be prepared for a very large number of Input / Output Operations Per Second (IOPS). In a real environment you can find that you do not need so much power.
- In a lot of environments there is no reason to run physical machines for the System Center family products.
- You can run physical SQL cluster but I prefer virtual guest cluster because it is much cheaper. Also you can have multiple virtual SQL clusters for a really low price and you can easily upscale them in the future.
- Virtualization is giving to us great flexibility, scalability and highly-availability and I see no reason why to not use it.
- Try to build your PoC environment (Proof of Concept) in fully virtualized world and test it.
Standard vs. Highly-Available (fault-tolerant) deployment
- Installation to the highly-available VM is not HA installation but for a lot of System Center parts the installation to the HA VM could be enough in your environment.
- As architect you have to measure the probability of failure, its impact and determine risk for your business and according these information you can model your environment.