FAQ

運用に関する質問

IPv6での運用はできますか

できません。現在は IPv4 にのみ対応しています。

物理ノードだけ追加した場合はどうなりますか

次のようなコマンドを実行すると、仮想ノードを追加せず、物理ノードのみを追加します。

# dtsadmin -a 133.137.11.1:80 node3

または

# dtsadmin -a 133.137.11.1:80 node3/0

このように物理ノードのみを追加した場合は、このノードは L4 負荷分散対象になりません。

このノードに負荷分散されるかどうかはリクエストインスペクタの挙動によります。

L4 負荷分散にばらつきがあるように見えます

DTS の L4 負荷分散方法にはコンシステント・ハッシュ法を採用しています。 この方法では負荷分散対象のノードを追加・削除する度に各ノードにおける「リクエストが当選する確率」が確率的に変動します。 当選確率が全てのノードで均等になることは極めて稀です。 ただし、参加するノードを追加することで確率を細分化し、 結果的に当選確率を平準化することは可能です。 ノードの追加には物理ノードを新たに参加させてもいいですが、 既存の物理ノードに仮想ノードを割り当てるほうが費用がかからずかつ効果的です。

次のコマンドを実行し、現在の DTS クラスタに参加しているノード数を確認して下さい。

# dtsadmin -L
INTERnetAddress:Port RequestInspector Proxyport
  -> HeartbeatHostName [VirtualNodeID]
133.137.11.1:80 httpri 45273
  -> node1 1,2,3,4,5
  -> node2 6,7
  -> node3 8,9,10,11,12
  -> node4 13,14,15,16,17

上記の例の場合、物理ノードである node1, node3, node4 に それぞれ5つずつ、node2 に2つの仮想ノードが割り振られています。

この例のような状況で負荷分散の平準化を行うには、次のようなコマンドを実行して仮想ノードを追加して下さい。

# dtsadmin -a 133.137.11.1:80 node2/1-3

追加する仮想ノード ID は 1 から 63 までの整数を使用して下さい。 また、各物理ノードが使用している仮想ノード ID は重複しても問題ありません。

負荷分散の偏りを最小にするためには、各ノードに割り振る仮想ノードの数を 均等にし、かつなるべく数が多くなるようにしてください。

ただし、:ref:cautions にあるように一度に設定・閲覧できる仮想ノードの数には 限りがあるため、大量の物理ノードに多くの仮想ノード ID を割り振ることはできません。

なお、逆に各物理ノードに付加する仮想ノード ID の数を調整することで 負荷分散を重み付けすることが可能です。