 Go Programming Pattern in Kubernetes PhilosophyGo Programming Pattern in Kubernetes Philosophy Harry Zhang @resouer Contents • What I will talk? • Kubernetes basic in 1 min • For Kubernetes developers: • The Golang programming patterns of popular open source projects in this world • Written by, and heavily depends on Golang Again: Why Go? • All about community • A sad story: • https://github.com/google/lmctfy • Now think about a of all Asta Xie instances $ kubectl get astaxie NAME KIND astaxie1 AstaXie.v1.cr.client-go.k8s.io My AstaXie Object & Controller etcd kube-apiserver types register AstaXie Controller0 码力 | 29 页 | 2.12 MB | 1 年前3 Go Programming Pattern in Kubernetes PhilosophyGo Programming Pattern in Kubernetes Philosophy Harry Zhang @resouer Contents • What I will talk? • Kubernetes basic in 1 min • For Kubernetes developers: • The Golang programming patterns of popular open source projects in this world • Written by, and heavily depends on Golang Again: Why Go? • All about community • A sad story: • https://github.com/google/lmctfy • Now think about a of all Asta Xie instances $ kubectl get astaxie NAME KIND astaxie1 AstaXie.v1.cr.client-go.k8s.io My AstaXie Object & Controller etcd kube-apiserver types register AstaXie Controller0 码力 | 29 页 | 2.12 MB | 1 年前3
 Is Your Virtual Machine Really Ready-to-go with Istio?#IstioCon Is Your Virtual Machine Really Ready-to-go with Istio? Kailun Qin, Intel Haoyuan Ge #IstioCon Quick Summary (from Google Cloud Next ’19 [1]) VM works on Istio! [1] Istio Service Mesh Proxy to Proxy kernel bypass w/ HW acceleration #IstioCon Quick Summary, Today Istio is ready-to-go for VM native. And should/will be ready for MORE! #IstioCon Thank you! Github: @kailun-qin @harryge000 码力 | 50 页 | 2.19 MB | 1 年前3 Is Your Virtual Machine Really Ready-to-go with Istio?#IstioCon Is Your Virtual Machine Really Ready-to-go with Istio? Kailun Qin, Intel Haoyuan Ge #IstioCon Quick Summary (from Google Cloud Next ’19 [1]) VM works on Istio! [1] Istio Service Mesh Proxy to Proxy kernel bypass w/ HW acceleration #IstioCon Quick Summary, Today Istio is ready-to-go for VM native. And should/will be ready for MORE! #IstioCon Thank you! Github: @kailun-qin @harryge000 码力 | 50 页 | 2.19 MB | 1 年前3
 Istio-redirector: the way
