1台のマシンを1テナントで専有
注文ごとに物理マシン1台を専有し、共有ホスト上に仮想マシンを作成する方式ではありません。他のテナントがこのマシンのCPU、GPU、ユニファイドメモリを使用したり、お客様のmacOS環境を共有したりすることはありません。
Apple Silicon搭載の物理ノードは1台につき1テナント専用です。仮想マシンではなく、CPU、GPU、ユニファイドメモリを他のテナントと共有しません。
分離、アクセス、データの取り扱いを確認してから、開発やビルドの作業を移行できます。
注文済みのノードに接続できませんか?コンソールにログインして、注文番号と発生時刻を添えてチケットをお送りください。
稼働率の目標と過去の観測結果は別のものです。ここではサービス目標と算出方法を示し、目標値を実測結果として扱いません。
月間稼働率の目標
99.9%
すべてのノードを年間365日、継続して稼働させます。月間稼働率が99.9%を下回った場合、停止時間に応じて契約期間を延長します。
青緑色の目盛りはサービス目標を示すもので、日ごとの監視結果ではありません。
ノードへの接続可否、障害の発生・復旧時刻、関連する注文を確認します。日ごとの監視記録を検証可能な形で公開していないため、全日正常を示す表示や、過去90日間すべて正常との主張は掲載していません。
月間稼働率は「当月のサービス提供時間から確認済みの停止時間を差し引き、当月のサービス提供時間で割る」方法で算出します。申請時は発生時刻とタイムゾーンをご記入ください。障害の原因を推測する必要はありません。「接続できない」とだけ記すより、接続エラーの原文を添えると確認しやすくなります。
お客様の操作による中断や不可抗力の扱いは、サービス利用規約に定めています。SSHのタイムアウトが1回発生しただけでは、ノード全体の停止を証明できません。接続方法、ネットワーク経路、ノードの記録を照合して判断します。詳細はサービス利用規約をご確認ください。
専有環境により、テナント間のリソース競合を防げます。一方、マシン内の権限管理、チームでの利用、タスクの同時実行はお客様自身で管理する必要があります。
注文ごとに物理マシン1台を専有し、共有ホスト上に仮想マシンを作成する方式ではありません。他のテナントがこのマシンのCPU、GPU、ユニファイドメモリを使用したり、お客様のmacOS環境を共有したりすることはありません。
macOSのGUIとコマンドラインを利用できます。Xcode、シミュレータ、Metalもネイティブ環境で動作します。お客様が起動した複数のビルド、テスト、推論タスクは、同じマシンのリソースを共有します。
チームでノードを交代利用する場合は、メンバーごとにシステムアカウント、SSH公開鍵、プロジェクトディレクトリの権限を管理してください。専有環境だからといって、全員に管理者権限を付与したり、秘密鍵を使い回したりする必要はありません。
性能を評価する際は、プロジェクトの規模、Xcodeのバージョン、同時実行タスク数、キャッシュの状態も記録してください。専有環境では他のテナントとの競合はありませんが、どのようなワークロードでもビルド時間が一定になるわけではありません。
契約終了後、ディスクを消去してOSを再インストールしてから、次のテナントに提供します。ノードは長期保管用のアーカイブではありません。バックアップはレンタル中のマシンとは別に保管してください。
未コミットのコード、ビルド成果物、必要な設定や鍵の情報を、ご自身で管理するストレージにバックアップしてください。バックアップを実際に開けること、プロジェクトを再取得できることも確認しましょう。コピーコマンドが終了したことだけでは確認になりません。
不要になったrunnerの登録を解除し、デプロイトークンやリポジトリへのアクセス権を取り消してください。ディスク消去で対処できるのはマシン内のデータです。外部システムの認証情報は別途取り消す必要があります。
契約終了後はディスクを消去し、OSを再インストールしてから次のテナントに提供します。契約終了後のマシンを、プロジェクトファイルを復元できるバックアップ先として扱わないでください。
1つ目はコードと大容量ファイルです。Gitのコミットと大容量ファイルのオブジェクトが同期済みか確認してください。2つ目は作業成果物です。アーカイブ、テストレポート、ログ、未アップロードのビルド成果物を保存します。3つ目は再構築に必要な環境情報です。依存関係のロックファイル、ツールのバージョン、CI設定を保管してください。再生成できるキャッシュをすべて残す必要はありませんが、再作成できないデータは優先してエクスポートしてください。
テナントのノード内にあるファイルやプロジェクトデータを読み取ることはありません。アカウント、注文、決済取引の識別情報はサービス管理記録として扱い、ノード上のプロジェクトファイルとは別の保存方針を適用します。収集目的やお客様の権利については、プライバシーに関する説明をご覧ください。
ログインにはSSH鍵を使用します。接続情報や注文に関する操作記録は、ログイン後のコンソールで確認でき、必要に応じて認証情報をリセットできます。
ご自身のクライアントで鍵を生成し、秘密鍵は手元に保管して公開鍵のみ登録してください。初回接続時はノード情報とホスト鍵のフィンガープリントを確認します。フィンガープリントが変わった場合は、OSの再インストールが行われたか確認し、警告をそのまま無視しないでください。
ローカルの秘密鍵にはパスフレーズを設定することをおすすめします。秘密鍵をリポジトリ、ビルドログ、チケットに記載したり、複数のメンバーで使い回したりしないでください。
メンバーがプロジェクトを離れたら、そのメンバーの公開鍵を削除し、不要になったアカウント権限を取り消してください。CIには専用のサービスアカウントとトークンを使用し、リポジトリへのアクセス、ビルド、デプロイの権限を分けて管理しましょう。
必要なポートだけを開放してください。認証情報をリセットしたら、古いクライアント、自動化スクリプト、runnerが以前の設定を使っていないか確認しましょう。接続失敗が繰り返されると、本当の障害を見落とすおそれがあります。
チケットには公開鍵のフィンガープリント、クライアントのバージョン、エラー文、秘密情報を除いた設定の一部を記載できます。パスワード、SSH秘密鍵、完全なアクセストークン、秘密情報を含む環境変数は送信しないでください。一時的に権限の確認が必要な場合は、対象範囲と取り消し方法を事前にチケットで取り決めてください。
すべての注文は米ドル(USD)で決済され、対応する支払い方法は以下の2種類です。実際に利用できる決済手段は、バックエンドの応答に基づきます。
カード決済はStripeが処理し、当社ではカード番号を保存しません。注文の照合には関連する取引識別情報と決済状況を使用します。メールやチケットでカード番号全桁やカードのセキュリティコードを送る必要はありません。
決済に失敗した場合や表示状況が一致しない場合は、注文番号、発生時刻、金額、画面に表示されたエラーをお知らせください。スクリーンショットを送る前に個人情報を隠し、状況確認のために繰り返し決済しないでください。
ブロックチェーン上の記録をもとに決済を照合します。支払う前に、ネットワーク、送金先アドレス、注文金額が決済ページの表示と一致していることを確認してください。照合には取引ハッシュを使用します。ウォレットの秘密鍵やシードフレーズを送る必要はありません。
送金後も注文状況が更新されない場合は、取引ハッシュと注文番号を控えてから、チケットをお送りください。着金までの時間を保証するものではなく、スクリーンショットを取引記録の代わりにすることもできません。
ノード上のファイル、アカウント記録、決済取引の識別情報は、それぞれ別のデータです。決済について問い合わせる際は、注文に関係する情報のみを添えてください。プロジェクト一式や署名用データを併せてアップロードしないでください。
セキュリティに関する報告は support@xcodenode.comまでお送りください。注文済みノードの障害は、コンソールにログインしてチケットを送信することもできます。
該当するページ、注文、ノードと、確認した事象を記載してください。証拠がない場合は、推測をデータ漏えいが発生した事実として記載しないでください。
実際に行った操作の順に、入力内容、期待した結果、実際の結果を記録してください。ご自身にアクセス権のある範囲だけで確認し、他のテナントのデータを読み取らないでください。
時刻とタイムゾーンを明記し、秘密情報を除いたエラー文やスクリーンショットを添えてください。トークン、パスワード、秘密鍵、個人情報を削除し、問題の確認に必要な前後関係は残してください。
追加情報はメールまたはチケットでお送りいただき、同じ記録上で進捗をご確認ください。ノードに接続できないなど、利用に影響する障害を優先して調査します。具体的な進捗は返信をご確認ください。
ノードに直接アクセスできる秘密情報を報告に添付する必要はありません。認証情報の漏えいが疑われる場合は、まず該当するトークンを無効化し、不審な公開鍵を削除するか認証情報をリセットしてください。その後、必要な記録を保管してご報告ください。
専有物理ノードを選び、鍵、バックアップ、チームの権限をあらかじめ整えましょう。構成、期間別料金、追加オプションはプランページでご確認いただけます。