当前位置:网站首页>Several key tools for cloud native implementation
Several key tools for cloud native implementation
2022-06-24 03:29:00 【Common_ youmen】
1 brief introduction
Cloud native technology can help us deliver software products faster , At the same time reduce IT Operating costs . This article describes how to implement cloud native , And some cloud native projects that can be used .
In the past decade , There has been a huge growth in Cloud Computing . according to Gartner forecast ,2020 The global public cloud service market will grow in 17%, The total amount will reach 2664 Billion dollars , Far above 2019 Year of 2278 Billion dollars . Cloud computing has enabled some of the world's largest companies to reshape and dominate their industries . The products of these companies are based on cloud services , And use cloud native technology to be faster than competitors , More adaptable . Many enterprises adopt cloud native technology , And introduce the concept into its on-site deployment application .
Understanding and choosing the right cloud native technology can improve the development speed 、 Reducing development and maintenance tools and infrastructure is critical . This article describes cloud native technologies that are worth learning about , It also recommends cloud native tools that can be used .
1.1 What is Yunyuan ?
Cloud native is about speed and agility , It's about the advantages of the cloud , Address business challenges faster and reduce IT cost .CNCF Provides an official definition of :
Cloud native technology is good for organizations in the public cloud 、 In new dynamic environments such as private and hybrid clouds , Build and run scalable applications . Representative technologies of cloud Nativity include containers 、 Service Grid 、 Microservices 、 Immutable infrastructure and declarative API.
These technologies can build good fault tolerance 、 A loosely coupled system that is easy to manage and easy to observe . Combined with reliable automation means , Cloud native technology makes it easy for engineers to make frequent and predictable major changes to the system .
In short , The goal of cloud native is based on business needs , Deliver software products quickly to users or customers .
Cloud native technology has the following advantages :
- Speed : Rapid development and deployment of cloud native applications , Shorten time to market . Many clouds use cloud native components , To easily host applications .
- Scalability and availability : Handle 100 Cloud native applications for customers can be seamlessly extended to serve millions of customers . Resources can always adapt to the needs , Compared with traditional static extension resources , This undoubtedly saves money . Besides , Technologies such as automatic fail over and blue-green deployment have also been embedded in cloud native tools .
- quality : Keep immutability in mind when developing cloud native applications (immutability) And decoupling , This improves application robustness and ease of maintenance , So as to improve the software quality . Because cloud native technology is open source , And by the CNCF Support , Therefore, the company can avoid supplier lock-in , And benefit from community maintenance and development .
2 How to realize cloud native
To migrate to the cloud native system , We need a structured approach like this :
- The longitudinal : Choose a service that is not critical , Then turn it on , Move to cloud native technology .
- The transverse : Focus on a single cloud native function , For example, continuous integration (CI) Or continuous delivery (CD), And deploy it in all existing services .
Choosing non mission critical systems reduces risk , At the same time, maximize the probability of successful migration .
3 Cloud native tools
Here is a list of cloud native tools , Companies that use a full range of tools usually have faster 、 Less resistance and lower development and maintenance costs ;
3.1 Microservices (Microservice)
Microservices divide product functions into units that can be deployed separately ;
for example , In traditional deployment , Usually there is only one website service to manage API Interact with customers . Using microservices , We can break down the site into multiple services , Such as checkout service and user service , And then develop separately 、 Deploy and extend these services .
Besides , Microservices are usually stateless , Use twelve factors to apply (twelve-factor application) Take advantage of the flexibility provided by cloud native tools .
Recommended technology : Node.js
Alternative technology : Kotlin,Golang
3.2 Continuous integration , Continuous deployment (CI/CD)
CI/CD It's the infrastructure component , It supports automatic test execution ( And optional deployment ), In response to version control events ( For example, pull requests and merge );
CI/CD To enable the company to carry out quality inspection , For example, unit testing 、 Static analysis or safety analysis .CI/CD It's the basic tool in the cloud native ecosystem , It can improve engineering efficiency and reduce errors .
Recommended technology : Gitlab CI/CD
Alternative technology : Github Actions
3.3 Containers
The core of the cloud is the cloud ecosystem , Speed and quality can be improved by simplifying the operation of developers ;
By linking the container with something like Docker Use them together , Teams can specify their system dependencies , At the same time, it provides a unified and universal execution layer . This layer enables the infrastructure team to operate on a single infrastructure , For example, container choreographer ( Such as Kubernetes). The team can store the container image in the container registry , Most of the time , The registry also provides vulnerability analysis and fine-grained access control .
Recommended technology : Docker
Alternative technology : Podmain,LXD
3.4 Container arrangement
Container choreography tools are used to start and manage a large number of containers and eliminate deployment strategies for a specific language or team ;
They allow the user to specify the container image 、 Mirror group and some configuration . The choreographer takes these specifications and transforms them into a running workload . Container choreography tools enable infrastructure teams to maintain a single infrastructure component , This component can perform any compliance with OCI Standard containers .
Recommended technology : kubernetes
Alternative technology : Google Cloud Run
3.5 Infrastructure is code (Infrastructure as Code)
Infrastructure as code is a strategy to put cloud configuration under version control ;
Companies usually manually manage cloud resources through the management panel , But manually configured tracking changes is very difficult . Infrastructure is code, which solves this problem by defining cloud resources as code and putting them under version control . Make changes to the infrastructure configuration in your code , And make changes through the company's deployment process , This can include peer review (peer review)、CI/CD. Version control provides an audit log , The log shows who changed the resource 、 What resources have been changed and when .
Recommended technology : Terraform
Alternative technology : Pulumi
3.6 Secret
Secret Management is critical to cloud native solutions , But it's often overlooked when it's small .
Secret It can be anything private , For example, password 、 Private key and API voucher .Secret It should be encrypted and stored in the configuration .
The mature solution is to issue temporary database credentials or rotation certificates , So that Secret Management is safer . Find the right one Secret Management solutions are critical for cloud native applications , Because containerized services can scale horizontally , And scheduling on many different machines .
Ignore Secret Managed organizations increase the risk of credential leakage .
Recommended technology :Vault
Alternative technology :Sealed Secrets
3.7 certificate
adopt TLS Secure communication is an essential best practice , This is particularly important in container based solutions , Because many different services may run on the same physical computer , If you don't encrypt , An attacker can gain access to the host network , Read all traffic between services . in addition , Manually updating certificates for cloud native deployment is not feasible , That's one reason automation solutions are needed ;
Recommended technology : cert-manager
Alternative technology : Google Escrow Certificate
3.8 API gateway
API Turn off is a reverse proxy , With a reverse agent that goes beyond the traditional ( for example Apache and Nginx) The function of ;
API Gateway support :
Such as gRPC,HTTP/2 and Websockets agreement ;
Dynamic configuration ;
mutual TLS;
route ;
Elastic primitives (Resiliency primitive), For example, speed limit and open circuit ;
Indicator visibility ;
Recommended technology : Kong
Alternative technology : Ambassador
3.9 journal
The journal is the foundation of observability .
The log is a place that the team is very familiar with and often visits , It's the key to observability . Logging is essential to understand what's going on in the system . Cloud native tools emphasize time series of metrics , Because they are more cost-effective than storing logs .
Recommended technology : EFK
Alternative technology : Loki
3.10 monitor
The monitoring system will store important events in time series . Monitoring data is aggregated , This means it doesn't store all the events , This makes the cloud native system need to consider the cost-effectiveness . in addition , Understanding the state of cloud native systems requires understanding the following issues :
How many operations are in progress ?
Results of operation ( success , Failure or status code ) What is it? ?
Operation How long does it take? ?
Important resources ( For example, queue depth or thread pool ) What's the count of ?
We can assign different dimensions to monitoring indicators , To learn more about individual computers , operating system , Version, etc ;
Recommended technology : Prometheus,Grafana
Alternative technology : Datadog
3.11 The alarm
Alarms make logs and metrics operational , System problems can be notified to the Administrator , And it can be paired with time series index . for example , When HTTP 500 When the status code increases or the request duration increases , The alarm function can inform the team of . Alerts are critical for cloud native systems , If there is no warning , We will not be informed of the incident , Then the company can't know that there's a problem ;
Recommended technology : Prometheus Alertmanager
Alternative technology : Grafana Alerts
3.12 track
Cloud native technology reduces the cost of starting and extending services , In this way, the team usually publishes more services than before the cloud . Tracking enables teams to monitor communication between services , And it can simply visualize the communication of the whole end-user and each stage of communication . When there is a performance problem , The team can see what service errors have occurred and how long each phase of the transaction took . Tracking is the next level of observation and debugging tool , Downtime can be significantly reduced by allowing the team to debug problems faster .
Recommended technology : Jaeger
Alternative technology : Zipkin
3.13 Service Grid
Service grid is like a powerful tool for cloud network management , They can provide dynamic routing , Dynamic load , Service discovery , Network strategy and resilience primitives , For example, circuit breaker , Retries and deadlines (deadline), Service grid is an extension of cloud native architecture in terms of load convergence ;
Recommended technology : istio
Alternative technology : Consul
author :Kentaro Wakayama translate :Bach
proofreading : Wenzai under the starry sky 、bot , source :K8sMeetup Community
边栏推荐
- Why can't cloud games connect to the server? What if the cloud game fails to connect to the server?
- What is the maximum bandwidth of EIP? Mbps how to modify the bandwidth of EIP
- What is distributed configuration center Nacos? What are the functions of distributed configuration center Nacos?
- Which brand is a good backup all-in-one machine price
- Grpc: how to add API log interceptors / Middleware?
- What port does the fortress machine use? What is the role of the fortress machine?
- Why install code signing certificate to scan and eliminate virus software from security
- What is the principle of intelligent image recognition? What are the applications of intelligent image recognition?
- Grpc: how to reasonably manage log configuration?
- [new double 11] the latest interpretation of Tencent cloud double 11! Get 11000 yuan voucher now!!
猜你喜欢

