{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-@l10n/es-ES/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition"]},"type":"markdown"},"seo":{"title":"Cluster xrpld Servers","siteUrl":"https://xrpl.org/","llmstxt":{"hide":false,"title":"XRPL Developer Portal & Documentation","description":"Explore XRP Ledger documentation, blogs, and other blockchain developer resources needed to start building and integrating with the ledger.","details":{"content":"XRP Ledger concepts, use cases, tutorials, references, and other blockchain developer resources. Also, stay up to date with release announcements and more through the XRPL Blog."},"sections":[{"title":"Introduction","description":"A high-level introduction to the XRP Ledger.","includeFiles":["docs/introduction/**/*.*","about/faq.md"],"excludeFiles":["docs/introduction/index.md"]},{"title":"Use Cases","description":"Real-world applications and business scenarios for the XRP Ledger.","includeFiles":["docs/use-cases/**/*.*"],"excludeFiles":["docs/use-cases/index.md","docs/use-cases/defi/index.md"]},{"title":"Agentic Transactions","description":"XRPL AI Starter Kit to help autonomous agents discover, set up, and execute agentic transactions on the XRP Ledger.","includeFiles":["docs/agents/**/*.*"],"excludeFiles":[]},{"title":"Concepts","description":"Core concepts including accounts, tokens, transactions, consensus, and more.","includeFiles":["docs/concepts/**/*.*"],"excludeFiles":["docs/concepts/index.md","docs/concepts/decentralized-storage/index.md","docs/concepts/payment-types/index.md"]},{"title":"Tutorials","description":"Step-by-step guides for building on the XRP Ledger in JavaScript, Python, Go, and more.","includeFiles":["docs/tutorials/**/*.*"],"excludeFiles":[]},{"title":"References","description":"Protocol specification, transaction types, ledger entries, and API methods.","includeFiles":["docs/references/**/*.*"],"excludeFiles":["docs/references/xrp-api.md","docs/references/data-api.md","docs/references/protocol/index.md","docs/references/protocol/ledger-data/ledger-entry-types/index.md","docs/references/protocol/transactions/index.md","docs/references/protocol/transactions/types/index.md","docs/references/http-websocket-apis/api-conventions/index.md","docs/references/http-websocket-apis/public-api-methods/*/index.md","docs/references/http-websocket-apis/admin-api-methods/*/index.md"]},{"title":"Infrastructure","description":"Install, configure, and troubleshoot xrpld and Clio servers.","includeFiles":["docs/infrastructure/**/*.*"],"excludeFiles":["docs/infrastructure/index.md","docs/infrastructure/*/index.md","docs/infrastructure/installation/build-run-xrpld-in-reporting-mode.md","docs/infrastructure/configuration/data-retention/index.md","docs/infrastructure/configuration/server-modes/index.md"]},{"title":"Blog (2023+)","description":"Recent XRPL Blog posts (showing 2023 and newer).","includeFiles":["blog/2023/**/*.*","blog/2024/**/*.*","blog/2025/**/*.*","blog/2026/**/*.*"],"excludeFiles":[]},{"title":"Resources","description":"Developer resources and contribution guidelines.","includeFiles":["resources/**/*.*"],"excludeFiles":["resources/index.md"]}],"excludeFiles":[]},"description":"Set up a group of servers that share work for higher efficiency."},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"cluster-xrpld-servers","__idx":0},"children":["Cluster xrpld Servers"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If you run multiple ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/es-es/docs/concepts/networks-and-servers"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["xrpld"]}," servers"]}," in the same data center, you can configure them in a ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/es-es/docs/concepts/networks-and-servers/clustering"},"children":["cluster"]}," to maximize efficiency. To configure clustering:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For each of your servers, note the IP address of the server."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For each of your servers, generate a unique seed using the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/references/http-websocket-apis/admin-api-methods/key-generation-methods/validation_create"},"children":["validation_create method"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For example, using the commandline interface:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"$ xrpld validation_create\n\nLoading: \"/etc/xrpld.cfg\"\nConnecting to 127.0.0.1:5005\n{\n   \"result\" : {\n      \"status\" : \"success\",\n      \"validation_key\" : \"FAWN JAVA JADE HEAL VARY HER REEL SHAW GAIL ARCH BEN IRMA\",\n      \"validation_public_key\" : \"n9Mxf6qD4J55XeLSCEpqaePW4GjoCR5U1ZeGZGJUCNe3bQa4yQbG\",\n      \"validation_seed\" : \"ssZkdwURFMBXenJPbrpE14b6noJSu\"\n   }\n}\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Save the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["validation_seed"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["validation_public_key"]}," parameters from each response somewhere secure."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["On each server, edit the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/XRPLF/rippled/blob/master/cfg/xrpld-example.cfg"},"children":["config file"]},", modifying the following sections:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["[ips_fixed]"]}," section, list the IP address and port of each ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["other"]}," member of the cluster. For each of those servers, the port number should match the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["protocol = peer"]}," port (usually 51235) from that server's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["xrpld.cfg"]},". For example:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"[ips_fixed]\n192.168.0.1 51235\n192.168.0.2 51235\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This defines specific peer servers to which this server should always attempt to maintain a direct peer-to-peer connection."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Note"},"children":["If you omit the port number, the server uses port 2459, the IANA-assigned port for the XRP Ledger protocol."]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["[node_seed]"]}," section, set the server's node seed to one of the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["validation_seed"]}," values you generated using the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/references/http-websocket-apis/admin-api-methods/key-generation-methods/validation_create"},"children":["validation_create method"]}," in step 2. Each server must use a unique node seed. For example:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"[node_seed]\nssZkdwURFMBXenJPbrpE14b6noJSu\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This defines the key pair the server uses to sign peer-to-peer communications, excluding validation messages."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["[cluster_nodes]"]}," section, set the members of the server's cluster, identified by their ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["validation_public_key"]}," values. Each server should list the public keys of all ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["other"]}," members of the cluster here. Optionally, add a custom name for each server. For example:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"[cluster_nodes]\nn9McNsnzzXQPbg96PEUrrQ6z3wrvgtU4M7c97tncMpSoDzaQvPar keynes\nn94UE1ukbq6pfZY9j54sv2A1UrEeHZXLbns3xK5CzU9NbNREytaa friedman\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This defines the key pairs the server uses to recognize members of its cluster."]}]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["After saving the config file, restart ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["xrpld"]}," on each server."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"# systemctl restart xrpld\n"},"children":[]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To confirm that each server is now a member of the cluster, use the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/references/http-websocket-apis/admin-api-methods/peer-management-methods/peers"},"children":["peers method"]},". The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cluster"]}," field should list the public keys and (if configured) the custom names for each server."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["For example, using the commandline interface:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"$ xrpld peers\n\nLoading: \"/etc/xrpld.cfg\"\nConnecting to 127.0.0.1:5005\n{\n  \"result\" : {\n    \"cluster\" : {\n        \"n9McNsnzzXQPbg96PEUrrQ6z3wrvgtU4M7c97tncMpSoDzaQvPar\": {\n          \"tag\": \"keynes\",\n          \"age\": 1\n        },\n        \"n94UE1ukbq6pfZY9j54sv2A1UrEeHZXLbns3xK5CzU9NbNREytaa\": {\n          \"tag\": \"friedman\",\n          \"age\": 1\n        }\n    },\n    \"peers\" : [\n      ... (omitted) ...\n    ],\n    \"status\" : \"success\"\n  }\n}\n"},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"see-also","__idx":1},"children":["See Also"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Concepts:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/es-es/docs/concepts/networks-and-servers/peer-protocol"},"children":["Peer Protocol"]}]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Tutorials:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/es-es/docs/infrastructure/installation"},"children":["Install xrpld"]}]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["References:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/references/http-websocket-apis/admin-api-methods/key-generation-methods/validation_create"},"children":["validation_create method"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/docs/references/http-websocket-apis/admin-api-methods/peer-management-methods/peers"},"children":["peers method"]}]}]}]}]}]},"headings":[{"value":"Cluster xrpld Servers","id":"cluster-xrpld-servers","depth":1},{"value":"See Also","id":"see-also","depth":2}],"frontmatter":{"html":"cluster-xrpld-servers.html","parent":"configure-peering.html","seo":{"description":"Set up a group of servers that share work for higher efficiency.","title":"Cluster xrpld Servers"},"labels":["Core Server"]},"editPage":{"to":"https://github.com/XRPLF/xrpl-dev-portal/tree/master/docs/infrastructure/configuration/peering/cluster-xrpld-servers.md"},"lastModified":"2026-06-12T21:25:06.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/es-es/docs/infrastructure/configuration/peering/cluster-xrpld-servers","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}