私は現在学んkubelet
でいます.criはさまざまなコンテナランタイムを呼び出すためにuniformly
使用されています.リモートを介してdocker以外のランタイムを呼び出す方法を理解するためにrktを例として使用したいと思います.
を介した kubelet と cri shim サーバー間の通信gRPC
。
Pod の作成を例にとると、kubeletcri shim client
は最終的に次の関数を呼び出します。
// staging/scr/k8s.io/cri-api/pkg/apis/runtime/v1/api.pb.go line 8571
func (c *runtimeServiceClient) StopContainer(ctx context.Context, in *StopContainerRequest, opts ...grpc.CallOption) (*StopContainerResponse, error) {
out := new(StopContainerResponse)
err := c.cc.Invoke(ctx, "/runtime.v1.RuntimeService/CreateContainer", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
しかし、 rkt の grpc に対応する rpc 応答メソッドが見つかりませんでした
間違った場所を探しているためですか、それとも何か他のことですか?
これについて何か助けていただければ幸いです。