千家信息网

Istio1.6中二进制编译和本地运行是怎样的

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章给大家介绍Istio1.6中二进制编译和本地运行是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。二进制版编译和运行默认编译生成的镜像,调试不是很方便,不好用于研究I
千家信息网最后更新 2026年10月31日Istio1.6中二进制编译和本地运行是怎样的

这篇文章给大家介绍Istio1.6中二进制编译和本地运行是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

二进制版编译和运行

默认编译生成的镜像,调试不是很方便,不好用于研究Istio内部机制。因此尝试本地二进制编译和运行调试。

编译: 可以在各自main()函数所在目录执行编译(见下文中), 也可以用makefile生成的统一目录下内容( /${GOPATH}/src/istio.io/istio/out/linux_amd64/)

pilot

pilot-discovery
cd /${GOPATH}/src/istio.io/istio/pilot/cmd/pilot-discovery/go build -o pilot-discovery./pilot-discovery -h./pilot-discovery discovery
pilot-agent
cd /${GOPATH}/src/istio.io/istio/pilot/cmd/pilot-agent/go build -o pilot-agent./pilot-agent -h./pilot-agent request GET stats    // (从该pilot-agent管理的envoy)获取统计数据

按照 ./pilot-agent proxy 的错误提示,逐步获取本地执行依赖

// 1. 证书文件mkdir -p /${GOPATH}/src/istio.io/istio/out/linux_amd64/var/run/secrets/istiocp /${GOPATH}/src/istio.io/istio/out/linux_amd64/docker_temp/certs/pilot/root-cert.pem /${GOPATH}/src/istio.io/istio/out/linux_amd64/var/run/secrets/istio/root-cert.pem// 2.envoy配置模板文件mkdir -p /${GOPATH}/src/istio.io/istio/out/linux_amd64/var/lib/istio/envoycp /${GOPATH}/src/istio.io/istio/out/linux_amd64/docker_build/docker.proxyv2/gcp_envoy_bootstrap.json /${GOPATH}/src/istio.io/istio/out/linux_amd64/var/lib/istio/envoy/envoy_bootstrap_tmpl.json// 3.envoycp /${GOPATH}/src/istio.io/istio/out/linux_amd64/envoy /usr/local/bin/// 4.touch /etc/ssl/certs/ca-certificates.crt mkdir /${GOPATH}/src/istio.io/istio/out/linux_amd64/etc/istio/pod/touch /${GOPATH}/src/istio.io/istio/out/linux_amd64/etc/istio/pod/labels

至此,pilot-agent 和 envoy 在host上运行起来了,如部分输出

...2020-07-23T12:50:49.581035Z     info    Received new config, creating new Envoy epoch 02020-07-23T12:50:49.581070Z     info    Epoch 0 starting2020-07-23T12:50:49.583358Z     info    Envoy command: [-c etc/istio/proxy/envoy-rev0.json --restart-epoch 0 --drain-time-s 45 --parent-shutdown-time-s 60 --service-cluster istio-proxy --service-node sidecar~172.26.33.33~.~.svc.cluster.local --max-obj-name-len 189 --local-address-ip-version v4 --log-format-prefix-with-location 0 --log-format %Y-%m-%dT%T.%fZ    %l      envoy %n        %v -l warning --component-log-level misc:error]2020-07-23T20:50:49.623931Z     warning envoy config    StreamAggregatedResources gRPC config stream closed: 13, 2020-07-23T20:50:49.643268Z     warning envoy config    StreamAggregatedResources gRPC config stream closed: 13, ...
envoy

由 pilot-agent 管理生命周期

对照用: 在容器中,envoy的启动命令

Envoy command: [-c etc/istio/proxy/envoy-rev0.json --restart-epoch 0 --drain-time-s 45 --parent-shutdown-time-s 60 --service-cluster istio-ingressgateway --service-node router~172.17.0.22~istio-ingressgateway-64f48849b8-pp9lf.istio-system~istio-system.svc.cluster.local --max-obj-name-len 189 --local-address-ip-version v4 --log-format %Y-%m-%dT%T.%fZ %l envoy %n %v -l warning --component-log-level misc:error]

envoy需要很多配置项支撑

  • 原始的配置文件 /${GOPATH}/src/istio.io/istio/install/gcp/bootstrap/gcp_envoy_bootstrap.json

  • 编译时,会复制副本为 /${GOPATH}/src/istio.io/istio/out/linux_amd64/docker_build/docker.proxyv2/gcp_envoy_bootstrap.json

  • 生成镜像时,Dockerfile.proxyv2会复制副本为 COPY gcp_envoy_bootstrap.json /var/lib/istio/envoy/gcp_envoy_bootstrap_tmpl.json

  • 容器内运行时,pilot-agent 会根据 上述配置模板 生成实际配置文件,并用在 envoy 启动时 /etc/istio/proxy/envoy-rev0.json

galley

cd /${GOPATH}/src/istio.io/istio/galley/tools/mcpc/go build -o galley./galley -h

关于Istio1.6中二进制编译和本地运行是怎样的就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

编译 运行 配置 二进制 文件 生成 内容 副本 容器 更多 模板 目录 镜像 帮助 管理 不错 原始 不好 兴趣 函数 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技财经 互联网品科技 互联网巨头科技公司 互联网科技生活的内容 济南和联互联网科技有限公司 互联网对科技的发展 互联网科技和信息 银川新华互联网科技学校联系电话 科技类公司包括互联网吗 群盈汇互联网科技有限公司 黑科技 体验场景 互联网大会 互联网公司高科技产品 云南省自由互联网科技有限公司 陕西云淼互联网科技公司 广州梦谷互联网科技有限公司领导 互联网科技平台产品运营 互联网科技博主张洲 互联网科技品牌 互联网领先科技成果宣传视频 现代科技的标志之一的互联网 互联网科技公司排名 互联网是不是新科技 互联网科技股票 互联网科技实习生岗位职责 燊美集互联网科技有限公司 如何创新互联网科技 互联网在线教育科技创业 互联网科技企业商标注意事项 安徽零酒互联网科技有限公司 伍佰万互联网科技是干嘛的
0