【 Abstract 】 This paper focuses on how to build the computing architecture under the hybrid cloud model, what factors need to be considered, and what the development trend is in the future.

From @twt community [Author] Zhang Zhiqiang

An overview of the

Cloud computing is known as the third information revolution after personal PC and Internet. It not only realizes the innovation of IT technology, but also a major change of IT business model and service model. More and more commercial activities almost all use cloud computing technology as the background support, to achieve on-demand services, on-demand billing.

China attaches great importance to the cloud computing industry and has put the development of cloud computing industry on the national strategy. In the Twelfth Five-Year Plan, cloud computing is listed as a key strategic emerging industry. Through cloud computing technology to narrow the IT application gap between small and medium-sized enterprises and large enterprises, so that everyone can access the top information technology and services at a very low cost.

With the continuous expansion of the market scale of cloud computing, the application scenarios involve many fields such as personal data storage, enterprise data and application support, national public infrastructure support and so on. The development trend of cloud computing has naturally become the focus of the industry.

Cloud computing can be divided into public cloud, private cloud and hybrid cloud from deployment scenarios. This paper will focus on how to build the computing architecture under the hybrid cloud mode. What causes should be considered? What are the future trends?

What is a cloud?

Cloud computing is not like the Monkey Sun from Journey to the West, suddenly jump out of the stone. It is the result of 16 years of technical development and business needs. Sixteen years ago, computers in those days were bulky, expensive and far from universal. Then, as chip technology and software computing developed, they became smaller, faster and more affordable. Each enterprise can purchase the physical machine in line with the business performance requirements and put it into the data center for centralized calculation, which forms the most original traditional data center model.

With the rapid growth of business, the IT demand is strong, and the demand for purchasing traditional physical machines is surging, and the cost is increasing year by year. However, from the perspective of operation and maintenance, it is found that the performance of a large number of servers has not been fully used, resulting in serious waste of resources. To solve this problem, a rudimentary foundation of cloud computing is formed, namely virtualization technology. A physical machine is logically partitioned into multiple virtual machines, each of which is isolated from each other to provide different business services.

Virtualization solves the problem of resource waste, but in the provision and use of services, similar to the physical machine, there is still the phenomenon of resource overallocation. With the demand for refinement and resource visualization, cloud computing was born. According to the need of computing, storage, network and other resources to achieve on-demand payment. People no longer need to own their own computing system when using resources, just like using water and electricity, they don’t need to build their own power stations and water plants.

Cloud computing is divided into public cloud, private cloud and hybrid cloud from deployment scenarios:

Private cloud:

As the name suggests, it is a cloud computing platform for individuals, organizations, and companies to provide proprietary resources. Build your own infrastructure and control how applications are deployed on that infrastructure. Provide the most effective control over data, security and quality of service. Private clouds can be deployed within the firewall of an enterprise data center or in a secure hosting location, and the core property of a private cloud is a proprietary resource.

Public clouds:

Generally, it refers to the cloud that third-party providers, such as AWS, Ali, Tencent and other public cloud manufacturers, provide services for users. Providing free or low-cost services over the Internet, the core property of the public cloud is the shared resource service.

A hybrid cloud:

It is the fusion of private cloud and public cloud service models to provide cloud computing solutions. Hybrid cloud services integrate the internal IT infrastructure with other public cloud products and services to meet the specific and unique needs of the enterprise.

What is the difference between cloud architecture and traditional architecture?

Cloud architecture and traditional architecture are likely to confuse the reader if not discussed. In fact, the biggest advantage of cloud computing is convenience. Users demand what they want and service providers provide it on demand.

Traditional IT architecture is relatively closed, computing, storage and network are relatively centralized, management is differentiated, and each resource is relatively independent.

Characteristics of a traditional architecture:

  • Relatively independent physical resources, such as computing, network, storage and other devices;
  • Centralized storage architecture, generally adopted centralized storage;
  • Data centralized storage, reliability problems are obvious;
  • The performance is mainly concentrated in the single processing capacity, no linkage mechanism;
  • The ability of resource elasticity expansion is limited;
  • Lack of automatic operation and maintenance mode, operation and maintenance personnel.

