Google Cloud Blockchain Node Engineの代替: Alchemyへの移行方法
執筆者 Uttam Singh

Google Cloudは、Blockchain Node Engineとその共有サービスであるBlockchain RPCを2026年12月15日に終了する。Alchemyへの切り替えはURLの変更であり、書き直しではない。エンドポイントとAPIキーを置き換えれば、同じJSON-RPC呼び出しが同じデータを返す。
切り替えによって、自分たちが責任を負う範囲も変わる。Blockchain Node Engineが提供していたのは3つのチェーンのノードで、課金は時間単位だった。私たちが提供するのは100以上のチェーンで使える1つのAPIキーであり、プロビジョニングやアップグレードが必要なノードはない。このガイドでは、エンドポイントの取得方法、検索と置換をコーディングエージェントに任せる方法、Google Cloudの構成の各部分が何に置き換わるか、新しいエンドポイントが同一のデータを返すことを証明する方法、そしてコストの比較を取り上げる。
12月15日に何が変わるか
GoogleのBlockchain Node Engine終了の告知によると、2026年12月15日に、Googleは残っているすべてのBlockchain Node EngineノードとBlockchain RPCエンドポイントを削除し、それらへのリクエストはすべて失敗するようになる。それまでの間も、新しいノードやエンドポイントは作成できない。ノードの同期が遅れたり、トラフィックが増えたりした場合、対処は別のプロバイダー上で行うしかない。
Blockchain Node Engineは、Ethereum(メインネットに加え、Sepolia、Holesky、Goerliの各テストネット)、Polygon PoS、Solanaのノードを運用し、Blockchain RPCはEthereumに対応していた。私たちはこれらのチェーンをすべてサポートしているため、現在Google Cloudで動かしているワークロードには、それぞれ対応するエンドポイントがAlchemyにある。対応関係は後述のマッピングのセクションにまとめている。
移行の際に注意すべき課金上の点が1つある。Blockchain RPCエンドポイントはGoogleが自ら削除するが、Blockchain Node EngineノードはGoogle Cloudコンソールで自分で削除する必要があり、削除するまで課金が続く。
12月15日はURLが機能しなくなる日と捉え、本番トラフィックはその数週間前までに移し終えることを目指してほしい。
Alchemyのエンドポイントはどう取得するか
Alchemyダッシュボードでサインアップし、アプリを作成して、Google Cloudで使っていたネットワークを有効にする。ネットワークごとに個別のURLが発行され、1つのアプリのAPIキーはそのすべてで使える。
ターミナルから離れたくない場合は、Alchemy CLIを使えば、いくつかのコマンドでサインイン、アプリの作成、最初のテスト呼び出しまで済ませられる。
npm i -g @alchemy/cli@latest
alchemy auth # browser sign-in
alchemy app create --name gcp-migration --networks ETH_MAINNET
alchemy app select <app-id> # use the new app's key
alchemy evm block latest -n eth-mainnet # confirm the endpoint answersブラウザのないリモートサーバーでは、代わりにalchemy auth login --device-codeを使う。alchemy app chainsは、PolygonやSolanaなど、アプリに追加できる他のすべてのネットワークの識別子を一覧表示する。
コーディングエージェントに移行を任せられるか
任せられる。エンドポイントのURLが複数のサービスや設定ファイルに散らばっている場合は、これが最も速い方法だ。私たちは、コーディングエージェント(Claude Code、Cursor、Codexなど)が必要とするものを提供する3つのツールを用意している。
- Alchemy CLIはコマンドを実行する。アプリの作成、許可リストの設定、各ネットワークへのテスト呼び出しなどだ。
- Alchemy Agent Skillsは、私たちのエンドポイント形式、メソッド、CLIの使い方をエージェントに教える。
alchemy install skillsでインストールできる。 - Alchemy MCP serverは、100以上のネットワークにわたるチェーンデータへの直接アクセスをエージェントに与えるため、エージェントは作業しながら移行対象のネットワークを照会できる。
https://mcp.alchemy.com/mcpでホストされており、Alchemyアカウントでサインインするので、APIキーを貼り付ける必要はない。alchemy install mcpで追加するか、Claude Codeでは次のように追加する。
claude mcp add alchemy --transport http https://mcp.alchemy.com/mcpClaude Codeでは、Claude Code用のAlchemyプラグインを使えばSkillsとMCPサーバーを1ステップでインストールでき、Claude CodeとAlchemyのセットアップでその手順を解説している。
次に、リポジトリのルートで、次のようなプロンプトをエージェントに与える。このプロンプトでは、エージェントはまず必要な情報を確認し、ファイルに手を加える前に承認を待つ。
I'm moving this project off Google Cloud Blockchain Node Engine and Blockchain RPC, which shut down on December 15, 2026. The new provider is Alchemy. Use the Alchemy CLI, Alchemy skills, and the Alchemy MCP server.
Before changing anything, ask me:
- which networks we run on, and whether any Google Cloud node was an archive node
- where our secrets live (env files, a secrets manager, CI variables)
- whether the new Alchemy app needs IP or origin allowlists
Then find every Google Cloud blockchain endpoint and every use of the Google API key (X-goog-api-key headers or ?key= parameters) across code, config, CI, Docker, and infrastructure files. Show me the list with file paths and wait.
After I approve, replace each endpoint with an environment variable that holds the Alchemy URL for that network, remove the Google key handling, and add placeholder entries to .env.example. Never commit a real API key.
Finally, run eth_chainId and eth_blockNumber against every migrated network with the Alchemy CLI and report the results.すべてのリポジトリを手作業で検索する代わりに、一覧と差分をレビューするだけで済む。手動で変更したい場合も、作業内容は同じだ。Googleのエンドポイントのホスト名とAPIキーを検索し、ネットワークごとにAlchemyのURLに置き換え、キーのヘッダーまたはクエリパラメータを削除する。私たちのキーはURLパスに含まれるからだ。CI変数、Terraform、スケジュールジョブなど、エンドポイントが潜んでいがちな場所も確認してほしい。
Google Cloudの構成の各部分は何に置き換わるか
対応関係のほとんどは1対1で、いくつかの作業はまったく不要になる。
私たちのRPC APIは、共有エンドポイント、フルノード、アーカイブノードのケースをカバーする。シングルテナントの分離を目的にBlockchain Node Engineを選んでいた場合は、Alchemy Dedicated Clustersがワークロード専用に確保されたキャパシティを提供する。それが見合うのはどのような場合かは、Node RPCとDedicated Clustersの選択で解説している。許可リストはダッシュボードで設定するか、CLIからalchemy app ip-allowlistとalchemy app origin-allowlistで設定できる。
Blockchain Node Engineがサポートしていたすべてのネットワークのエンドポイントを、環境変数の形で示す。
# Ethereum
ETH_MAINNET_URL=https://eth-mainnet.g.alchemy.com/v2/<your-key>
ETH_SEPOLIA_URL=https://eth-sepolia.g.alchemy.com/v2/<your-key>
ETH_HOODI_URL=https://eth-hoodi.g.alchemy.com/v2/<your-key>
ETH_MAINNET_BEACON_URL=https://eth-mainnetbeacon.g.alchemy.com/v2/<your-key>
# Polygon PoS
POLYGON_MAINNET_URL=https://polygon-mainnet.g.alchemy.com/v2/<your-key>
POLYGON_AMOY_URL=https://polygon-amoy.g.alchemy.com/v2/<your-key>
# Solana
SOLANA_MAINNET_URL=https://solana-mainnet.g.alchemy.com/v2/<your-key>WebSocketを使う場合は、https://をwss://に置き換える。Beaconエンドポイントは、Ethereumノードでコンセンサスレイヤーを照会していたチーム向けだ。
ネットワークについては、いくつか確認しておくべき点がある。GoerliのトラフィックはSepoliaへ、HoleskyのトラフィックはHoodiへ移す(Holeskyも引き続き提供している)。Polygonで、アーカイブノードに対して特定のトレーサーを指定してdebugメソッドを呼び出していた場合は、そのトレーサーをDebug APIのドキュメントで確認してほしい。Solanaでは、標準のJSON-RPCメソッドが私たちのエンドポイントでもそのまま動作し、リアルタイムデータについてはSolana gRPCストリーミングがポーリングに代わる。
新しいエンドポイントが同じデータを返すことをどう証明するか
本番トラフィックを移す前に、整合性チェックを実行する。以下のスクリプトは、両方のプロバイダーから同じファイナライズ済みブロックと同じ過去時点の残高を読み取り、結果を比較する。viemを使っているが、JSON-RPCクライアントであれば何でも構わない。
import { createPublicClient, http } from "viem";
import { mainnet } from "viem/chains";
const { GCP_ETH_RPC_URL, GCP_API_KEY, ETH_MAINNET_URL, CHECK_ADDRESS } = process.env;
// Fail fast: viem's http() silently falls back to a public RPC when the URL is undefined.
if (!GCP_ETH_RPC_URL || !ETH_MAINNET_URL || !CHECK_ADDRESS) {
throw new Error("Set GCP_ETH_RPC_URL, ETH_MAINNET_URL, and CHECK_ADDRESS first");
}
const address = CHECK_ADDRESS as `0x${string}`;
const google = createPublicClient({
chain: mainnet,
transport: http(GCP_ETH_RPC_URL, {
fetchOptions: { headers: { "X-goog-api-key": GCP_API_KEY ?? "" } },
}),
});
const alchemy = createPublicClient({
chain: mainnet,
transport: http(ETH_MAINNET_URL),
});
async function main() {
// 64 blocks back is past Ethereum finality, so both sides must agree.
const head = await alchemy.getBlockNumber();
const blockNumber = head - 64n;
const [a, b] = await Promise.all([
google.getBlock({ blockNumber }),
alchemy.getBlock({ blockNumber }),
]);
console.log(`block ${blockNumber} hash match:`, a.hash === b.hash);
// Archive check. Skip this part if your Google Cloud node was a full node.
const oldBlock = 15_000_000n;
const [balA, balB] = await Promise.all([
google.getBalance({ address, blockNumber: oldBlock }),
alchemy.getBalance({ address, blockNumber: oldBlock }),
]);
console.log(`balance at block ${oldBlock} match:`, balA === balB);
}
main();移行するネットワークごとに、アプリが実際に照会するアドレスを使って実行する。ファイナライズ済みのブロックでハッシュが一致しない場合は、何かの設定が誤っている。たいていはネットワークURLの間違いなので、先に進む前に修正してほしい。
チェックに合格したら、フィーチャーフラグや重み付けルーティングを使ってトラフィックを段階的に移し、12月まではGoogle Cloudのエンドポイントをフォールバックとして残しておく。ダウンタイムなしでRPCプロバイダーを移行する方法では、移行後もバックアップのRPCエンドポイントを維持する方法を含め、段階的な切り替えを詳しく解説している。トラフィックが完全に切り替わったら、課金を止めるためにGoogle CloudコンソールでBlockchain Node Engineノードを削除する。
切り替え後にスタックから何を取り除けるか
Blockchain Node Engineが提供していたのは素のノードだったため、JSON-RPCより上の層はすべて、チームが自ら書いて保守してきたコードだった。プロバイダーの切り替えは、その一部を廃止する良い機会だ。
- トランザクション履歴のインデクサー。ブロックやログをスキャンしてアドレスの履歴を再構築しているなら、Transfers APIがその履歴を1回の呼び出しで返す。チェーンを自分でインデックスする必要はない。
- 入金検知のポーリングループ。新しいブロックをポーリングして着金を検知するコードは、Address Activity webhooksに置き換えられる。Address Activity webhooksは、1つのwebhookあたり最大10万アドレスの送金イベントをプッシュする。
- チェーンごとのプロビジョニング。Blockchain Node Engineでは、Base、Arbitrum、Optimismを追加するという選択肢はそもそもなかった。Alchemyでは、同じアプリで同じキーのまま、ネットワークを有効にするだけだ。
同じキーは、トークン残高、価格、NFTデータを扱う私たちのData APIでも使える。そのため、今日移行するエンドポイントで、本来なら後から自前で構築することになる機能までカバーできる。
コストはどう違うか
2つのプロダクトは課金方式が異なる。Blockchain Node Engineは、ノードがトラフィックを処理しているかアイドル状態かにかかわらず、ノード単位・時間単位で課金する。私たちは送信されたリクエストに対して課金し、その量はコンピュートユニット(CU)で計測される。eth_blockNumberのような軽い呼び出しは、重いトレースよりも少ないユニットで済む。
規模感で言えば、Google CloudでEthereumアーカイブノード1台にかかる月額約$2,000で、私たちのPay As You Goプランなら約38億CUを利用でき、アカウント上のすべてのチェーンで使える。冗長性のために2台目のノードを運用していたチームは、その時間単価を2倍支払っていた。私たちのエンドポイントはURLの背後にあるノード群によって提供されるため、冗長性が別の費用項目になることはない。大量のトラフィックを扱うチームは、Enterpriseプランや確約スループットについて営業チームに相談できる。
移行の計画にサポートが必要か

