2

Kops 1.4.4 を使用して、AWS で Kubernetes クラスターを起動しています。Elasticsearch ポッドでは、カーネル パラメーターvm.max_map_countを少なくとも 262144 に設定する必要があります。Kubernetes 1.5.1 には systctl 機能がありますが、Docker >= 1.12 が必要です。Kops は現在、より古いバージョンの Docker でノードをビルドしているため、カーネル パラメータの設定を自動化する方法を見つけようとして立ち往生しています。を使用して Dockerfile に設定しようとすると、RUN sysctl -w vm.max_map_count=262144「sysctl: setting key "vm.max_map_count": Read-only file system」というエラー メッセージが表示されます。

これに対する回避策はありますか?

4

1 に答える 1

1

どうやら、これはKubernetes init コンテナーを使用して実行できるようです。ここに投稿された Kubernetes デプロイ構成に従って、次のアノテーションをデプロイに適用することでこれを行うことができます。仕様 > テンプレート > メタデータ > 注釈の下に次を追加します。

pod.beta.kubernetes.io/init-containers: '[
  {
  "name": "sysctl",
    "image": "busybox",
    "command": ["sysctl", "-w", "vm.max_map_count=262144"],
    "securityContext": {
      "privileged": true
    }
  }
]'
于 2017-01-05T18:37:20.060 に答える