to go to manage
thousands of HTTP
redirections#IstioCon Istio-redirector: the way to go to manage thousands of HTTP redirections Etienne Fontaine (@etifontaine) #IstioCon Istio-redirector 301-redirection from /bus/routes/bruxelles/lille0 码力 | 13 页 | 1.07 MB | 1 年前3 Istio-redirector: the way
to go to manage
thousands of HTTP
redirections#IstioCon Istio-redirector: the way to go to manage thousands of HTTP redirections Etienne Fontaine (@etifontaine) #IstioCon Istio-redirector 301-redirection from /bus/routes/bruxelles/lille0 码力 | 13 页 | 1.07 MB | 1 年前3
 Operator Pattern 用 Go 扩展 Kubernetes 的最佳实践Operator Pattern:用 Go 扩展 K8s 的最佳实践 吴学强 ApeCloud KubeBlocks Maintainer & 研发总监 目 录 认识我们 00 什么是 Operator 01 Operator 基础模型 02 Operator 最佳实践 03 我们是谁 云猿生(ApeCloud)是一家提供数据库内核与管理平台的基 础软件开发商. KubeBlocks unhealthy Operands based on Operand metrics/alerts/logs • Operator can prevent the Operand from transitioning into an unhealthy state based on Operand metrics Auto-tuning • Operator is able to automatically 熟悉如何生成二级资源(Managed Resource) 6. 熟悉如何写 UT 7. 熟悉如何制作 Helm Chart 课后思考题: 1. 如何不启动 WebHook? 2. API 只要用 Go 写就可以了吗,需要修改对应的 YAML 文件吗? 3. Setup 阶段,用 Watch 函数取代 Owns 并实现同样的目的。 4. Reconcile 函数为什么不区分 Create、Update0 码力 | 21 页 | 3.06 MB | 9 月前3 Operator Pattern 用 Go 扩展 Kubernetes 的最佳实践Operator Pattern:用 Go 扩展 K8s 的最佳实践 吴学强 ApeCloud KubeBlocks Maintainer & 研发总监 目 录 认识我们 00 什么是 Operator 01 Operator 基础模型 02 Operator 最佳实践 03 我们是谁 云猿生(ApeCloud)是一家提供数据库内核与管理平台的基 础软件开发商. KubeBlocks unhealthy Operands based on Operand metrics/alerts/logs • Operator can prevent the Operand from transitioning into an unhealthy state based on Operand metrics Auto-tuning • Operator is able to automatically 熟悉如何生成二级资源(Managed Resource) 6. 熟悉如何写 UT 7. 熟悉如何制作 Helm Chart 课后思考题: 1. 如何不启动 WebHook? 2. API 只要用 Go 写就可以了吗,需要修改对应的 YAML 文件吗? 3. Setup 阶段,用 Watch 函数取代 Owns 并实现同样的目的。 4. Reconcile 函数为什么不区分 Create、Update0 码力 | 21 页 | 3.06 MB | 9 月前3
 2.4 Go在分布式docker里面的应用_孙宏亮Go在Docker分布式环境中 的应用 孙宏亮@DaoCloud allen.sun@daocloud.io 个人介绍 • 孙宏亮 • DaoCloud技术合伙人,高级工程师 • 热爱golang&docker • 《Docker源码分析》作者 • docker、swarm等项目committer Agenda • Docker生态&Golang • DaoCloud&Golang •0 码力 | 19 页 | 1.27 MB | 1 年前3 2.4 Go在分布式docker里面的应用_孙宏亮Go在Docker分布式环境中 的应用 孙宏亮@DaoCloud allen.sun@daocloud.io 个人介绍 • 孙宏亮 • DaoCloud技术合伙人,高级工程师 • 热爱golang&docker • 《Docker源码分析》作者 • docker、swarm等项目committer Agenda • Docker生态&Golang • DaoCloud&Golang •0 码力 | 19 页 | 1.27 MB | 1 年前3
 石墨文档Go在K8S上微服务的实践-彭友顺石墨文档GO在K8S上微服务的实践 彭友顺 石墨文档 基础设施负责人 目 录 1 架构演进 01 2 微服务的生命周期 02 3 如何管理好微服务 03 架构演进 第一部分 架构演进 单体应用时期 垂直应用时期 微服务时期 快速、简单 耦合强 隔离、稳定 复制多 隔离、稳定 复用高 架构演进 组件增多 架构复杂 维护困难 架构演进 传统模式 K8S模式 format、lint、breaking 检查。 CI build 阶段 • 会基于 pb 的注释自动产生文档,并推送至内部的微服务管理系统接口平台中 • 会生成 Go/PHP/Node/Java 桩代码和错误码,推送到指定的仓库 开发阶段 • go get 客户端、服务端的gRPC和错误码的代码 配置 对接 Debug • 配置驱动 • 配置补齐 • 配置工具 • Proto的管理 • 配置补齐 • 配置工具 • Proto的管理 • 错误码管理 • 调试gRPC • 调试信息 • 错误定位 Generate • protoc -I {error proto file} --go-errors_out={output directory} • 实现我们自定义的error类型,方便断言。 • 根据注解的code信息,在错误码中生成对应的grpc status code •0 码力 | 41 页 | 3.20 MB | 1 年前3 石墨文档Go在K8S上微服务的实践-彭友顺石墨文档GO在K8S上微服务的实践 彭友顺 石墨文档 基础设施负责人 目 录 1 架构演进 01 2 微服务的生命周期 02 3 如何管理好微服务 03 架构演进 第一部分 架构演进 单体应用时期 垂直应用时期 微服务时期 快速、简单 耦合强 隔离、稳定 复制多 隔离、稳定 复用高 架构演进 组件增多 架构复杂 维护困难 架构演进 传统模式 K8S模式 format、lint、breaking 检查。 CI build 阶段 • 会基于 pb 的注释自动产生文档,并推送至内部的微服务管理系统接口平台中 • 会生成 Go/PHP/Node/Java 桩代码和错误码,推送到指定的仓库 开发阶段 • go get 客户端、服务端的gRPC和错误码的代码 配置 对接 Debug • 配置驱动 • 配置补齐 • 配置工具 • Proto的管理 • 配置补齐 • 配置工具 • Proto的管理 • 错误码管理 • 调试gRPC • 调试信息 • 错误定位 Generate • protoc -I {error proto file} --go-errors_out={output directory} • 实现我们自定义的error类型,方便断言。 • 根据注解的code信息,在错误码中生成对应的grpc status code •0 码力 | 41 页 | 3.20 MB | 1 年前3
 Rancher Kubernetes Cryptographic Library
