2.8. 実験的な機能
2.8.1. 概要
今後の機能および実験的機能に早期にアクセスしたい場合は、環境変数 MINISHIFT_ENABLE_EXPERIMENTAL
を設定できます。これにより、追加の機能フラグが利用できるようになります。
$ export MINISHIFT_ENABLE_EXPERIMENTAL=y
実験的機能は公式にサポートされておらず、予期せぬ挙動が破損する可能性があります。これらの機能についてご意見やご連絡ください。Minishift コミュニティー に連絡してください。
2.8.2. 実験的な oc cluster up
フラグの有効化
デフォルトでは、CDK は CDK CLI のすべての oc cluster up
フラグを公開しません。
MINISHIFT_ENABLE_EXPERIMENTAL
環境変数を設定して、minishift start
コマンドで以下のオプションを有効にします。
extra-clusterup-flags
-
CDK CLI で直接公開されない
oc cluster up
にフラグを直接渡すことを有効にします。
たとえば、以下のコマンドは OpenShift の サービスカタログ をプロビジョニングします。
$ MINISHIFT_ENABLE_EXPERIMENTAL=y minishift start --extra-clusterup-flags "--enable='*,service-catalog'"
サービスカタログを有効にするには、minishift openshift component add
コマンドを使用します。
2.8.3. ローカルプロキシーサーバー
セキュリティー証明書が組織で使用されるものの、インスタンスと簡単に共有できない状況では、CDK インスタンスが外部リソースにアクセスするために使用できるホストでローカルプロキシーサーバーを実行できます。
プロキシーサーバーの有効化は、以下のコマンドを使用して行います。
$ minishift config set local-proxy true
これにより、CDK インスタンスに自動的に割り当てられるホストでプロキシーサーバーを起動します。
企業またはアップストリームのプロキシーが分かっている場合は、以下の設定オプションで指定できます。
$ minishift config set local-proxy-upstream http(s)://[username:password@]host:port
このオプションを使用すると、すべてのトラフィックが CDK 固有の証明書で再暗号化されます。このため、このプロキシーは、CDK の開発および使用のみに使用する必要があります。
ローカルホストへの外部トラフィックを許可するには、ホストのファイアウォールでポート 3128 /tcp
を有効にする必要がある場合があります。
2.8.4. ローカル DNS サーバー
CDK は、オフラインの使用のために DNS サーバーを提供し、テスト中に DNS レコードを上書きする可能性があります。これにより、インターネットなしで OpenShift ルートにアクセスできます。
DNS サーバーはプロファイルに固有のものです。
DNS サーバーの起動は、以下のように実行できます。
$ minishift dns start
DNS サーバーを起動したら、このネームサーバーを使用するようにデバイス設定を設定する必要があります。start コマンドには、オフラインでの使用を入力したときに使用できる一時的なオプションが表示されます。
現在の実装では、サーバーを起動し、ホスト設定に必要な変更を手動で変更する必要があります。DNS 設定は永続的ではなく、デバイスのネットワーク状態が変更するとリセットされる可能性があります。
DNS サーバーの停止は、以下のように実行できます。
$ minishift dns stop
DNS サーバーの状態を取得するには、次のコマンドを実行します。
$ minishift dns status
2.8.4.1. macOS のローカル DNS セットアップ
最新バージョンの macOS はオフラインモードで DNS クエリーを送信せず、CDK からローカル DNS サーバーを使用するプロセスは、他のオペレーティングシステムよりも多く関与します。
2.8.4.1.1. tap デバイスの有効化
/dev に tap
デバイスが存在するかどうかを確認します。
$ ls /dev | grep tap
tap
デバイスがない場合は、tuntap パッケージをインストールします。
$ brew install tuntap
2.8.4.1.2. tap デバイスを使用したネットワークサービスの作成
root で /Library/Preferences/SystemConfiguration/preferences.plist ファイルを開き、<key>NetworkServices</key>
要素の下に以下の XML を追加します。
<key>D16F22CE-6DDE-4E63-837C-E16538EA5CCB</key> 1 <dict> <key>DNS</key> <dict /> <key>IPv4</key> <dict> <key>Addresses</key> <array> <string>10.10.90.1</string> 2 </array> <key>ConfigMethod</key> <string>Manual</string> <key>SubnetMasks</key> <array> <string>255.255.0.0</string> </array> </dict> <key>IPv6</key> <dict> <key>ConfigMethod</key> <string>Automatic</string> </dict> <key>Interface</key> <dict> <key>DeviceName</key> <string>tap0</string> 3 <key>Hardware</key> <string>Ethernet</string> <key>Type</key> <string>Ethernet</string> <key>UserDefinedName</key> <string>MiniTap</string> 4 </dict> <key>Proxies</key> <dict> <key>ExceptionsList</key> <array> <string>*.local</string> <string>169.254/16</string> </array> <key>FTPPassive</key> <integer>1</integer> </dict> <key>SMB</key> <dict /> <key>UserDefinedName</key> <string>MiniTap</string> 5 </dict>
2.8.4.1.3. ネットワークサービスを ServiceOrder アレイに追加
/Library/Preferences/SystemConfiguration/preferences.plist ファイルで <key>ServiceOrder</key>
要素を見つけます。root で、MiniTap ネットワークサービスの UUID をこのアレイに追加します。
<key>ServiceOrder</key>
<array>
<string>06BFF3C7-13DA-420F-AE9C-B036401184D7</string>
<string>58231F56-CA25-4D41-930F-46D83CA07BFE</string>
<string>304203B0-AC87-459F-9761-C2799EEBB2E3</string>
<string>8655D244-C6E7-4CC0-BF06-BB18F9C3BB85</string>
<string>3C26FB9D-D918-4B79-9C7B-ADECD8EFE00F</string>
<string>D16F22CE-6DDE-4E63-837C-E16538EA5CCB</string> 1
</array>
- 1
- MiniTap ネットワークサービスの UUID です。
2.8.4.1.4. ネットワークサービスを Service ディクショナリーに追加
/Library/Preferences/SystemConfiguration/preferences.plist ファイルで <key>Service</key>
要素を見つけます。root で以下の XML をそのディクショナリーに追加します。
<key>Service</key> <dict> <key>06BFF3C7-13DA-420F-AE9C-B036401184D7</key> <dict> <key>__LINK__</key> <string>/NetworkServices/06BFF3C7-13DA-420F-AE9C-B036401184D7</string> </dict> <key>304203B0-AC87-459F-9761-C2799EEBB2E3</key> <dict> <key>__LINK__</key> <string>/NetworkServices/304203B0-AC87-459F-9761-C2799EEBB2E3</string> </dict> <key>3C26FB9D-D918-4B79-9C7B-ADECD8EFE00F</key> <dict> <key>__LINK__</key> <string>/NetworkServices/3C26FB9D-D918-4B79-9C7B-ADECD8EFE00F</string> </dict> <key>58231F56-CA25-4D41-930F-46D83CA07BFE</key> <dict> <key>__LINK__</key> <string>/NetworkServices/58231F56-CA25-4D41-930F-46D83CA07BFE</string> </dict> <key>8655D244-C6E7-4CC0-BF06-BB18F9C3BB85</key> <dict> <key>__LINK__</key> <string>/NetworkServices/8655D244-C6E7-4CC0-BF06-BB18F9C3BB85</string> </dict> <key>D16F22CE-6DDE-4E63-837C-E16538EA5CCB</key> 1 <dict> <key>__LINK__</key> <string>/NetworkServices/D16F22CE-6DDE-4E63-837C-E16538EA5CCB</string>2 </dict> </dict>
macOS を再起動すると、ネットワーク設定 GUI に MiniTap サービスが表示されるはずです。このサービスは切断されます。有効にするには、以下のコマンドを実行します。
$ exec 4<>/dev/tap0 1 $ ifconfig tap0 10.10.90.1 255.255.0.0 2 3 $ ifconfig tap0 up 4
2.8.4.1.5. リゾルバー設定の追加
以下の内容で /etc/resolver/nip.io
ファイルを作成します。
nameserver <ip_address_of_the_minishfit_vm> search_order 1
2.8.5. CDK システムトレイ
macOS および Windows で CDK のユーザーが GUI からプロファイルを開始および停止するなどの単純なタスクを実行するのに役立つため、実験的なシステムトレイを含むように、これらのプラットフォームのバイナリーがコンパイルされています。
デフォルトでは、システムトレイは minishift start
の実行時に自動的に起動します。この動作を無効にするには、次のコマンドを使用します。
$ minishift config set auto-start-tray false
システムトレイを起動するには、次のコマンドを実行します。
$ minishift service start systemtray
2.8.6. タイムゾーンの設定
デフォルトとは異なるタイムゾーンを設定する場合は、以下のコマンドを使用します。
$ minishift timezone --set <Valid_Timezone>
利用可能なタイムゾーンを表示するには、以下のコマンドを使用します。
$ minishift timezone --list
CDK インスタンスの現在のタイムゾーンを確認するには、次のコマンドを実行します。
$ minishift timezone