多地域 vpshalo 運用者が CI で SSH を繰り返すと、ControlMaster なしでは毎回握手が重なり越境遅延に見えます。本稿は Halo 式グローバル入口で制御と成果物回収を分桶し、GeoDNS 粘性と p95 検収表をまとめます。ssh_config・対照表・六歩・FAQ 付きです。

関連:GeoDNS 入口マトリクスMSS/BBR 行列Tailscale MagicDNSECS と GeoDNSトップヘルプ料金購入

1 並列 scp が毎回握手を重ねる。2 GeoDNS 変更後も ControlPersist が旧 PoP に粘る。3 握手と成果物を同一設定で測りレポートが歪む。

① ControlMaster / ControlPersist パラメータ

対話と CI 制御は halo-ctl-* で多重化し、大容量転送は halo-art-*ControlMaster no とします。master は KEX と認証を一度に抑え、子セッションの体感 越境遅延を下げます。

# ~/.ssh/config — 制御チャネル(vpshalo 多地域)
Match host halo-ctl-*
  ControlMaster auto
  ControlPath ~/.ssh/cm-%r@%h:%p
  ControlPersist 12m
  ServerAliveInterval 30
  ServerAliveCountMax 3
  IdentitiesOnly yes
  Compression no

# 成果物回収(スループット優先・多重化しない)
Match host halo-art-*
  ControlMaster no
  Compression no
パラメータ推奨遅延への効果注意
ControlMasterauto子接続の握手を大幅短縮PoP 切替後に古いソケット
ControlPersist12m(運用)/ 30m(CI)アイドル後の再握手回避DNS TTL より長いと錯区
ControlPathPoP ごとに一意掃除しやすいNFS ホームは競合

② JumpHost 連鎖と Halo ルーティング

PC → 踏み台 → ビルド機。連鎖ごとに master を一本とし ControlPath を増やしません。SSH CA 踏み台稿 と同型です。

Host halo-ctl-bastion-jp
  HostName bastion.jp.vpshalo.example
  ControlMaster auto
  ControlPath ~/.ssh/cm-bastion-%r@%h:%p
  ControlPersist 10m

Host halo-ctl-tky-mac
  HostName 10.64.0.12
  ProxyJump halo-ctl-bastion-jp
  ControlMaster auto
  ControlPath ~/.ssh/cm-tky-%r@%h:%p
経路向く場面ControlMaster成果物 p95
PoP 直結単一リージョン Mac推奨512MB 安定
ProxyJump 二段統一踏み台監査第一跳のみ masterホップ分 RTT を加算
GeoDNS 最近傍ローテビルドPoP 別 ControlPathECS 稿 と併読
Tailscale固定 MagicDNStailnet 内で再利用Tailscale 稿

③ 粘性与健康チェック

DNS 粘性は GeoDNS、SSH 粘性ControlPersist と PoP 別 ControlPath です。重み変更前は ssh -O exit を実行し、TTL と persist を変更票に記載します。

  • 1 ssh -O check を五分窓で地域要約。
  • 2 踏み台 MOTD に pop_id を表示。
  • 3 再送二パーセント超は MSS/BBR 稿 を先に。

④ 成果物回収 p95 検収手順

日韓港新・米西岸で 512MB を三十回。多重化なし後に master 暖機で比較。halo-ctl-*halo-art-* で桶を分けます。

# 握手 p95 の粗算(秒)
for i in $(seq 1 30); do
  (time ssh -o BatchMode=yes halo-ctl-jp true) 2>&1 | awk '/real/{print $2}'
done | sort -n | awk 'NR==int(NR*0.95){print "p95_s="$1}'
  • 1 入口ホスト名と GeoDNS 重みを固定し、dig 出力をアーカイブ。
  • 2 ssh_config を配布し ssh -MNf halo-ctl-tokyo で master を開く。
  • 3 多重化なしで三十 pull、握手・完了のベースライン p95 を記録。
  • 4 暖機後に再実行し子接続 p95 を比較。
  • 5 重み切替後 ssh -O exit で再検証し 購入 で PoP 選定。
引用三行:PoP ごとに ControlPath を一本。persist は DNS TTL 以下。握手と成果物は別エイリアス・別ダッシュボード。

⑤ FAQ

古いソケットで connection refused? ~/.ssh/cm-* を削除しディレクトリを 700 に。異常終了後は ssh -O exit を実行してください。

リージョン変更後に pull が遅い? 新 PoP で master を作り直し、地域間で ControlPath を共有しません。GeoDNS 重みと TTL を再確認します。

Tailscale 併用時は? MagicDNS ホストでも ControlMaster は有効です。制御は mesh、成果物 URL は GeoDNS マトリクス と揃えてください。

注:しきい値は staging 検収草案であり SLA ではありません。ヘルプ に SSH/VNC 手順があります。

まとめ:制御多重化・JumpHost 一本化・粘性の明示的解除・成果物 p95 の分桶で、Halo ルーティング上の SSH を再現可能にします。

Halo グローバル入口 · SSH 多重化

GeoDNS / BBR 行列と照合し、vpshalo 地域ノードを選ぶ

ControlMaster 検収後に Mac mini M4 を同じ遅延圏で借りてください。料金ヘルプはログイン不要で閲覧できます。

東京 · ソウル · 香港 · シンガポール · 米西海岸

地域ノードを選ぶ GeoDNS マトリクス MSS/BBR 行列 Tailscale 稿 トップへ