Cloud-Native - Important Factor of a Successful Cloud Strategy
// Cloud Computing, Digital Transformation
Anyone researching the topic of cloud computing is inundated with technical terms such as "hybrid", "DevOps" and "Kubernetes". The terms "cloud native" or "cloud readiness" are usually defined as critical success factors of a cloud strategy. But what do these terms actually mean? And what mentality goes hand in hand with them?
The cloud computing model
Before a cloud strategy can even emerge, the service model and the underlying mindset behind cloud computing should first be fully understood. The analogy "Pets vs Cattle" is often used for this:
"In the traditional way, we treat our servers like pets, like Bob the mail server. When Bob goes down, it's all hands on deck. Because the CEO doesn't get his email anymore and the end of the world is looming. In the new way, servers are numbered like the farm animals in a herd, like www001 to www100. Now if a server goes down, it's taken out, eliminated and replaced."
Randy Bias (quoted from: https://www.meshcloud.io/de/2017/02/09/pet-vs-cattle/)
Of course, the naming convention is not enough. Rather, cloud computing is about making applications or services independent of the underlying platform or infrastructure, developing them in an agile as well as cost-optimised way and fully exploiting the advantages of the cloud computing model.
Pets are given names like grumpycat.petstore.com.
- The infrastructure is an integral part of the data centre.
- It takes days to build an infrastructure, it is maintained weekly, it is maintained for years and it requires migration projects to move.
- The infrastructure is changed during maintenance periods and usually requires special privileges such as root access.
- Infrastructure requires multiple teams to coordinate and deliver the entire environment.
- The infrastructure is static, so excess capacity has to be shut down for use during peak demand periods.
- Infrastructure is a capital expenditure that costs a fixed amount regardless of usage patterns.
The cattle are given numbers like 10200713.cattlerancher.com.
- Infrastructure is stateless, ephemeral and transient.
- The infrastructure uses version-controlled scripts to modify each service without requiring root excess or privileged logins.
- The infrastructure is self-service and enables the provision of computing, networking and storage services with a single mouse click.
- The infrastructure is elastic and scales automatically, i.e. it expands and shrinks as needed to handle peaks in usage.
- Infrastructure is an operating expense that is only charged when the services are used.
Tabular overviews quoted from Drew Firment: https://cloudrumblings.io/cloud-farm-pets-cattle-unicorns-and-horses-85271d915260
The classification of IT infrastructure according to pets and cattle is of course only an analogy. Nevertheless, it is a good way to make an initial assessment of the extent to which the organisation is ready for the cloud and can benefit from cloud services. For a successful cloud strategy, the individual IT services and the underlying IT systems should therefore be checked for their cloud readiness in terms of the choice of suitable services and an architecture pattern. In the target architecture, attention should then be paid, if possible, to a cloud-based architecture that meets the organisation's intended goals and requirements.
Cloud-native architecture - responsibility shifts to the application level
Typical for a cloud-native architecture is the use of containers and a microservice architecture. Here, each part of an application, for example services or processes, is packaged in its own container. The individual containers or microservices are then dynamically orchestrated to ensure optimal utilisation of the underlying IT infrastructure. In the process, responsibility increasingly shifts to the application level and the underlying infrastructure becomes an exchangeable working machine (cattle).
The use of a microservice architecture (Cattle) instead of a classic monolithic architecture (Pets) results in cost-saving options, as the cloud computing advantages can be fully exploited. A classic monolithic architecture (Pets) usually consists of an application server and a database. Since most applications themselves are not highly available, the underlying IT infrastructure must be highly available, which in turn entails higher infrastructure costs. Also, in the event of higher utilisation, only vertical scaling (scale up) is possible, i.e. the expansion of the individual instance/server, since most monolithic applications are stateful.
Since the microservice architecture (Cattle), as already mentioned, consists of a large number of containers, these are independent of the platform. In the event of a change in workload, microservices can in turn use horizontal scaling (scale out); in this case, the individual instance is not expanded, but additional separate instances are made available, as microservices are usually stateless in this case.
By using microservices or containers, applications can be deployed across platform boundaries - for example in multi-cloud environments. Other cloud services for servers, storage, databases, network components, software, analysis and AI functions can also be efficiently integrated in this way, which in turn has a positive effect on cost efficiency in cloud operations. The fundamental goal is to provide a highly available, scalable environment while also improving performance and reducing costs.
Cloud-Native - Don't lose the connection
According to a survey from 2020, around 2/3 of the companies surveyed state that cloud-native will have a high to very high significance in a few years. Likewise, 63% stated that they already use cloud-native applications. According to this survey, the majority of companies are already aware of the scope of the topic.
In our various cloud projects, which we as noventum consulting have already been able to accompany, we had to realise that most services, which are migrated to the cloud, are not cloud-native and therefore only use the advantages of the cloud to a limited extent. Instead, companies try to map their existing IT architecture (pets) in the cloud (Lift&Shift)which in turn often negates the benefits and cost savings of the cloud computing model.
So before you move individual services to the cloud, you should first critically review the underlying IT architecture for cloud readiness and optimisation potential.
Cloud readiness affects the entire organisation
Due to the growing importance of cloud solutions and the shift in responsibility at the application level, the entire organisation should be put to the test as part of the cloud strategy.
The following points should be considered in particular:
1. IT organisation and responsibilities
Depending on the extent of the outsourcing to the cloud, service processes and responsibilities must be newly regulated. By shifting responsibility to the application level, the respective application managers must take on new functions. This can lead to a shift of responsibility from IT to the specialist departments. Innovations of the various cloud platforms (e.g. Big Data; Machine Learning; Continuous Delivery) should also be analysed and, if necessary, taken into account in the business model.
2. service management processes
Since the focus in the public cloud is on self-service and automation, this also has an influence on the service processes. Therefore, the entire service management and lifecycle processes must also be revised as part of a cloud migration. For example, with Software as a Service (Saas), the responsibility for the IT infrastructure shifts from the customer to the cloud provider. This eliminates asset, configuration or licence management for the customer. On the other hand, incident and problem management as well as request fulfilment must be adapted to the special features of cloud providers. Requests and incidents in particular must be passed on within a continuous workflow from the user via the (controlling) IT organisation to the cloud provider. Self-service and on-demand services must also make the entire service organisation more agile. This trend towards a more agile IT organisation is also reflected in the changes from ITIL V3 to ITIL V4.
3. cloud know-how in the company
To meet the ever-growing demands of the market, IT companies that want to remain competitive need competitive technologies and working methods. The use of cloud-native and thus the shift of operating processes to the cloud require not only extensive know-how about container techniques and microservices, but also agile methods and DevOps concepts. Especially for complex transitions & transformations (hybrid cloud & multi-cloud), the necessary methodological expertise is required in addition to technical knowledge.
4. IT security and compliance
New technological approaches such as container or serverless environments require a cloud-native security concept. In particular, data protection (DSGVO) and other legal or regulatory requirements of the outsourcing company must be observed. In particular, the company's auditing obligations vis-à-vis the cloud provider are critical and must be contractually stipulated. In addition to the legal requirements, security-relevant aspects are also relevant for cloud outsourcing and should already be taken into account in the cloud strategy. Identity & Access Management (IAM), data protection and network security are particularly relevant aspects. The differences between the individual cloud providers should be taken into account. IT security standards such as the BSI's C5 criteria catalogue (Cloud Computing Compliance Criteria Catalogue), CIS benchmarks and the ISO/IEC 27000 series provide clear framework conditions for secure cloud operations and should also be included.
The success of outsourcing IT services to the cloud is already decided when selecting the appropriate cloud strategy. The critical success factors here are, in particular, the cloud readiness of one's own IT architecture and one's own organisation.
The sensible integration of cloud-native, such as microservices and the replacement of legacy IT systems, taking into account individual requirements, is decisive for success, as only in this way can the advantages of cloud computing be fully exploited. Especially the advantages of cost efficiency and scaling are influenced by the choice of architecture.
In addition to the IT architecture, the organisation and process landscape must also be evaluated in the event of outsourcing to the cloud. In particular, the shift of responsibility to the application level leads to new responsibilities and ways of working that must be regulated within a company. Depending on the scope of the outsourcing, it can lead to far-reaching changes in the entire organisational structure and processes. Self-service and on-demand services also intensify the need for an agile organisation.
Further complexity arises from any regulatory, legal and safety requirements that need to be considered within the overall project.
Since many basic decisions are made for the future architecture, especially during the first outsourcing to the cloud, all important aspects should be included from the beginning. A later change of the architecture during operation is often associated with a lot of effort and costs. Especially for complex migrations such as hybrid cloud or multi-cloud projects, both technical knowledge and methodological expertise are necessary. Most companies therefore resort to external specialists.