FIPS 140-2 Non-Proprietary Security PolicyDeterministic Random Bit Generators 6/24/2015 [SP 800-131A r2] NIST SP 800-131A Rev. 2, Transitioning the Use of Cryptographic Algorithms and Key Lengths 3/21/2019 [SP 800-133 r2] NIST SP 800-133 compile the module: ● Clang compiler version 6.0.1 (http://releases.llvm.org/download.html) ● Go programming language version 1.10.3 (https://golang.org/dl/) ● Ninja build system version 1.8.2 (https://github0 码力 | 16 页 | 551.69 KB | 1 年前3 Rancher Kubernetes Cryptographic Library
FIPS 140-2 Non-Proprietary Security PolicyDeterministic Random Bit Generators 6/24/2015 [SP 800-131A r2] NIST SP 800-131A Rev. 2, Transitioning the Use of Cryptographic Algorithms and Key Lengths 3/21/2019 [SP 800-133 r2] NIST SP 800-133 compile the module: ● Clang compiler version 6.0.1 (http://releases.llvm.org/download.html) ● Go programming language version 1.10.3 (https://golang.org/dl/) ● Ninja build system version 1.8.2 (https://github0 码力 | 16 页 | 551.69 KB | 1 年前3
 pandas: powerful Python data analysis toolkit - 0.20.3tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387 3.5.3.2 Transitioning to pytest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388 3.5.3.3 Using pytest either a single character at each index of the original Series or NaN. For example, In [47]: strs = 'go', 'bow', 'joe', 'slow' In [48]: ds = Series(strs) In [49]: for s in ds.str: ....: print(s) ... all is not lost: you can inspect index.is_unique and raise an exception explicitly if it is False or go to a different code branch. 1.29 v.0.7.3 (April 12, 2012) This is a minor release from 0.7.2 and0 码力 | 2045 页 | 9.18 MB | 1 年前3 pandas: powerful Python data analysis toolkit - 0.20.3tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387 3.5.3.2 Transitioning to pytest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388 3.5.3.3 Using pytest either a single character at each index of the original Series or NaN. For example, In [47]: strs = 'go', 'bow', 'joe', 'slow' In [48]: ds = Series(strs) In [49]: for s in ds.str: ....: print(s) ... all is not lost: you can inspect index.is_unique and raise an exception explicitly if it is False or go to a different code branch. 1.29 v.0.7.3 (April 12, 2012) This is a minor release from 0.7.2 and0 码力 | 2045 页 | 9.18 MB | 1 年前3
 pandas: powerful Python data analysis toolkit - 0.20.2tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385 3.5.3.2 Transitioning to pytest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 3.5.3.3 Using pytest either a single character at each index of the original Series or NaN. For example, In [47]: strs = 'go', 'bow', 'joe', 'slow' In [48]: ds = Series(strs) In [49]: for s in ds.str: ....: print(s) ... all is not lost: you can inspect index.is_unique and raise an exception explicitly if it is False or go to a different code branch. 1.28 v.0.7.3 (April 12, 2012) This is a minor release from 0.7.2 and0 码力 | 1907 页 | 7.83 MB | 1 年前3 pandas: powerful Python data analysis toolkit - 0.20.2tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385 3.5.3.2 Transitioning to pytest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 3.5.3.3 Using pytest either a single character at each index of the original Series or NaN. For example, In [47]: strs = 'go', 'bow', 'joe', 'slow' In [48]: ds = Series(strs) In [49]: for s in ds.str: ....: print(s) ... all is not lost: you can inspect index.is_unique and raise an exception explicitly if it is False or go to a different code branch. 1.28 v.0.7.3 (April 12, 2012) This is a minor release from 0.7.2 and0 码力 | 1907 页 | 7.83 MB | 1 年前3
 pandas: powerful Python data analysis toolkit - 0.21.1tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415 3.5.3.2 Transitioning to pytest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415 3.5.3.3 Using pytest either a single character at each index of the original Series or NaN. For example, In [47]: strs = 'go', 'bow', 'joe', 'slow' In [48]: ds = Series(strs) In [49]: for s in ds.str: ....: print(s) ... all is not lost: you can inspect index.is_unique and raise an exception explicitly if it is False or go to a different code branch. 1.31 v.0.7.3 (April 12, 2012) This is a minor release from 0.7.2 and0 码力 | 2207 页 | 8.59 MB | 1 年前3 pandas: powerful Python data analysis toolkit - 0.21.1tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415 3.5.3.2 Transitioning to pytest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415 3.5.3.3 Using pytest either a single character at each index of the original Series or NaN. For example, In [47]: strs = 'go', 'bow', 'joe', 'slow' In [48]: ds = Series(strs) In [49]: for s in ds.str: ....: print(s) ... all is not lost: you can inspect index.is_unique and raise an exception explicitly if it is False or go to a different code branch. 1.31 v.0.7.3 (April 12, 2012) This is a minor release from 0.7.2 and0 码力 | 2207 页 | 8.59 MB | 1 年前3
共 356 条
- 1
- 2
- 3
- 4
- 5
- 6
- 36














 
  
 