[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["難以理解","hardToUnderstand","thumb-down"],["資訊或程式碼範例有誤","incorrectInformationOrSampleCode","thumb-down"],["缺少我需要的資訊/範例","missingTheInformationSamplesINeed","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-09-04 (世界標準時間)。"],[[["\u003cp\u003eCreating an asynchronous read pool instance provides a read-only clone of your database, improving read throughput and ensuring data access even if the main instance is unavailable.\u003c/p\u003e\n"],["\u003cp\u003eEach read pool instance is defined by a unique manifest file, and you can create up to 20 of these instances.\u003c/p\u003e\n"],["\u003cp\u003eRead pool instances require the same amount of storage as the database instance they replicate.\u003c/p\u003e\n"],["\u003cp\u003eThe read pool instance remains available to serve queries even if the main database instance becomes unreachable, although it may not be actively replicating data at that time.\u003c/p\u003e\n"],["\u003cp\u003eThe instance availability can be checked by running a command, a \u003ccode\u003etrue\u003c/code\u003e response means it is available, however, a different command is required to check the streaming status.\u003c/p\u003e\n"]]],[],null,["# Create an asynchronous read pool instance in Kubernetes\n\nSelect a documentation version: 15.5.2keyboard_arrow_down\n\n- [Current (16.8.0)](/alloydb/omni/current/docs/kubernetes-read-pool)\n- [16.8.0](/alloydb/omni/16.8.0/docs/kubernetes-read-pool)\n- [16.3.0](/alloydb/omni/16.3.0/docs/kubernetes-read-pool)\n- [15.12.0](/alloydb/omni/15.12.0/docs/kubernetes-read-pool)\n- [15.7.1](/alloydb/omni/15.7.1/docs/kubernetes-read-pool)\n- [15.7.0](/alloydb/omni/15.7.0/docs/kubernetes-read-pool)\n- [15.5.5](/alloydb/omni/15.5.5/docs/kubernetes-read-pool)\n- [15.5.4](/alloydb/omni/15.5.4/docs/kubernetes-read-pool)\n- [15.5.2](/alloydb/omni/15.5.2/docs/kubernetes-read-pool)\n\n\u003cbr /\u003e\n\nTo increase read throughput and availability of your database cluster, you can create an asynchronous read pool instance of your database instance. A read pool instance provides a read-only clone of your database instance ensuring data access even if your database instance becomes unavailable.\n\n\u003cbr /\u003e\n\nYou can define the read pool instance configuration in the database instance's manifest file. Each read pool instance requires creating a unique manifest file. You can create up to 20 read pool instances.\n\nEach read pool instance occupies the same amount of storage as the instance it replicates.\n| **Note:** You can configure your instance's standby replica to be used as a synchronous read-only instance. For more information, see [Use the standby as a read-only instance](/alloydb/omni/15.5.2/docs/kubernetes-ha#create-read-only-instance).\n\nCreate an asynchronous read pool instance\n-----------------------------------------\n\nTo create an AlloyDB Omni asynchronous read pool instance, complete\nthe following steps:\n\n1. Create the database instance manifest to define the read pool instance type:\n\n apiVersion: alloydbomni.dbadmin.goog/v1\n kind: DBInstance\n metadata:\n name: \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-l devsite-syntax-l-Scalar devsite-syntax-l-Scalar-Plain\"\u003eREAD_POOL_INSTANCE_NAME\u003c/span\u003e\u003c/var\u003e\n namespace: \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-l devsite-syntax-l-Scalar devsite-syntax-l-Scalar-Plain\"\u003eNAMESPACE\u003c/span\u003e\u003c/var\u003e\n spec:\n instanceType: ReadPool\n dbcParent:\n name: \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-l devsite-syntax-l-Scalar devsite-syntax-l-Scalar-Plain\"\u003eDB_CLUSTER_NAME\u003c/span\u003e\u003c/var\u003e\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eREAD_POOL_INSTANCE_NAME\u003c/var\u003e: a name for this resource---for\n example, `read-pool-instance-1`.\n\n - \u003cvar translate=\"no\"\u003eNAMESPACE\u003c/var\u003e: the namespace of the database cluster.\n\n - \u003cvar translate=\"no\"\u003eDB_CLUSTER_NAME\u003c/var\u003e: the name of the database cluster to which the instance belongs.\n\n2. Apply the manifest.\n\nVerify instance status\n----------------------\n\nTo verify the availability of the read pool instance, run the following command: \n\n kubectl get dbinstance -n \u003cvar translate=\"no\"\u003eNAMESPACE\u003c/var\u003e \u003cvar translate=\"no\"\u003eREAD_POOL_INSTANCE_NAME\u003c/var\u003e -o jsonpath='{.status.conditions[?(@.type==\"Available\")].status}'\n\nThe response `true` indicates that the read pool instance can serve queries,\nbut might not be replicating data from your database instance.\n\nTo verify the streaming status of the read pool instance, run the following command: \n\n kubectl get dbinstance -n \u003cvar translate=\"no\"\u003eNAMESPACE\u003c/var\u003e \u003cvar translate=\"no\"\u003eREAD_POOL_INSTANCE_NAME\u003c/var\u003e -o jsonpath='{.status.conditions[?(@.type==\"Streaming\")].status}'\n\nThe response `true` indicates that the read pool instance is connected to your\ndatabase instance and actively streaming changes.\n\nWhen your database instance is unreachable, the read pool instance continues to\nserve the queries. In this case, the availability status will be `true` while\nthe streaming status will be `false`.\n\nAfter you set up the read pool instance, all inserts, updates, and deletions to rows in\nyour instance become readable on your read pool instance."]]