First, understand that cloud computing architectures are primarily designed to address the need for business scalability and high concurrency. From the framework, it can be divided into three layers: infrastructure layer (IaaS), platform layer (PaaS) and software service (SaaS).

IAAS:

Infrastructure as a service, including servers, network, storage and other devices, pool computing, network, storage and other IT Infrastructure resources, Infrastructure resources as services, provide to users on demand. Users can access infrastructure resources without having to purchase any hardware.

PAAS:

Platform as a Service means that a complete software development and deployment Platform, including application design, application development, application testing and application hosting, is provided to customers as a Service. In this service model, instead of buying hardware and software, customers can create, test, and deploy applications and services on demand using the PaaS platform.

SAAS:

Software as a Service is a Software application model that provides Software services through the Internet. In this mode, users do not need to spend a lot of investment in hardware, software and development team construction, only need to pay a certain rental fee, they can enjoy the corresponding services through the Internet, and the maintenance of the whole system is also responsible by the manufacturer, such as Gmail, network disk, QQ mailbox and other applications.

Features of cloud computing architecture:

  • Distributed architecture, flexible expansion;
  • Massive resources are allocated according to needs;
  • Dynamic distribution of resources without physical limitations;
  • Performance elasticity, dynamic adjustment;
  • Distributed storage, high data availability;
  • High automation of operation and maintenance.

Hybrid cloud architecture design

Hybrid cloud as the developing trend of the future of cloud computing has been accepted by more and more enterprises, enterprises through the integration of the private and public cloud resources, combine their unique advantages and combining the actual business, integration of resources, realize the unified configuration and management, can be in multiple environments (public clouds and private clouds or edge environment) in a consistent manner of delivery and use of the service, Demonstrate the value of the hybrid cloud.

Principles of design

The following principles are recommended for the design of hybrid cloud architecture:

The general trend:

You don’t have to fight with the trend. According to Gartner’s survey on public cloud usage, global IaaS investment increased by 38.4% in 2016, reaching $22.4 billion. It is estimated that by 2020, global IaaS investment will increase to $56.05 billion. CAGR will reach 29 per cent. This means that enterprise operators are reluctant to invest too much in their own data centers due to the low utilization rate and high operating costs, and will gradually apply the cloud.

However, IT does not mean that all systems within the enterprise can enter the public cloud. Therefore, in the long run, the enterprise’s own IT private environment and the public cloud will coexist for a long time to form a hybrid cloud form, which becomes an irreversible trend.

High availability:

Reliability design is a timeless principle in cloud computing architecture. In view of the enterprise’s own data center architecture, traditional IT systems often talk about the “two places and three centers” architecture (i.e., production data center, in-city disaster recovery center and off-site disaster recovery center). In this mode, the main goal is to prevent various levels of failure that can affect the business.

For cloud computing architecture, the high availability architecture of multiple data centers can be implemented with the help of the Region architecture approach. Remote disaster preparedness deployment across different areas ensures application continuity and no data loss in the event of a failure.

Openness:

For every user who goes to the cloud, there are only two concerns: data security and being kidnapped.

So be sure to choose a cloud architecture that is easy to access, secure and transparent. It can easily migrate all kinds of business applications to the cloud smoothly, and can also be smoothly rolled back to the enterprise data center after the peak, without additional application code modification.

Low cost:

There are many reasons to go to the cloud, one of which is to reduce the overall cost of IT. Therefore, when designing a hybrid cloud architecture, IT is necessary to fully consider the actual investment cost of IT within the enterprise. The integrated architecture can help enterprises save on equipment, software, and maintenance projects and expenses, while reducing IT personnel investment, resulting in low cost, high return results.

Convenience:

Hybrid cloud is the unified configuration and management of resources, which can deliver and use services in a consistent way in multiple environments (public cloud, private cloud or edge). Users can achieve cloud task management through a unified interface.

Architecture design

Once you understand the design principles, you should design the hybrid cloud architecture as a whole around them. There are different architectural designs at different levels, such as computing architecture, storage architecture, network architecture, application architecture, and even security architecture.

