Skip to content

Instantly share code, notes, and snippets.

@acevif
Last active June 21, 2023 13:46
Show Gist options
  • Save acevif/c81f6bde6d8260d01ca00780f5839f98 to your computer and use it in GitHub Desktop.
Save acevif/c81f6bde6d8260d01ca00780f5839f98 to your computer and use it in GitHub Desktop.
  • リソース

    • Pod
      • コンテナを複数入れることもできる。
      • 共有ストレージやネットワーク資源も含む。
    • ReplicaSet
      • 指定した数のPodを維持する
      • 旧称: Replication Controller
      • 落ちたらPodを起動し直す
    • Deployment
      • ReplicaSetを使う
      • バージョンアップの場合
    • Service
      • Podに対するエンドポイントの割り当て
      • Podへの負荷分散
        • ClusterIP
          • IPを複数ノードで共有
          • 内部でしか使えない
        • NodePort
          • 外から繋がる
        • LoadBalancer
          • クラウドで使う
          • NodePortを使う
  • Rancher

    • k8s を管理する
    • webインターフェース
  • Helm

    • k8sのpackage manager
  • LinuxKit

    • 謎技術で作られたとても軽いDocker向けLinux 1
  • VirtioFS 高速なファイルシステム。Docker Desktop for MacのディスクIOがかなり速くなる。23456
    しかし、named volumeには及ばない。7


Footnotes

  1. LinuxKitは、既存のLinuxから余計なものを排除してコンテナに最適化したのではなく、コンテナプラットフォームのためにゼロからベアメタルカーネルを作り、最小のシステムライブラリを作り、コンテナランタイムを載せたものであり、これをコアとしてそれ以外のものはすべてコンテナによるオプションにした https://www.publickey1.jp/blog/17/dockerlinuxkitlinux_subsystemdockercon_2017.html

  2. Clientで約2.67倍、Serverで約2.61倍の速さになっています。
    https://nextat.co.jp/staff/archives/271

  3. M1 MacではVirtioFSがgRPC-FUSEの3.4倍速く
    https://zenn.dev/takc923/articles/1eb61e531e3704

  4. Dockerによると、新バージョンでは、ファイルの同期にかかる時間が最大98%短縮される場合がある
    https://www.infoq.com/jp/news/2022/03/docker-desktop-macos-virtiofs/

  5. 平均157.36sから112.24sに改善したとの由 https://qiita.com/A-Kira/items/858d03aa87b49020b280#%E7%B5%90%E6%9E%9C

  6. bind mount の性能差で言うと 3 倍近く早くなっていると言ってよさそうです
    https://blog.jp.square-enix.com/iteng-blog/posts/00013-devcontainer-disk-slow/

  7. dd で計測してみます。(略)比較のために VirtioFS のみでなく named volume も計測しています。 16.3 MB/s 対 543 MB/s (33 倍) という結果に(略) fio でも計測しました。(略) 15.0MB/s 対 86.3MB/s (5.7 倍)
    https://blog.jp.square-enix.com/iteng-blog/posts/00013-devcontainer-disk-slow/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment