ノードの状態
コンソールにログインし、インスタンスが接続可能な状態か確認してノードIDを記録します。初期化中のノードでは、未確認のホストフィンガープリントを保存しないでください。
正常な状態を確認して接続ノードの状態とホストフィンガープリントを確認してから、GUIまたはコマンドラインのセッションを開始します。初回ログイン、鍵設定、Xcodeビルド検証、リモート操作の最適化、トラブルシューティングを網羅します。
接続先、ユーザー名、一時認証情報は、注文後のノード確認が完了してから提供されます。利用可否と接続情報はコンソールの最新表示に従ってください。
パスワードを何度も試す前に、ノード、リージョン、認証情報、ローカルネットワークを確認しましょう。引き渡し、認証、ネットワークの問題をすばやく切り分けられます。
コンソールにログインし、インスタンスが接続可能な状態か確認してノードIDを記録します。初期化中のノードでは、未確認のホストフィンガープリントを保存しないでください。
正常な状態を確認して接続注文リージョンとインスタンスのリージョンが一致しているか確認します。現在はシンガポール、日本(東京)、韓国(ソウル)、香港、米国東部、米国西部の6リージョンに対応しています。
コンソールに表示されたユーザー名を大文字・小文字まで正確にコピーします。初回ログイン後はすぐに一時パスワードを変更し、SSHには鍵認証を優先して設定してください。
まずは安定した有線接続または信頼できるWi-Fiでテストします。企業プロキシ、ゲストネットワーク、公衆Wi-FiではSSHやVNCのポートが制限される場合があります。
使用するクライアントの外向き接続をローカルファイアウォールが許可しているか確認します。オフィスネットワーク経由の場合は、管理者に宛先アドレスとポートのポリシーを確認してもらってください。
ホストアドレス、ポート、ユーザー名、リージョンの4項目を比較します。以前のノードのクライアント設定を、新しく割り当てられた物理ノードにそのまま使わないでください。
接続情報はコンソールからのみ取得してください。秘密鍵、完全なパスワード、アクセストークン、未マスキングのビルドログを一般的な文書やコードリポジトリに保存しないでください。
VNCはXcodeのGUI、署名済みアーカイブの確認、デスクトップ操作が必要な作業に適しています。初回接続では、アドレス、認証、画質、終了設定を順番に行います。
VNCクライアントで新しい接続を作成し、ホストアドレスを一字ずつ正確にコピーします。コンソールにカスタムポートが表示された場合はその値を使い、推測したり以前のインスタンスの設定を流用したりしないでください。
コンソールに表示されたノードのユーザー名と一時認証情報を入力します。連続して失敗した場合はいったん中止し、ユーザー名をコピーし直してキーボードレイアウトを確認してください。繰り返しの誤入力によるセキュリティ制限を避けられます。
まずは自動調整解像度と中程度の色品質で安定した基準を作ります。大陸間接続では解像度、色深度、リフレッシュレートを下げ、安定後に一つずつ画質を上げてください。
通常のテキストをコピーし、ローカルとリモート間の双方向クリップボードが想定どおり動作するか確認します。パスワード、秘密鍵、アクセストークンでテストしないでください。
ウィンドウを閉じる前に、ビルドがフォアグラウンドで実行中でないか確認します。継続的なタスクはCI runner、launchd、またはターミナルセッション管理ツールに任せ、VNC切断でプロセスが終了しないようにしてください。
SSHはリポジトリ同期、依存関係のインストール、自動ビルド、ログ収集に適しています。初回接続では警告を急いで無視せず、ホストフィンガープリントを確認し、長期的な権限を最小化することが重要です。
ローカル記録を削除してそのまま接続を続けないでください。ノードの再インストール、再割り当て、アドレス変更の有無を確認し、コンソールのチケットで照合してください。
初回接続時は、端末に表示されたフィンガープリントとコンソールの情報を一つずつ比較します。ノードアドレスが同じでもフィンガープリントが変わった場合は、警告を無視せずセキュリティインシデントとして扱ってください。
メンバーごと、また自動化タスクごとに異なる公開鍵を使用します。秘密鍵は管理対象の端末または鍵管理システムに保管し、ノードの共有ディレクトリへアップロードしないでください。
秘密鍵ファイルは現在のユーザーだけが読み取れる権限に設定します。CIタスクにはビルドに必要なディレクトリとコマンドだけを許可し、管理者権限を標準の実行方法にしないでください。
初回ログイン後すぐに、専用の強力なパスワードを設定します。鍵認証が正常に動作することを確認してから、チームの方針に沿ってパスワード認証を制限してください。
ssh-keygen -t ed25519 -a 64 -f ~/.ssh/hexvm_node
chmod 600 ~/.ssh/hexvm_node
ssh-add ~/.ssh/hexvm_node
メンバー、CI runner、一時的な運用作業ごとに鍵を生成すると、個別に無効化できます。
ssh-keyscan -p "$NODE_PORT" "$NODE_HOST"
ssh -i ~/.ssh/hexvm_node \
-p "$NODE_PORT" "$NODE_USER@$NODE_HOST"
出力されたフィンガープリントを先に検証してから、ホスト情報を受け入れます。変数の値はコンソールからコピーし、実際の認証情報をスクリプトに記載しないでください。
接続後は、バージョン確認、テストビルド、アーカイブコマンドで環境を検証します。まず小規模なチェックを実行してから、完全なパイプラインに組み込みましょう。
macOS、Xcode、コマンドラインツールのバージョンを記録し、対話型ターミナルとCI runnerで同じツールチェーンが選択されていることを確認します。
まず単一のschemeまたはテスト対象を実行し、依存関係、署名、環境変数の問題を切り分けてから、ワークスペース全体へ拡張します。
アーカイブ成功後、成果物のパス、ファイル権限、ログのマスキングルールを確認してから、自動化パイプラインへコマンドを移行します。
以下のデータはリージョン選定の初期判断用であり、すべてのネットワークで同じ結果になるとは限りません。正式決定前に、実際のオフィスネットワークとCI出口から繰り返しテストしてください。
| クライアント測定地点 | シンガポール | 日本(東京) | 韓国(ソウル) | 香港 | 米国東部 | 米国西部 |
|---|---|---|---|---|---|---|
| 北京の固定回線 | 78 ms | 54 ms | 47 ms | 42 ms | 198 ms | 146 ms |
| 上海の固定回線 | 69 ms | 41 ms | 49 ms | 35 ms | 190 ms | 132 ms |
| 台北の固定回線 | 48 ms | 32 ms | 43 ms | 24 ms | 181 ms | 112 ms |
| マニラの固定回線 | 39 ms | 71 ms | 76 ms | 36 ms | 214 ms | 139 ms |
| ロサンゼルスの固定回線 | 177 ms | 104 ms | 119 ms | 151 ms | 68 ms | 21 ms |
| ニューヨークの固定回線 | 231 ms | 168 ms | 181 ms | 205 ms | 19 ms | 73 ms |
キーボード入力、ウィンドウ切り替え、通常のXcode操作はおおむね快適ですが、パケットロスとジッターも確認してください。
画質を下げればGUI操作も可能です。コマンドラインビルド、ログ確認、CIタスクへの影響は通常大きくありません。
大陸間接続では、継続作業をSSH、CI runner、バックグラウンドタスクに任せ、VNCは必要な確認に限定することをおすすめします。
実際の遅延は、利用中の通信事業者、国際回線、ルート変更、オフィスプロキシ、Wi-Fi品質、同時間帯のトラフィックに左右されます。リージョン一覧の構成は通常利用できますが、実際の利用可否はコンソールの最新表示に従ってください。
対話操作、継続タスク、大容量ファイル転送を分けて処理すると、ネットワークの揺らぎによるビルドへの影響を抑えられます。
まずは単一画面 1920 × 1080 で安定した基準を作ります。高遅延の経路では、いきなりデュアルディスプレイ、高倍率表示、頻繁な動的調整を有効にしないでください。
コード編集、ビルドログ、設定作業に最高の色精度は必要ありません。回線が不安定な場合は、まず色深度と画質を下げて入力遅延を確認します。
リモート開発の中心はコード、ターミナル、ビルド状態です。使用していない音声、カメラのリダイレクト、アニメーションを無効にすると、帯域幅を削減できます。
長時間のビルド、テスト、依存関係のダウンロードは、独立したターミナルセッション、CI runner、またはシステムタスクで実行します。VNCやSSHが切断されてもタスクが終了しないようにしてください。
リポジトリ、キャッシュ、ビルド成果物には、差分転送と検証に対応した方法を使います。GUIのクリップボードで大容量ファイルを移動したり、機密成果物を公開場所に置いたりしないでください。
依存関係キャッシュとDerivedDataは、プロジェクト、ブランチ、ツールチェーンのバージョンごとに分離します。ヒット率が下がった場合は、まずキャッシュキーを分析し、ディスク使用量を無制限に増やさないでください。
一度に変更する変数は1つにし、ノードID、リージョン、発生時刻、完全なエラーテキストを記録します。これにより、ローカル、ネットワーク、認証、ノード側のどこに問題があるか判断できます。
秘密鍵、完全なパスワード、アクセストークン、機密性の高い署名情報を含むログは送信しないでください。さらにサポートが必要な場合は、コンソールからチケットを送信するか、 support@hexvm.comまでメールしてください。
1件の注文につき、仮想マシンではない専用のMac mini物理ノードを1台提供します。シンガポール、日本(東京)、韓国(ソウル)、香港、米国東部、米国西部の6リージョンで365日稼働します。
料金はすべて米ドル(USD)で決済されます。ノードとリージョンの実際の利用可否は、コンソールの最新表示に従います。