With the arrival of the cloud era, the advantages of hybrid cloud are highlighted. Many enterprise informatization plans have put hybrid cloud on the agenda. It is often said in the field of operation and maintenance that “eggs cannot be put in one basket”. Therefore, the cloud management platform based on multi-cloud gradually replaces the single cloud management platform to become a hot topic.

The overall hybrid cloud architecture is generally divided into user layer, service layer, computing layer and infrastructure layer. Referring to an architecture diagram of colleagues in the industry, the general idea of hybrid cloud architecture can be clearly seen.

In fact, this diagram can be more detailed, highlighting the logic and characteristics of each level, such as how the network is connected, how the security system is established and so on. In the following articles, they will be broken down one by one. This time, we will mainly discuss the computing architecture, and explain it in terms of architecture, effect and technology development trend.

Computing architecture design

Computing architecture belongs to the computing layer of hybrid cloud architecture, which is subdivided into IaaS, PaaS and SaaS. This paper will not explain the terms one by one. You can find the relevant answers on TWT.

As one of the core architectures of computing, virtualization technology is the core of computing. Starting from hardware virtualization, I have experienced the virtualization based on operating system, container-based virtualization and application virtualization technologies. Each virtualization technology has its own advantages and disadvantages, from the current development of virtualization technology and business applications, container-based cloud computing model has gradually formed. Through the characteristics of the container, it can maximize the maximum computing resources of each hardware. Combined with DevOps, it can realize rapid business iteration and improve production efficiency.

The popularity of container cloud architecture has led to the popularity of micro-service architecture. Container technology provides consistent means of distribution and operating environment, so that only the application architecture after micro-service can cooperate with the container to give full play to its maximum value. However, the micro-service-oriented architecture introduces a lot of complexity, and only the application of containerized and large-scale container arrangement and scheduling can avoid the decline of operation and maintenance efficiency. There is a complementary relationship between container technology and micro-service-oriented architecture.

Principles of design

Computing architecture is the most important and basic core architecture. After the same kind of combination, four key and effective principles are summarized as follows:

Avenue to Jane

Cloud computing has been around for more than 10 years and is becoming more and more accepted by enterprises. Computing architecture is the core foundation. If the architecture is too complex, it is not conducive to the implementation and promotion of cloud computing.

Computing architecture should not be an opaque and confusing architecture, which is often queried during the implementation of the project, difficult to investigate, and ultimately ends in failure. As one of the most important architectures, a computing architecture should follow the principle of simplicity. Regardless of the user’s infrastructure choice, the computing architecture is straightforward, meets the basic needs of the business, and allows users to deploy applications more easily. At the same time, complex architecture only prolongs implementation and learning curves, slows down deployment, and increases investment before the enterprise sees results. Automate the architecture as much as possible to help simplify the administration process for enterprise users.

Open source foundation

It has to be admitted that open source architecture has become the trend of technology development. Closed architecture is difficult to be reused, architecture expansion

The development difficulty affects the rapid deployment of business application system. Because open source frameworks provide core functionality that is critical to development, IT operations, or DevOps processes. The principle of being based on open source architecture will ensure that enterprise solutions are successfully launched and implemented, regardless of who the underlying infrastructure vendor is, how compatible they are, etc.

The cost control

I remember when I first learned the architecture, one of the teachers in IBM asked us a question, whether we would be because of our own design

The architecture is too simple and feels mediocre. Make a tall structure, it is a skill, in front of the leadership also have cattle B can blow. In fact, the teacher finally gave the answer, all technical architecture is for the service of business architecture, to achieve the purpose, the shorter the way to take the better. Therefore, an architecture that is too advanced and complex tends to increase construction costs, whether it is research and development costs, procurement costs, or operational costs.

Easy to inherit

The computing architecture should not only consider the actual needs of the business, but also consider the operational capacity of the subsequent architecture. Complex architecture

There will be a variety of problems in the subsequent operation and maintenance succession, which is difficult to be inherited by the operation and maintenance team. Therefore, when doing computing architecture, we must consider the subsequent capacity to avoid the end without beginning.

Architecture design

