1.1 管理k8s核心资源的三种基本方法
陈述式资源管理方法
--主要依赖命令行工具kubectl进行管理
优点
可以满足90%以上的使用场景
对资源的增、删、查操作比较容易
缺点
命令冗长,复杂,难以记忆
特定场景下,无法实现管理需求
对资源的修改麻烦,需要patch来使用json串更改。
声明式资源管理方法
主要依赖统一资源配置清单进行管理
GUI式资源管理方法
主要依赖图形化操作界面进行管理
金丝雀发布(Canary Release)
Deployment控制器支持自定义控制更新过程中的滚动节奏,如“暂停(pause)”或“继续(resume)”更新操作。比如等待第一批新的Pod资源创建
完成后立即暂停更新过程,此时,仅存在一部分新版本的应用,主体部分还是旧的版本。然后,再筛选一小部分的用户请求路由到新版本的Pod应用,
继续观察能否稳定地按期望的方式运行。确定没问题之后再继续完成余下的Pod资源滚动更新,否则立即回滚更新操作。这就是所谓的金丝雀发布。
kebectl set image deployment /nginx nginx=nginx:1.14&& kubectl rollout pause deployment/nginx