开源ServiceMesh项目istio源代码粗略阅读

作者:李佶澳  更新时间:2019-06-04 11:38:57 +0800

  项目    istio    刷新

本篇目录

说明

galley:istio 配置的验证、处理、下发,是 istio 的对外接口。

mixer: 进行访问控制管理、验证请求信息、收集 envoy 状态数据,分为 mixc 和 mixs 两个命令。

pilot: 将控制规则转换成 envoy 配置,是 envoy 对接的 xds。

citadel:管理服务与服务之间、终端用户与服务之间的认证。

istioctl: istio 的管理命令行

istio的架构

代码编译

istio给出一份开发环境设置文档Preparing for Development,但是太不详细了,没什么用处。

最新的istio(2019-05-31 18:50:34)使用 go module 管理依赖代码,直接用 make 开始目标组件的构建即可:

make galley
make mixs
make mixc
make citadel
make pilot
make istioctl

编译后的文件位于 $ISTIO_OUT 目录中:

export ISTIO_OUT:=$(GO_TOP)/out/$(GOOS)_$(GOARCH)/$(BUILDTYPE_DIR)
$ ls $GOPATH/out/darwin_amd64/release
galley        istio_ca        istioctl        mixc       mixs    pilot-discovery

目录结构

代码目录比较清晰,每个组件一个目录,都是 cmd 目录 + pkg 目录的方式,按部就班的读就是了。

参考

  1. istio: Preparing for Development

关注加微信,一般不闲聊(直接说事)

相关页面,推荐阅读

Copyright @2011-2019 All rights reserved. 转载请添加原文连接,合作请加微信lijiaocn或者发送邮件: [email protected],备注网站合作

友情链接:  微信公众号精选文章  发现知识星球