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

  介绍

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

二进制版编译和运行

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

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

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

飞行员pilot-discovery
 cd /$ {GOPATH}/src/istio.io/Istio/飞行员/cmd/pilot-discovery/go  build  -o  pilot-discovery/pilot-discovery  - h
  。/pilot-discovery 发现
pilot-agent
 cd /$ {GOPATH}/src/istio.io/istio/飞行员/cmd/pilot-agent/go  build  -o  pilot-agent/pilot-agent  - h
  。/pilot-agent  request  GET  stats ,,,//,(从该pilot-agent管理的特使)获取统计数据

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

//, 1只证书文件
  mkdir  -p /$ {GOPATH}/src/istio.io/istio//linux_amd64/var/运行/机密/istio
  cp /$ {GOPATH}/src/istio.io/istio//linux_amd64/docker_temp/证书/飞行员/root-cert.pem /$ {GOPATH}/src/istio.io/istio//linux_amd64/var/运行/机密/istio/root-cert.pem//,2.特使配置模板文件
  mkdir  -p /$ {GOPATH}/src/istio.io/istio//linux_amd64/var/lib/istio/特使
  cp /$ {GOPATH}/src/istio.io/istio//linux_amd64/docker_build docker.proxyv2/gcp_envoy_bootstrap.json /$ {GOPATH}/src/istio.io/istio//linux_amd64/var/lib/istio//envoy_bootstrap_tmpl.json特使//3.特使
  cp /$ {GOPATH}/src/istio.io/istio//linux_amd64/envoy /usr/地方/bin///4。
  touch /etc/ssl/证书/ca-certificates.crt 
  mkdir /$ {GOPATH}/src/istio.io/istio//linux_amd64/etc/istio//仓
  touch /$ {GOPATH}/src/istio。io/istio//linux_amd64/etc/istio/舱/标签

至此,pilot-agent和特使在主机上运行起来了,如部分输出

<>之前…   2020 - 07 - 23 t12:50:49.581035z ,,,, info ,,, Received  new 配置,,creating  new  Envoy  epoch  0   2020 - 07 - 23 t12:50:49.581070z ,,,, info ,,, Epoch  0开始   2020 - 07 - 23 t12:50:49.583358z ,,,, info ,,, Envoy 命令:,(-c 等/istio/代理/envoy-rev0.json ——restart-epoch  0, - drain-time-s  45,——parent-shutdown-time-s  60,——service-cluster  istio-proxy ——service-node 跨斗~ 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 % - % - % dT % t % fZ ,,, % l ,,,,, Envoy  % n ,,,,,,, % v  -l  warning ——component-log-level  misc:错误)   2020 - 07 - 23 t20:50:49.623931z ,,,, warning  envoy  config ,,, StreamAggregatedResources  gRPC  config  stream 关闭:,13日,   2020 - 07 - 23 t20:50:49.643268z ,,,, warning  envoy  config ,,, StreamAggregatedResources  gRPC  config  stream 关闭:,13日,   …

由特使pilot-agent管理生命周期

<强>对照用:在容器中,特使的启动命令

 Envoy 命令:,(-c 等/istio/代理/envoy-rev0.json ——restart-epoch  0, - drain-time-s  45,——parent-shutdown-time-s  60,——service-cluster  istio-ingressgateway ——service-node 路由器~ 172.17.0.22 ~ istio ingressgateway - 64 - f48849b8 pp9lf.istio系统~ istio-system.svc.cluster.local ——max-obj-name-len  189年,——local-address-ip-version  v4 ——log-format  Y % - % - % dT % t % fZ  % l  Envoy  % n  % v  -l  warning ——component-log-level  misc:错误)

特使需要很多配置项支撑

<李>

原始的配置文件/$ {GOPATH}/src/istio.io/istio/安装/质量/引导/gcp_envoy_bootstrap。李json

<李>

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

<李>

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

<李>

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

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