Alchemyの無料アカウントを作成すれば、契約も同期待ちのノードもなしに、今日から動作するエンドポイントを手に入れられる。現在の構成に対する整合性チェックを今週中に実行するには、それで十分だ。
本番ワークロード、マルチチェーンのデプロイメント、あるいは専用ノードに依存していたチームは、営業チームに相談してほしい。Blockchain Node Engineの構成のマッピング、適切なプランの選定、そして12月15日より十分前の切り替えのスケジュール策定を支援する。
よくある質問
Google Cloud Blockchain Node Engineはいつ終了するか
Google Cloud Blockchain Node EngineとBlockchain RPCは2026年12月15日に終了する。その日にGoogleは残っているノードとエンドポイントを削除し、それらを呼び出しているアプリケーションはすべて失敗するため、数週間前には切り替えを済ませる計画を立てておくべきだ。
Google Cloud Blockchain Node Engineの良い代替は何か
Alchemyはそのまま置き換えられる代替だ。Blockchain Node Engineが提供していたすべてのネットワーク(Ethereum、Polygon、Solana)を同じ標準JSON-RPCメソッドでサポートし、さらに100以上の他のチェーンを1つのAPIキーで利用できる。シングルテナントのキャパシティを必要とするチームは、専用ノードの代わりにAlchemy Dedicated Clustersを利用できる。
Blockchain Node Engineから移行するにはアプリケーションを書き直す必要があるか
必要ない。Alchemyは標準のJSON-RPCを使うため、ethers、viem、web3.pyなどのクライアントはそのまま動作する。ネットワークごとにエンドポイントURLを変更し、Google Cloud APIキーのヘッダーまたはクエリパラメータを削除すればよい。AlchemyのAPIキーはURLの一部だからだ。
AlchemyではBlockchain Node Engineの専用ノードを何に置き換えるか
ほとんどのワークロードでは、標準のAlchemy RPCエンドポイントがフルノードとアーカイブノードの両方を置き換え、運用やアップグレードが必要なノードはない。自分たちのワークロード専用に確保されたキャパシティを必要とするチームは、Alchemy Dedicated Clustersに移行できる。Dedicated Clustersは、1つのエンドポイントの背後でシングルテナントのインフラストラクチャを提供する。
Alchemyに移行した後はどのチェーンを使えるか
Blockchain Node Engineがサポートしていたすべてのネットワークが利用でき、Ethereumメインネット、Sepolia、Hoodi、Polygonメインネット、Amoy、Solanaが含まれる。それ以外にも、AlchemyはBase、Arbitrum、Optimism、BNB Chainを含む100以上のチェーンをサポートしており、すべて同じAPIキーで利用できる。
AIコーディングエージェントにエンドポイントを移行させることはできるか
できる。Alchemy CLIをインストールし、alchemy install skillsを実行し、Alchemy MCP serverを追加したうえで、Claude CodeやCursorなどのエージェントに、リポジトリ内のすべてのGoogle CloudエンドポイントとAPIキーを見つけ、置き換え案を提示し、承認を待つよう依頼する。その後、エージェントはCLIを使って新しい各エンドポイントを検証できる。
AlchemyはGoogle Cloud Blockchain Node Engineより安いか
ほとんどのワークロードでは安い。Blockchain Node Engineはノード単位・時間単位で課金し、アイドル状態であってもEthereumフルノードで月額約$504、アーカイブノードで約$2,000かかる。Alchemyはリクエスト単位で課金する。Freeプランには毎月3,000万コンピュートユニットが含まれ、Pay As You Goは100万コンピュートユニットあたり$0.525だ。
関連する概要

ブロックチェーンで魔法を生み出す
Alchemyは、最も強力なweb3開発者向けプロダクトとツールを、豊富なリソース、コミュニティ、そして卓越したサポートと組み合わせて提供します。