Community pycharm installation visual database

Ar 3D map technology
![[summary of interview questions] zj5](/img/d8/ece82f8b2479adb948ba706f6f5039.jpg)
[summary of interview questions] zj5
![[summary of interview questions] zj6 redis](/img/4b/eadf66ca8d834f049f3546d348fa32.jpg)
[summary of interview questions] zj6 redis

QT creator tips

Get to know MySQL database

Simple and beautiful weather code

On Sunday, I rolled up the uni app "uview excellent UI framework"

Sorting out of key vulnerabilities identified by CMS in the peripheral management of red team (I)
随机推荐
RI Geng series: write a simple shell script, but it seems to have technical content
What are the functions of Fortress machine equipment
Why can't cloud games connect to the server? What if the cloud game fails to connect to the server?
Tke accesses the cluster through kubectl in pod
How to use elastic scaling in cloud computing? What are the functions?
The medical technology giant was blackmailed and Microsoft announced 74 security vulnerabilities | global network security hotspot
What does elastic scaling of cloud computing mean? What are the application scenarios for elastic scaling of cloud computing?
QT creator tips
How to design a hybrid system
Grpc: how to add API Prometheus monitoring interceptors / Middleware?
[new double 11] the latest interpretation of Tencent cloud double 11! Get 11000 yuan voucher now!!
What technology does cloud computing elasticity scale? What are the advantages of elastic scaling in cloud computing?
Troubleshooting and resolution of errors in easycvr calling batch deletion interface
How much is a fortress machine? Why do you need a fortress machine?
Technical dry goods - how to use AI technology to accurately identify mining Trojans
Why install code signing certificate to scan and eliminate virus software from security
What protocols do fortress computers have and what protocols do fortress computers generally use
Why can't the fortress machine open the port? There is a problem with the use of the fortress machine port
Hunan data security governance Summit Forum was held, and Tencent built the best practice of government enterprise data security
What is the maximum bandwidth of EIP? Mbps how to modify the bandwidth of EIP