15.3. Downward API を使用した Huge Page リソースの使用
Downward API を使用して、コンテナーで使用する Huge Page リソースに関する情報を挿入できます。
リソースの割り当ては、環境変数、ボリュームプラグイン、またはその両方として挿入できます。コンテナーで開発および実行するアプリケーションは、指定されたボリューム内の環境変数またはファイルを読み取ることで、利用可能なリソースを判別できます。
手順
以下の例のような
hugepages-volume-pod.yaml
ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow hugepages-volume-pod.yaml
ファイルから Pod を作成します。oc create -f hugepages-volume-pod.yaml
$ oc create -f hugepages-volume-pod.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
REQUESTS_HUGEPAGES_1GI 環境
変数の値を確認します。oc exec -it $(oc get pods -l app=hugepages-example -o jsonpath='{.items[0].metadata.name}') \ -- env | grep REQUESTS_HUGEPAGES_1GI
$ oc exec -it $(oc get pods -l app=hugepages-example -o jsonpath='{.items[0].metadata.name}') \ -- env | grep REQUESTS_HUGEPAGES_1GI
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
REQUESTS_HUGEPAGES_1GI=2147483648
REQUESTS_HUGEPAGES_1GI=2147483648
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/podinfo/hugepages_1G_request
ファイルの値を確認します。oc exec -it $(oc get pods -l app=hugepages-example -o jsonpath='{.items[0].metadata.name}') \ -- cat /etc/podinfo/hugepages_1G_request
$ oc exec -it $(oc get pods -l app=hugepages-example -o jsonpath='{.items[0].metadata.name}') \ -- cat /etc/podinfo/hugepages_1G_request
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
2
2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow