当前位置:网站首页>Yunyuanyuan (10) | introduction to kubernetes in kubernetes
Yunyuanyuan (10) | introduction to kubernetes in kubernetes
2022-07-22 18:17:00 【InfoQ】
Kubernetes brief introduction
One 、 background
1、 Change of deployment mode

- The era of traditional deployment :Run the application on the physical server Cannot define resource boundaries for application Cause resource allocation problems
- Virtualization deployment era :As a solution , Introducing virtualization Virtualization technology allows you to work on a single physical server CPU Running multiple virtual machines on (VM) Virtualization allows applications to be in VM Isolation between , And provide a certain degree of security Information about an application Can't be accessed by another application at will . Virtualization technology can make better use of resources on physical servers Because you can easily add or update applications , So you can achieve better scalability , Reduce the cost of hardware and so on . Every VM It's a complete computer , Run all components on top of virtualized hardware , Including its own operating system .
- Container deployment era :The container is similar to VM, But you can share the operating system between applications (OS). Containers are considered lightweight . Container and VM similar , Has its own file system 、CPU、 Memory 、 Process space, etc . Because they are separated from the infrastructure , So you can cross clouds and OS Release version for migration .
- agility :Agile application creation and deployment : And use VM Mirror Comparison , It improves the convenience and efficiency of container image creation .
- timeliness :Continuous development 、 Integration and deployment : By fast and simple rollback ( Because the image is immutable ), Support reliable and frequent Container image building and deployment .
- decoupled :Focus on the separation of development and operation and maintenance : In the build / Create an application container image when publishing , Instead of deploying . To separate the application from the infrastructure .
- Observability :Observability not only displays information and metrics at the operating system level , You can also display the health of the application and other indicators .
- Cross platform :Cross development 、 Testing and production environment consistency : Running on a laptop is the same as running in the cloud .
- portable :Portability across cloud and operating system distributions : Can be found in Ubuntu、RHEL、CoreOS、 Local 、 Google Kubernetes Engine And run anywhere else .
- Simplicity :Application centric Management : Raise the level of abstraction , From running on virtual hardware OS To use logical resources in OS Run the application on .
- Big distributed :Loose coupling 、 Distributed 、 elastic 、 Liberation's microservice : The application is broken down into smaller independent parts , And can be dynamically deployed and managed - Instead of running on a single large machine .
- Isolation, :Resource isolation : Predictable application performance .
- Efficiency :Resource utilization : High efficiency andhigh-density
2、 Containerization problem
- Flexible container application management
- Strong failover capability
- High performance load balancing access mechanism
- Convenient expansion
- Automated resource monitoring
3、 Why Kubernetes
- Service discovery and load balancingKubernetes have access to DNS Name or own IP Address disclosure container , If the flow into the container is large , Kubernetes Can load balance and distribute network traffic , So that the deployment is stable .
- Storage choreographyKubernetes Allows you to automatically mount the storage system of your choice , For example, local storage 、 Public cloud providers, etc .
- Automatic deployment and rollbackYou can use Kubernetes Describes the required state of the deployed container , It can transfer the actual state at a controlled rate Change to the desired state . for example , You can automate Kubernetes To create a new container for your deployment , Delete existing containers and use all their resources for new containers .
- Automatically complete the packing calculationKubernetes Allows you to specify what each container needs CPU And memory (RAM). When the container specifies a resource request ,Kubernetes Better decisions can be made to manage the container's resources .
- Self repairKubernetes Restart the failed container 、 Replace the container 、 Kill does not respond to user-defined Health check container , And don't advertise the service to the client until it's ready .
- Key and configuration managementKubernetes Allows you to store and manage sensitive information , For example, password 、OAuth Token and ssh secret key . You can deploy and update the key and application configuration without rebuilding the container image , There is no need to expose the key in the stack configuration
4、 market share


