Cloud native has become the de facto standard in the cloud computing industry. It has changed the way of work and thinking of software development, deployment and operation and maintenance, and has also greatly changed the career direction of operation and maintenance personnel. This also requires cloud-native operation and maintenance engineers to be consistent Compared with traditional operation and maintenance, you need to master different technologies and methodologies.
1. The prospect of cloud-native O&M
Whether a career direction has a future, whether the job demand is large, and what core skills need to be mastered, the most reliable way is of course to search for relevant positions on recruitment websites. For example, for cloud native operation and maintenance, you can search for "cloud native operation and maintenance". , "DevOps engineer", "SRE engineer", "cloud native architect", "Kubernetes operation and maintenance" and other keywords, you can understand that the current cloud native operation and maintenance jobs are in high demand, and the salary prospects are far from traditional operation and maintenance. Vico.
At the same time, with the continuous evolution of the cloud computing industry, the work content and responsibilities of cloud-native operation and maintenance are very different from those of traditional operation and maintenance, especially from the operation and maintenance of traditional Linux operating system to the operating system in the cloud-native era. On the operation and maintenance of Kubernetes:
- Familiar with DevOps, CI/CD, responsible for the continuous delivery of application products and the construction of the tool system for continuous operation and maintenance, and support the rapid iteration of the business and the construction of stable tools;
- Improve the monitoring system, log analysis and all-round data operation of Kubernetes clusters (including availability indicators, historical accidents, resource utilization, etc.), improve monitoring effectiveness, detect faults in a timely manner, and ensure business availability;
- Optimize the Kubernetes cluster operation and maintenance system, continuously optimize the deployment of the underlying basic components, and improve the operation and maintenance capabilities and problem handling efficiency of each line
- Responsible for the construction of the Kubernetes cluster operation and maintenance platform, creating an automated operation and maintenance and management and control system; responsible for the design and implementation of Kubernetes cluster management, deployment and release, observable systems and other systems;
In contrast to traditional Linux operation and maintenance, due to the popularity of IaaS and PaaS provided by cloud service providers, and the increasing degree of automation of operation and maintenance, many traditional operation and maintenance tasks are gradually replaced. Computer infrastructure (containerization, public cloud, hybrid cloud, etc.), application architecture (microservices, distributed, twelve-factor applications), as well as DevOps, FinOps, DevSecOps and other development processes and methodologies that operators need to master Skills put forward new demands.
2. What technologies do cloud native operation and maintenance need to master?
1. Master a programming language
Usually, operation and maintenance engineers have far less requirements for programming languages than programmers. Traditional operation and maintenance engineers need to be proficient in some of the more popular scripting languages Shell and Python. Many companies use Java at the bottom. If you can understand Java, especially if you can deploy and launch Java projects independently (doesn't need to be able to develop), it will be better.
Most of the popular cloud native projects are developed in Golang. As a cloud native operation and maintenance engineer, it is recommended to learn Golang and use Golang as your main programming language.
To learn Golang, we recommend the learning materials provided by Golang official in "go.dev/learn" (you can enter this link in the browser), such as technical documents, "Tour of Go", Go's Web Dev, CLIs, "Go" by example" and so on.
If you have slow website access or are not used to learning in English, I recommend the book "The Go Programming Language", which is known as the "Go Language Bible", and Manning's "Go in Action". , "Head First Go Programming" by O'reilly (this book is great for getting started).
2. Operating system basics and command line
The Linux operating system and its command line can be said to be the basic knowledge that every programmer should master, and it is also the "traditional skill" of operation and maintenance engineers, and cloud-native operation and maintenance engineers are no exception.
The knowledge in this part is very practical. It is recommended to install an Ubuntu locally on the computer or through a virtual machine, or to purchase a cloud server CVM on Tencent Cloud. You can't just read books or videos.
The recommended ones are "The Complete Linux Command Line", "Brother Bird's Linux Private Kitchen", "Linux/UNIX System Programming Manual"
3. Computer network
DevOps is the collective name of Development and Operation and Maintenance. Therefore, cloud-native operation and maintenance also needs to master the core knowledge of computer science that developers must learn. In addition to the operating system, computer network is also a key content that needs to be mastered.
In addition to understanding the OSI seven-layer network model, process communication methods, TCP/IP protocol, HTTP/HTTPS, packet capture, iptables and other network and security knowledge required for local or self-built server operation and maintenance;
It is also recommended to practice learning through the products and services provided by cloud service providers, such as Tencent Cloud's cloud server CVM, object storage COS, cloud database MySQL, load balancing, NAT gateway, private network, CDN, message queue and other products for in-depth understanding Some cloud computing-related services and the computer network-related knowledge behind them.
4. Development environment compilation and deployment
You can start from the deployment of basic LAMP, LNMP, Wordpress and some popular open source projects to cloud services, master Nginx, Tomcat, Apache and other web servers, load balancing, MySQL, Redis database and cache.
The above knowledge is basically what traditional operation and maintenance engineers need to master, and of course it is also the foundation of cloud-native operation and maintenance. Cloud-native operation and maintenance (DevOps engineers, SRE engineers, etc.) mainly need to master cloud-native product ecology and culture:
5. Cloud native foundation
Docker containerization and Kubernetes clusters can be said to be the most important foundations of cloud native. It is also recommended to start with hands-on practice when learning. When starting the actual combat, it is recommended to install and deploy the Docker environment, Kubernetes cluster locally, and use the online hosting Kubernetes (such as Tencent Cloud container products TKE, EKS) provided by cloud service providers to learn, so as to be close to the real environment of the actual production of the enterprise .
Although the official technical documentation of Docker and Kubernetes is a good introductory tutorial, there are still some "pits" that are inevitable for many newbies.
To this end, Tencent Cloud [Liaoyuan Club] has launched a set of cloud native technology workshops with lower learning threshold, stronger steps, more detailed content and more suitable for domestic users to learn, aiming to help more people interested in cloud native technology of developers quickly and systematically master Docker and Kubernetes.
As an introductory course, it is very friendly to beginners. It is not only free, but also has a dedicated learning exchange group. Students in the group punch in and share, and the atmosphere is great!
For details of , please click the link: Tencent Cloud Liaoyuan Club Technology Workshop
6. Microservices, DevOps and Cloud Native Monitoring
In terms of microservices, DevOps and cloud native monitoring, in addition to mastering basic technical products, such as Jenkins, Prometheus, etc., it also involves some processes and methodologies for enterprises to go to the cloud and cloud native implementation. It is recommended to read "Kubernetes-based cloud" Native DevOps", "Kubernetes in Action", "Cloud Native Patterns", "Kubernetes Patterns" and other related books.
Tencent Cloud [Liaoyuan Club] also launched a 3-day offline [Cloud Native Technology Practical Camp]. The Tencent Cloud technical expert team will teach you the first-line cloud native practical experience face-to-face, and teach you the "best way to transform business containerization". "Best Practices", participants can not only progress with programmers in various fields of the community, but also continue to communicate with Tencent's senior architects and products.
For details of , please click the link: Tencent Cloud Liaoyuan Club Cloud Native Technology Practical Camp
7. Learning in different directions of cloud native
The above content is the basic content that cloud native operation and maintenance needs to master. In different enterprises, cloud native operation and maintenance may be divided into some directions, such as DevOps engineers, SRE engineers, platform architecture engineers, etc. Different directions require advanced learning The points will be different, but the landing of Docker, Kubernetes and cloud native in the enterprise is the cornerstone of these directions.
For in-depth study in different directions, it is necessary to combine the company's own business and refer to some open source projects of CNCF.
3. About verification and advancement
For beginner and intermediate cloud native operation and maintenance engineers, whether they want to set a goal for themselves, or examine the level of knowledge, or apply for a job, they might as well take a cloud native certificate. The Cloud Native Computing Foundation CNCF is generally more valuable than the certification certificates provided by many cloud vendors. Many companies also clearly state that CKA and CKAD are bonus points when recruiting. Most of these exams are practical questions, and the official Kubernetes technical documentation is the only possible reference during the exam
- Certified Kubernetes Application Developer (CKAD): The CKAD exam certifies that users can design, build, configure, and publish cloud-native applications for Kubernetes. CKAD certified personnel can define software resources in Kubernetes and use core components to build, monitor, and inspect scalable applications;
- Kubernetes Administrator Certification Certified Kubernetes Administrator (CKA): CKA certification ensures that CKA certified personnel have the skills, knowledge, and ability to perform Kubernetes administrator duties. Certified Kubernetes administrators demonstrate competencies including basic installation and configuration, and managing production-level Kubernetes clusters.
- Kubernetes Certified Security Specialist (CKS): The Kubernetes Certified Security Specialist program ensures that credential holders are easily qualified for a variety of best practices. The CKS certification includes the skills to secure container-based applications and the Kubernetes platform at build, deployment, and runtime. Candidates participating in CKS must hold a current CKA certificate to demonstrate that they have sufficient Kubernetes expertise.
Of course, there are also some other certificates. I won't introduce them here. After all, certificates are not the purpose. It is recommended that children who have mastered Linux operation and maintenance and cloud native basics participate in the offline technical camp organized by Tencent Cloud [Liaoyuan Club]. , which is closer to the production practice of the enterprise and the architects of large factories can communicate in depth.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。