Hybrid cloud architecture has been briefly introduced above. As one of the core architectures, computing architecture is mainly responsible for the management of computing resources, such as resource virtualization, allocation, adjustment and recycling of virtual resources.

A common computing architecture can fulfill most enterprise computing needs, as shown in Figure 6:

The computing architecture is mainly divided into infrastructure layer, virtualization layer, function layer, application layer and user layer.

Infrastructure layer:

In this layer, infrastructure can be understood as the computing node, storage node and network node that make up the cloud platform, also known as the “old three”. Then this chapter focuses on computing nodes, which provide computing resources used by the VM, such as CPU and memory. The number of resources of the general host determines the final number of the last VM. In the actual deployment, the business requirements on the performance and number of VM should be fully considered, so as to purchase the computing nodes that meet the requirements and standards.

Virtualization layer:

The main function of the virtualization layer is to pool computing, network and storage resources and allocate resources according to the actual needs of the VM. Mainstream virtualization software, such as VMware, Hyper-V, KVM, etc., and cloud operating systems, such as OpenStack, VMware, SCVMM, etc.

Functional layers:

It is mainly the functional modules in the virtualization software, such as billing, resource control, resource monitoring, function expansion and so on. The mainstream, such as software – defined storage (SDS) software – defined network (SDN) software – defined security, etc

Application layer:

Mainly business applications, all resources are distributed from the pool to the VM where the application is located. Computing architecture is designed to serve applications better. The type of application determines the utilization of resources. From the perspective of resource utilization, dynamic adjustment strategy is adopted for non-critical applications, while fixed resource strategy is adopted for core applications.

The user layer:

Various user terminals can access cloud services through internal and external networks. Terminal devices include but are not limited to notebooks, desktops, servers, mobile devices and even various intelligent devices, such as the Internet of Things.

Evolution of computing architecture

Computing architecture is always evolving with the trend of cloud computing. After more than 10 years of development, computing architecture has undergone many reforms, from the earliest hardware segmentation, through partition virtualization, operating system virtualization, to the current virtualization based on container technology, etc.

With the development of Internet technology and the emergence of business scenarios, virtualization technology continues to evolve. The current mainstream virtualization technology is the container technology. Container technology has become popular as a new computing architecture, and more and more enterprises are starting to deploy and plan for it. Its own characteristics are well suited to DevOps, agile development, and micro-services scenarios. The computing architecture of the future must be real-time, agile, rapidly scalable, and pervasive.

Technology trends

Containerization, micro-service and primitivism are the general trends of IT system evolution. An increasing number of enterprises are either already using containers or are on their way to using them. The original chemistry not only changes the existing application architecture, but also promotes the diversified development of the business and accelerates the upgrading of the service scale of the IT system. While container technology is taking off, there are real challenges, such as:

  • How to integrate the container technology with the existing system better and realize the coexistence;
  • The promotion and use of the application and structure will be a large transformation, traditional enterprises lack of relevant technical personnel;
  • The maturity of the technology itself is not enough, and there is a lack of suitable application scenarios.

I believe that with the continuous development of technology, maturity and business diversification, container technology in the future for a period of time must be the trend of virtualization technology development.

Application trend

The popularization of container technology and the development of cloud computing drive the reform of the entire application industry. Micro-service, SaaS and lightweight will become synonymous with the development trend of application.

Containers and other technologies are used in combination with DevOps to achieve agile development and improve application development cycle and on-demand release capabilities. With the continuous development of cloud computing, more and more users begin to accept the convenience and stability brought by SaaS. Through SaaS to reduce the cost of enterprise cloud construction, improve the focus of enterprises, professional people do professional things. Applications can be rapidly iterated as the business changes. Using container technology, applications can be deployed in a lightweight way to speed up enterprise transformation and improve business stability.

conclusion

The computing architecture will certainly evolve with the needs of the business and with the evolution of cloud computing as a whole, but it will never change. All technology architectures are designed to serve the business architecture. Being separated from the business structure is like being without a skeleton, unable to hold up and move forward. We believe that computing architectures will become more open source, lightweight, and forward-looking as technology evolves.