Two 、 brief introduction
1、Kubernetes It's not something
- Kubernetes Not traditional 、 All encompassing PaaS( Platform as a service ) System .
- Kubernetes Run at the container level, not at the hardware level
- It provides PaaS Some common functions of the product , For example, deployment 、 Expand 、 Load balancing 、 Logging and monitoring .
- however ,Kubernetes It's not a single system , The default solutions are all optional and pluggable . Kubernetes Provides the foundation for building a developer platform , But it keeps the user's choice and flexibility where it matters .
- No restrictions on supported application types. Kubernetes Designed to support extremely diverse workloads , Including statelessness 、 There are state and data processing workloads . If the application can run in a container , Then it should be able to be in Kubernetes It works well on the Internet .
- Do not deploy source code, And don't build your app .Continuous integration (CI)、 Delivery and deployment (CI/CD)Workflow depends on the culture and preferences of the organization as well as the technical requirements .
- No application level services as built-in Services, For example, middleware ( for example , Message middleware )、 Data processing framework ( for example ,Spark)、 database ( for example ,mysql)、 cache 、 Cluster storage system ( for example ,Ceph). Such a component can be used in Kubernetes Up operation , also / Or it can be run by Kubernetes The application on the server is portable ( for example ,Open service agents) To visit .
- No logging required 、 Monitoring or alerting solutions. It provides some integration as a proof of concept , It also provides a mechanism for collecting and exporting indicators .
- No configuration language is provided or required / System( for example jsonnet), It providesDeclarative API, The declarative API It can be any form of declarative specification .RESTful; Write yaml file
- Do not provide or use any comprehensive machine configuration 、 maintain 、 Manage or self repair systems .
- Besides ,Kubernetes It's not just a choreography system , In fact, it eliminates the need for choreography . The technical definition of choreography is to perform the defined workflow : First, execute A, And then execute B, Re execution C. by comparison ,Kubernetes Contains a set of independent 、 A composable control process , These processes continuously drive the current state to the desired state provided . How to go from A To C It doesn't matter how you do it , There's no need for centralized control , This makes the system easier to use And more powerful 、 More robust system 、 More resilient and scalable .
边栏推荐
- GBase8s数据库SET AUTOFREE 语句
- 力扣练习——32 划分为k个相等的子集
- Maintenance of gbase8s database constraint mode
- 基于流谱理论的SSL/TLS协议攻击检测方法
- Qt Notes - nombre de lignes traînées et de mouvements pour le Widget qtablewidget
- What is the routing protocol
- Gbase8s database set constraints statement
- Go flag package
- Go concurrent programming - work pool
- 「武汉理工大学 软件工程复习」第五章 | 软件体系结构
猜你喜欢
Microsoft SQL Server数据库语言及功能使用(十二)
QT notes - vs generating multiple exe files for a project
QT笔记—— VS一个项目生成多个exe文件
Go concurrent programming - work pool
超实用转型攻略:《2022央国企云原生落地实用指南》正式发布
SQL多条件查询无法实现
Computer Graphics From Scratch - Chapter 4
pushgateway安装及Prometheus配置
QT笔记——QtXml
逆袭黑马:数据库全栈工程师(DevDBOps)培训,把最好的课程送给您!
随机推荐
Maintenance of gbase8s database constraint mode
Research on vulnerability identification technology for project version differences
Gbase8s database specifies the comparison order with set collation
基于混合深度学习的多类型低速率DDoS攻击检测方法
Hblock盘活企业级存储市场
基于流谱理论的SSL/TLS协议攻击检测方法
Go FMT package details
[opencv introduction practice] use the front camera of the computer for face detection
GBase8s数据库标识连接
How MySQL queries the data in JSON data
如何破解IT中年危机下的惨淡人生
Understand relevant concepts of prosody. XMPP, jabber, bosh, etc
【Excle】生成guid和datetime导入测试数据到数据库
QT notes - vs generating multiple exe files for a project
如何搭建清晰易懂的数据看板?
GBase8s数据库SET CONSTRAINTS 语句
需要达到什么水平,程序员才能顺利拿到20k月薪无压力?
[bug] datetime format failed
shell脚本使用expect自动化交互登录远程主机进行批量关机
基础SQL Server 操作问题——仅当使用了列表并且IDENTITY_INSERT为ON时,才能为表中的标识列制定显示值