2017-01-05 5 views
2

私はKops 1.4.4を使用してAWS上でKubernetesクラスタを起動しています。 My Elasticsearchポッドでは、カーネルパラメータvm.max_map_countを少なくとも262144に設定する必要があります。Kubernetes 1.5.1にはsystctl機能がありますが、Docker> = 1.12が必要です。 Kopsは現在、Dockerのバージョンを小さくしてノードを構築しているので、カーネルパラメータの設定を自動化する方法を理解しようとしています。 RUN sysctl -w vm.max_map_count=262144を使用してDockerファイルに設定しようとすると、 'sysctl:setting key "vm.max_map_count":読み取り専用ファイルシステム'というエラーメッセージが表示されます。Kops + Dockerを使ってKubernetesポッドにsysctlキーを設定する1.11

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

+0

kopsを使用する前に、kubeup.sh/kube-down.shを使用してAWSクラスターを起動しましたか?私はkubeup.shからkopsに移行しようとしているので、あなたの意見を聞くことに興味があるので、私は質問しています –

+1

私はしました。私の意見ではKopsは優れており、移行はかなり簡単でした。 – kellanburket

答えて

1

これは明らかにKubernetes init containersを使用して実行できます。 Kubernetesのデプロイメントコンフィグレーションの後にhereを配置すると、デプロイメントに次のアノテーションを適用することでこれを行うことができます。スペック>テンプレート>メタデータ>アノテーション追加:

pod.beta.kubernetes.io/init-containers: '[ 
    { 
    "name": "sysctl", 
    "image": "busybox", 
    "command": ["sysctl", "-w", "vm.max_map_count=262144"], 
    "securityContext": { 
     "privileged": true 
    } 
    } 
]' 
関連する問題