- telepresence
- 単一のサービスをリモートの k8s クラスタに接続しながらローカル開発
- ローカルの開発マシンを k8s クラスタの一部のように動かせる
- image build -> push -> pod の image 更新の手間がなくなる
- ローカルからリモートの他のマイクロサービスにアクセスできたり
- k8s のサービスの一部として機能するのでアクセスした際のネットワーク経路がほぼ同じになる
- port 80 を使っている
- Pod の default container が置き換わる
- 置き換わったコンテナで 80 を使っているので 80 以外を使うしかない
- 1 Pod に複数コンテナ
- containerPort を使ってローカルに流したりできない
- optionde target container を指定する
- docker を使う場合
- docker のマウントが遅い
- docker-sync を使う
- cached option を使う
- docker のメモリ割り当てを増やす
- サービスディスカバリ
- サービスセグメンテーション
- サービスとサービスの間のセキュリティをセキュアにする
- サービスの configration
- KVS, Transaction, Watch
- サービス間のアクセスを制御できる
- side car proxy で実現される
- envoy にもできる
- Native app integration
- アプリケーションにプロキシを組み込む
- side car のオーバヘッド対策
- アリババ
- P2P ベースの image delivery
- for client side
- DeamonSet で containerd にデータを送る
- ドキュメントが中国語でハマる
- Uber
- P2P base image registory
- agent
- docker registory interface
- helm で簡単に動かせる
- container に限らずパッケージの P2P のディストリビューションツール
- 開発中
beiran docker image pull golang
みたいに pull する- ピアがある場合はそっから、ない場合は docker registory から pull する
- SPOF を解決
- docker の tag が mutable なので同じタグでも image が違う場合がある
- となりのピアから取得すれば同じ image になる
- image が消えた時も pull できる