Skip to Content
Kubernetes编程
book

Kubernetes编程

by Michael Hausenblas, Stefan Schimanski
June 2021
Intermediate to advanced
335 pages
5h 50m
Chinese
China Electric Power Press Ltd.
Content preview from Kubernetes编程
112
4
使用强类型的客户端:
─由
kubernetes-sigs/controller-runtime
提供的客户端,在
Operator SDK
Kubebuilder
中广为使用(参考“
4.4.3 Operator SDK
Kubebuilder
controller-runtime
客户端”)。
─由
client-gen
生成的客户端,与
k8s.io/client-go/kubernetes
中使用的
一样(参考
4.4.2
节中的“通过
client-gen
生成强类型客户端”)。
选用哪一种客户端主要取决于所写的代码的上下文,尤其是逻辑复杂度和具
体的需求(比如:需要支持动态类型,即在编译期未知的
GVK
)。
实现客户端的基本要求:
降低处理未知
GVK
的复杂度。
提高类型安全系数。
提高其提供的
Kubernetes API
的功能的完整性。
4.4.1
动态客户端
k8s.io/client-go/dynamic
提供的动态客户端对
GVK
完全无感知。它甚至不会
使用除了
unstructured.Unstructured
以外的
Go
语言类型,
Unstructured
是对
json.Unmarshal
及其输出的一个封装。
动态客户端不使用
Scheme
,也不使用
RESTMapper
。这就意味着开发者需要
手工以
GVR
的形式提供一个资源(参考“
3.5.2
资源”)来描述相关类型的信息:
schema.GroupVersionResource{
Group: "apps",
Version: "v1",
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

解密金融数据

解密金融数据

Justin Pauley
Python机器学习案例精解

Python机器学习案例精解

Posts & Telecom Press, Yuxi (Hayden) Liu
软件开发实践:项目驱动式的Java开发指南

软件开发实践:项目驱动式的Java开发指南

Raoul-Gabriel Urma, Richard Warburton

Publisher Resources

ISBN: 9787519854799