If you are not sure if the website you would like to visit is secure, you can verify it here. Enter the website address of the page and see parts of its content and the thumbnail images on this site. None (if any) dangerous scripts on the referenced page will be executed. Additionally, if the selected site contains subpages, you can verify it (review) in batches containing 5 pages.
favicon.ico: docs.cloud.google.com/compute/docs/instances/sql-server/configure-availability - Configure SQL Server Always On.

site address: docs.cloud.google.com/compute/docs/instances/sql-server/configure-availability

site title: Configure SQL Server Always On availability groups with synchronous commit using an internal load balancer     Compute Engine     Google Cloud Documentation

Our opinion (on Tuesday 21 July 2026 11:32:43 UTC):

GREEN status (no comments) - no comments
After content analysis of this website we propose the following hashtags:


page from cache: 3 days ago
Meta tags:

Headings (most frequently used words):

and, create, sql, the, configure, server, availability, using, your, project, failover, on, with, an, internal, load, cluster, creating, always, groups, synchronous, commit, balancer, stay, organized, collections, save, categorize, content, based, preferences, objectives, costs, before, you, begin, prepare, network, deploying, group, test, clean, up, what, next, region, firewall, rules, vm, instances, reserve, static, ip, addresses, preparing, file, shares, database, high, management, studio, balancers, health, checks, delete, products, pricing, support, resources, engage,

Text of the page (most frequently used words):
the (414), create (199), and (193), for (141), server (117), vms (104), with (103), sql (98), you (89), #availability (87), #cluster (81), instance (76), group (70), node (69), compute (68), that (63), project (63), about (62), using (62), troubleshoot (62), cloud (61), disk (61), use (59), windows (58), wsfc (56), manage (49), load (49), instances (47), configure (46), google (45), failover (43), bookshelf (42), select (41), region (41), your (41), set (41), groups (39), name (38), view (38), internal (37), disks (36), following (35), connect (34), gcloud (33), mig (33), new (32), network (32), performance (32), overview (31), from (30), balancer (30), add (30), resources (29), engine (29), can (28), address (28), active (27), reservation (27), backend (26), delete (25), domain (25), machine (25), health (24), image (24), type (23), listener (23), database (23), directory (23), data (22), this (21), monitor (21), images (21), hyperdisk (21), always (20), two (20), access (20), witness (19), deploy (19), all (18), script (18), primary (18), high (18), management (18), tcp (18), account (18), configuration (18), microsoft (18), virtual (18), gpu (18), custom (17), service (17), nodes (17), host (17), zone (17), file (17), linux (17), policies (16), click (16), multiple (16), existing (16), check (16), enable (16), boot (16), metadata (16), reservations (16), get (15), user (15), backup (15), share (15), addresses (15), firewall (15), creation (15), snapshots (15), ssh (15), recommendations (15), page (14), persistent (14), storage (14), dns (14), port (14), start (14), steps (14), managed (14), allow (14), workload (14), apply (14), replica (13), rules (13), balancing (13), login (13), regional (13), based (13), zones (13), bulk (13), are (12), how (12), uses (12), then (12), created (12), static (12), request (12), agent (12), services (12), default (12), grant (12), sql_server (12), note (12), size (12), logs (12), install (12), workloads (12), sole (12), best (12), join (11), see (11), powershell (11), value (11), run (11), listener_ip (11), subnet (11), subnet_name (11), attached (11), practices (11), stateful (11), need (10), more (10), mode (10), return (10), session (10), verify (10), now (10), guest (10), automatic (10), replace (10), net_domain (10), ssd (10), licenses (10), time (10), migs (10), machines (10), migrate (10), license (9), console (9), have (9), tutorial (9), which (9), one (9), single (9), protocol (9), cluster_ip (9), databases (9), recovery (9), tags (9), keys (9), across (9), application (9), tenant (9), openshift (9), shutdown (9), hpc (9), support (8), information (8), used (8), stop (8), null (8), format (8), test (8), each (8), checks (8), zone1 (8), zone2 (8), config (8), role (8), qwitness (8), password (8), vpc (8), between (8), import (8), cpu (8), resource (8), optimize (8), choose (8), disaster (8), update (8), h4d (8), flexibility (8), optimized (8), tpu (8), sign (7), action (7), events (7), system (7), thumb (7), other (7), next (7), plan (7), projects (7), any (7), these (7), right (7), 1433 (7), true (7), object (7), security (7), open (7), reserved (7), reserve (7), vpc_name (7), endpoint (7), options (7), accounts (7), computer (7), manager (7), change (7), environment (7), roles (7), usage (7), networking (7), commitments (7), startup (7), benchmark (7), manually (7), idle (7), scale (7), back (7), mysql (7), zonal (7), remove (7), maintenance (7), templates (7), snapshot (7), send (6), multi (6), list (6), has (6), when (6), future (6), finish (6), output (6), remote (6), desktop (6), associated (6), 59998 (6), traffic (6), unmanaged (6), available (6), enter (6), both (6), enabled (6), synchronous (6), execute (6), review (6), drivers (6), win (6), perform (6), deployment (6), monitoring (6), 2022 (6), specialize (6), ps1 (6), clustering (6), replication (6), prepare (6), distributed (6), migration (6), updates (6), instant (6), files (6), nested (6), gpus (6), applications (6), demand (6), pools (6), extension (6), transfer (6), customized (6), spot (6), third (5), code (5), samples (5), understand (5), down (5), details (5), its (5), quota (5), might (5), also (5), work (5), off (5), running (5), studio (5), master (5), previous (5), must (5), healthcheck (5), forwarding (5), shell (5), deploying (5), commit (5), 5022 (5), state (5), nvarchar (5), max (5), full (5), creating (5), warnings (5), permission (5), container (5), confirm (5), clicking (5), yes (5), button (5), press (5), admin (5), path (5), restart (5), requests (5), specific (5), serial (5), three (5), local (5), errors (5), virtualization (5), nvidia (5), operations (5), placement (5), highly (5), build (5), modify (5), capacity (5), schedules (5), audit (5), symphony (5), email (5), scripts (5), operating (5), systems (5), enhanced (5), capabilities (5), tenancy (5), restore (5), regions (5), types (5), control (5), workstation (5), faq (5), flex (5), português (4), español (4), started (4), sample (4), under (4), learn (4), dialog (4), want (4), billing (4), after (4), describe (4), changes (4), guide (4), conn (4), cmd (4), ready (4), step (4), separate (4), rule (4), provides (4), response (4), different (4), own (4), scheme (4), same (4), threshold (4), clients (4), directed (4), specify (4), alter (4), secondary (4), bookshelf_endpoint (4), 256mb (4), description (4), query (4), warning (4), testing (4), without (4), quorum (4), elevation (4), prompt (4), username (4), properties (4), during (4), manual (4), serves (4), increase (4), costs (4), standard (4), zone3 (4), family (4), achieve (4), product (4), hosts (4), target (4), provisioning (4), selector (4), selecting (4), resourcemanager (4), shared (4), tools (4), authentication (4), issues (4), ubuntu (4), bandwidth (4), pmu (4), number (4), upgrade (4), live (4), autoscaling (4), cross (4), calendar (4), metrics (4), clusters (4), containers (4), postgresql (4), extensions (4), suspend (4), location (4), resize (4), graceful (4), locations (4), plans (4), bound (4), terms (3), pricing (3), products (3), content (3), apache (3), writer (3), deleting (3), selected (3), instead (3), tasks (3), they (3), sections (3), while (3), sqlclient (3), connection (3), than (3), per (3), ports (3), healthy (3), provide (3), ensures (3), udp (3), close (3), validation (3), synchronization (3), earlier (3), settings (3), replicas (3), contains (3), 255 (3), netbios (3), table (3), log (3), identity (3), not (3), purpose (3), doesn (3), force (3), computers (3), communication (3), tests (3), report (3), icacls (3), backups (3), make (3), setting (3), command (3), ensure (3), example (3), credential (3), variable (3), context (3), credentials (3), setup (3), within (3), pd_size (3), machine_type (3), device (3), sysprep (3), windowsfeature (3), required (3), features (3), netsh (3), advfirewall (3), dir (3), localport (3), deployed (3), servers (3), logging (3), source (3), private (3), rdp (3), require (3), iam (3), basic (3), implement (3), over (3), guides (3), infrastructure (3), observability (3), analytics (3), troubleshooting (3), encryption (3), pro (3), configurations (3), patterns (3), higher (3), discounts (3), cuds (3), scalable (3), resilient (3), autoscale (3), prevent (3), policy (3), ibm (3), spectrum (3), rhel (3), protect (3), certificates (3), disable (3), schedule (3), lifecycle (3), design (3), non (3), pool (3), move (3), workstations (3), series (3), tpus (3), 한국어 (2), 日本語 (2), עברית (2), brasil (2), italiano (2), indonesia (2), français (2), américa (2), latina (2), deutsch (2), english (2), our (2), site (2), youtube (2), center (2), status (2), last (2), updated (2), 2026 (2), utc (2), otherwise (2), licensed (2), feedback (2), architectures (2), quickstarts (2), help (2), avoid (2), limits (2), such (2), clean (2), turn (2), ctrl (2), observe (2), result (2), was (2), successful (2), results (2), trigger (2), seconds (2), queries (2), initial (2), adapter (2), out (2), defined (2), returned (2), l3_default (2), unspecified (2), interval (2), unhealthy (2), timeout (2), determine (2), administrative (2), purposes (2), managing (2), protocols (2), icmp (2), balancers (2), seeding (2), tab (2), should (2), endpoint_url (2), availability_mode (2), synchronous_commit (2), failover_mode (2), backup_priority (2), seeding_mode (2), secondary_role (2), allow_connections (2), listener_port (2), database_mirroring (2), creates (2), filename (2), maxsize (2), unlimited (2), filegrowth (2), dbo (2), books (2), constraint (2), key (2), false (2), current (2), named (2), sqlalwayson (2), serverinstance (2), validate (2), reported (2), some (2), completed (2), only (2), objects (2), item (2), smbshare (2), fullaccess (2), env (2), another (2), store (2), shares (2), sure (2), will (2), fail (2), where (2), follows (2), append (2), discuss (2), detail (2), later (2), echo (2), client (2), connections (2), accessing (2), wait (2), permissions (2), point (2), process (2), viewing (2), larger (2), depending (2), consider (2), savings (2), licensing (2), requirements (2), ent (2), datadisk (2), auto (2), attach (2), partitionstyle (2), initialize (2), tie (2), breaking (2), vote (2), scenario (2), bring (2), base (2), premium (2), additional (2), subnet_cidr (2), networks (2), direction (2), ingress (2), priority (2), 10000 (2), including (2), annotated (2), tag (2), project_id (2), connectivity (2), controllers (2), don (2), keep (2), procedure (2), removing (2), creator (2), projectcreator (2), been (2), granted (2), evaluate (2), scenarios (2), free (2), before (2), begin (2), generate (2), cost (2), objectives (2), called (2), synchronously (2), replicated (2), however (2), arp (2), announcements (2), common (2), comparison (2), similar (2), replicate (2), documentation (2), sdk (2), languages (2), frameworks (2), industry (2), solutions (2), hybrid (2), multicloud (2), pipelines (2), hosting (2), development (2), commitment (2), consumption (2), registration (2), sles (2), export (2), collecting (2), arm (2), core (2), api (2), general (2), app (2), latency (2), analyze (2), visible (2), cores (2), automatically (2), committed (2), generation (2), underutilized (2), insights (2), utilization (2), globally (2), web (2), autohealing (2), iis (2), external (2), autoscaler (2), autoscalers (2), activity (2), kubernetes (2), provider (2), place (2), redis (2), cloning (2), alwayson (2), volumes (2), authenticate (2), method (2), global (2), switch (2), byol (2), payg (2), byos (2), families (2), securing (2), event (2), simulate (2), topology (2), together (2), repairs (2), repair (2), failures (2), template (2), suspended (2), stopped (2), distribution (2), physical (2), cancel (2), once (2), limit (2), interfaces (2), ipv6 (2), decrease (2), consistent (2), scoped (2), copy (2), appliances (2), asynchronous (2), throughput (2), encrypt (2), names (2), mount (2), memory (2), extreme (2), balanced (2), organization (2), through (2), advanced (2), rdma (2), preemptible (2), models (2), rtx (2), vws (2), constraints (2), accelerator (2), apis (2), reference (2), technology (2), areas (2), subscribe, newsletter, decade, climate, cookies, privacy, tech, twitter, blog, engage, training, certification, architecture, getting, github, release, notes, community, forums, contact, sales, marketplace, easy, easytounderstand, solved, problem, solvedmyproblem, otherup, hard, hardtounderstand, incorrect, incorrectinformationorsamplecode, missing, missingtheinformationsamplesineed, otherdown, tell, except, noted, java, registered, trademark, oracle, affiliates, developers, creative, commons, attribution, spaces, direct, what, shut, effects, explore, tutorials, reusing, exceeding, preserve, urls, url, inside, whole, appspot, com, ids, lost, document, done, everything, deleted, caution, easiest, way, eliminate, incurring, charges, pressing, notice, column, indicates, loss, readiness, navigate, leave, every, connects, definition, sqlconnection, connectionstring, integrated, catalog, sqlcommand, commandtext, serverproperty, servername, sqldataadapter, dataset, fill, tables, date, yyyy, sleep, works, expected, probes, gce, designated, directs, but, dedicated, perspective, responds, expects, represents, points, tooling, requires, recommend, summary, window, wizard, explorer, synchronization_health_desc, sys, dm_hadr_availability_group_states, automated_backup_preference, cluster_type, db_failover, either, performs, mdf, bookshelf_log, ldf, ansi_nulls, quoted_identifier, bigint, title, author, publisheddate, datetime, imageurl, createdbyid, pk_dbo, clustered, asc, pad_index, statistics_norecompute, ignore_dup_key, allow_row_locks, allow_page_locks, textimage_on, exec, sp_changedbowner, loginame, map, bak, init, paste, into, editor, menu, contain, include, adgroupmember, members, launch, mmc, snap, cluadmin, msc, signed, hadunselectedtests, clusterconditionallyapproved, solution, supported, succeed, safely, ignore, successfully, clusterquorum, filesharewitness, smbshareaccess, accountname, accessright, outside, delegated, nostorage, staticaddress, userdomain, yourself, act, runs, prompted, chose, previously, mssqlserver, navigation, pane, organizational, units, adorganizationalunit, filter, expandproperty, distinguishedname, org, message, aduser, accountpassword, passwordneverexpires, assign, preparing, capture, needs, efficiently, route, detects, redirects, requiring, intervention, minimizing, downtime, ensuring, continuous, vnn, allows, needing, know, primarily, assigned, itself, enabling, administrators, configuring, processes, joined, few, minutes, until, finished, tail, initialization, fit, smaller, would, production, better, accommodate, potential, disabling, simultaneous, multithreading, smt, 200, medium, fileserver, enables, configures, cat, erroractionpreference, includemanagementtools, rsat, raw, mbr, passthru, partition, assigndriveletter, usemaximumsize, volume, filesystem, ntfs, newfilesystemlabel, folders, eof, installs, necessary, specialized, program, mobility, preinstalled, installed, located, accessed, passthrough, subnets, ipcidrrange, ranges, several, simplify, variables, activate, continued, cleaning, setupadmin, least, controller, alternatively, forwards, real, world, customers, 300, credits, complete, estimate, projected, calculator, billable, components, working, simulating, comprising, acts, aims, front, diagram, includes, article, assumes, already, knowledge, section, premises, disregards, consequently, dnn, resolution, serve, shows, modes, detailed, scope, differ, ways, let, enterprise, save, categorize, preferences, stay, organized, collections, home, concurrent, operation, renewal, nvme, resizing, pay, diagnostic, sudoers, screenshots, bug, blackwell, soft, lockups, bus, locks, rescue, inaccessible, dumps, kernel, panic, fstab, unresponsive, suspension, reboots, shutdowns, tips, nics, dpdk, improve, resiliency, reduce, compact, idpf, interface, irdma, driver, nic, customize, threads, sustained, merge, split, extend, renew, purchase, dynamic, overcommit, cpus, floating, reliable, backends, routing, https, scaling, consuming, consume, combine, cud, sharing, decisions, signals, serving, predictions, organize, labels, states, reports, tensorflow, inference, tensorrt5, learning, monte, carlo, methods, spark, others, integrate, exchange, 2016, sharepoint, strategies, passive, inactive, setups, built, integrations, were, transition, hammerdb, bucket, aws, ec2, pacemaker, s2d, block, netapp, hot, standby, drbd, mailjet, mailgun, sendgrid, sending, blue, green, deployments, lamp, joomla, asp, net, interactive, mongodb, flask, terraform, mtls, random, generator, virtio, rng, accurate, ntp, els, restrictions, packages, deprecate, versions, trusted, red, hat, knowledgebase, functionality, risks, controls, confidential, kek, secure, expiration, shielded, attributes, predefined, handle, notices, faulty, affect, preserved, alternate, fails, repairing, maintain, upgrades, override, selectively, applying, accelerate, outage, rebalance, reenable, proactive, redistribution, shape, distribute, define, info, accidental, deletion, spread, edit, rename, reset, resume, referrers, uuid, recover, corrupted, duplicate, clones, alerts, vss, regionally, protection, considerations, consistency, failback, provisioned, iops, kms, customer, supplied, symbolic, links, practice, ram, exapools, ptr, record, failure, rates, restrict, automate, sac, securely, apps, root, vpn, bastion, iap, browser, iso, imported, prerequisites, importing, exporting, detach, reattach, accounting, provision, examples, slurm, team, slice, slices, adds, deterministic, aci, configured, preempted, historical, alternative, displays, ops, public, gpudirect, ultra, minimum, platform, hostname, office, strategy, gemini, bare, metal, accelerators, platforms, scores, discover, skip, main,


Text of the page (random words):
ual network name vnn and ip address that allows clients to connect to the availability group without needing to know which specific server is the primary node an internal load balancer needs an internal ip address to efficiently route internal traffic and support high availability and load balancing in the context of a wsfc cluster the internal load balancer ensures that requests are always directed to the current primary replica of the cluster during failover events the load balancer detects changes in the primary replica and redirects client connections to the new primary without requiring manual intervention minimizing downtime and ensuring continuous availability of the database services in the context of a wsfc with sql server always on availability groups both reserved internal static ip addresses for the default wsfc cluster ip address and the availability group listener are also used by associated internal load balancers to reserve two static ip addresses in your vpc use the following steps gcloud compute addresses create wsfc cluster ip subnet subnet_name region gcloud config get value compute region cluster_ip gcloud compute addresses describe wsfc cluster ip region gcloud config get value compute region format value address echo cluster ip cluster_ip replace the cluster ip address in the cluster_ip variable you need it later to specify it as the cluster ip cluster_ip cluster_ip reserve another static ip for the availability group listener and capture the address in a new environment variable named listener_ip gcloud compute addresses create wsfc listener ip subnet subnet_name region gcloud config get value compute region listener_ip gcloud compute addresses describe wsfc listener ip region gcloud config get value compute region format value address echo listener ip listener_ip note make sure that the ip address is in the same region as your sql server cluster replace the load balancer s reserved ip address as the listener_ip variable you need it later to configure your availability group listener_ip listener_ip your project and vpc are now ready for the deployment of the windows server failover cluster and sql server deploying the failover cluster you can now use the vm instances to deploy a windows server failover cluster and sql server the following sections discuss how you can do this in detail preparing sql server create a new user account in active directory for sql server using the following steps connect to node 1 by using remote desktop sign in with your domain user account right click the start button or press win x and click windows powershell admin confirm the elevation prompt by clicking yes create a domain user account for sql server and the sql agent and assign a password credential get credential username sql_server message enter password new aduser name sql_server description sql admin account accountpassword credential password enabled true passwordneverexpires true note if you use managed ad append path ou cloud dc example dc org to the command to create the user in the cloud organizational units ou ensure that the value of the path is the output of the following command get adorganizationalunit filter name eq cloud select object expandproperty distinguishedname to configure sql server perform the following steps on both node 1 and node 2 use the following steps open sql server configuration manager in the navigation pane select sql server services in the list of services right click sql server mssqlserver and select properties under log on as change the account as follows account name domain sql_server where domain is the netbios name of your active directory domain password enter the password you chose previously click ok when prompted to restart sql server select yes sql server now runs under a domain user account warning make sure you ve completed the previous configuration steps on both vm instances otherwise setting up the always on availability group will fail create file shares create two file shares on the vm instance witness so that it can store sql server backups and act as a file share witness connect to witness by using remote desktop sign in with your domain user account right click the start button or press win x and click windows powershell admin confirm the elevation prompt by clicking yes create a witness file share and grant yourself and the two cluster nodes access to the file share new item c qwitness type directory icacls c qwitness grant node 1 oi ci m icacls c qwitness grant node 2 oi ci m new smbshare name qwitness path c qwitness description sql file share witness fullaccess env username node 1 node 2 create another file share to store backups and grant sql server full access new item c backup type directory new smbshare name backup path c backup description sql backup fullaccess env userdomain sql_server create the failover cluster to create the failover cluster use the following steps return to the remote desktop session on node 1 right click the start button or press win x and click windows powershell admin confirm the elevation prompt by clicking yes create a new cluster new cluster name sql cluster node node 1 node 2 nostorage staticaddress cluster_ip replace cluster_ip with the cluster ip address that you created earlier note when computer objects are created outside the container computers in an ou the permission create computer objects must be delegated to the cluster s computer account in the ou return to the powershell session on witness and grant the virtual computer object of the cluster permission to access the file share icacls c qwitness grant sql cluster oi ci m grant smbshareaccess name qwitness accountname sql cluster accessright full force return to the powershell session on node 1 and configure the cluster to use the file share on witness as a cluster quorum set clusterquorum filesharewitness witness qwitness verify that the cluster was created successfully test cluster you might see the following warnings that you can safely ignore warning system configuration validate all drivers signed the test reported some warnings warning network validate network communication the test reported some warnings warning test result hadunselectedtests clusterconditionallyapproved testing has completed for the tests you selected you should review the warnings in the report a cluster solution is supported by microsoft only if you run all cluster validation tests and all tests succeed with or without warnings you can also launch the failover cluster manager mmc snap in to review the cluster s health by running cluadmin msc if you re using managed ad add the computer account used by the windows cluster to the cloud service domain join accounts group so that it can join computers to the domain add adgroupmember identity cloud service domain join accounts members sql cluster enable always on availability groups on both nodes enable sqlalwayson serverinstance node 1 force enable sqlalwayson serverinstance node 2 force creating an availability group you now create a sample database bookshelf include it in a new availability group named bookshelf ag and configure high availability creating a database create a new database for the purpose of this tutorial the database doesn t need to contain any data return to the remote desktop session on node 1 open the sql server management studio in the connect to server dialog verify the server name is set to node 1 and select connect in the menu select file new query with current connection paste the following sql script into the editor create a sample database create database bookshelf on primary name bookshelf filename d data bookshelf mdf size 256mb maxsize unlimited filegrowth 256mb log on name bookshelf_log filename d logs bookshelf ldf size 256mb maxsize unlimited filegrowth 256mb go use bookshelf set ansi_nulls on set quoted_identifier on go create sample table create table dbo books id bigint identity 1 1 not null title nvarchar max not null author nvarchar max null publisheddate datetime null imageurl nvarchar max null description nvarchar max null createdbyid nvarchar max null constraint pk_dbo books primary key clustered id asc with pad_index off statistics_norecompute off ignore_dup_key off allow_row_locks on allow_page_locks on on primary on primary textimage_on primary go create a backup exec dbo sp_changedbowner loginame sa map false alter database bookshelf set recovery full go backup database bookshelf to disk witness backup bookshelf bak with init go the script creates a new database with a single table and performs an initial backup to witness select execute to run the sql script configure high availability you can now configure high availability for the availability group using either t sql or sql server management studio using t sql to configure high availability for the availability group using t sql use the following steps connect to node 1 and then execute the following script to create the bookshelf ag availability group create login net_domain sql_server from windows go use bookshelf create user net_domain sql_server for login net_domain sql_server go use master create endpoint bookshelf_endpoint state started as tcp listener_port 5022 for database_mirroring role all go grant connect on endpoint bookshelf_endpoint to net_domain sql_server go note in the net_domain sql_server login and user net_domain is the netbios name of your active directory domain connect to node 2 and execute the following script create login net_domain sql_server from windows go create endpoint bookshelf_endpoint state started as tcp listener_port 5022 for database_mirroring role all go grant connect on endpoint bookshelf_endpoint to net_domain sql_server go note in the net_domain sql_server login and user net_domain is the netbios name of your active directory domain on node 1 and then execute the following script to create the bookshelf ag availability group use master go create availability group bookshelf ag with automated_backup_preference secondary cluster_type wsfc db_failover on for database bookshelf replica on n node 1 with endpoint_url tcp node 1 5022 availability_mode synchronous_commit failover_mode automatic backup_priority 50 seeding_mode automatic secondary_role allow_connections no n node 2 with endpoint_url tcp node 2 5022 availability_mode synchronous_commit failover_mode automatic backup_priority 50 seeding_mode automatic secondary_role allow_connections no go in the following script replace listener_ip with the ip address that you reserved earlier for the internal load balancer and execute it use master go alter availability group bookshelf ag add listener n bookshelf with ip n listener_ip n 255 255 255 0 port 1433 go connect to node 2 and then execute the following script to join the secondary replica to the availability group and enable automatic seeding use master go alter availability group bookshelf ag join alter availability group bookshelf ag grant create any database check the status of the availability group select from sys dm_hadr_availability_group_states go you should see synchronization_health_desc as healthy using sql server management studio to configure high availability for the availability group using sql server management studio use the following steps in the object explorer window right click always on high availability and then select new availability group wizard on the specify options page set the availability group name to bookshelf ag then select next on the select databases page select the bookshelf database then select next on the specify replicas page select the replicas tab select add replica in the connect to server dialog enter the server name node 2 and select connect the list of availability replicas now contains sql server instances node 1 and node 2 set the availability mode to synchronous commit for both instances set automatic failover to enabled for both instances select the listener tab select create an availability group listener enter the following settings listener dns name bookshelf port 1433 network mode static ip select add and enter the listener ip address listener_ip that you reserved earlier for the internal load balancer then select ok select next on the select data synchronization page select automatic seeding on the validation page verify that all checks are successful on the summary page select finish on the results page select close create internal load balancers and health checks the cluster ip represents a single endpoint for the windows failover cluster you use it for administrative purposes and managing cluster resources the cluster ip always points to the host or primary node of the cluster you deploy an internal load balancer that uses a health check that ensures that traffic is directed to the host node of the cluster as wsfc tooling requires multiple protocols to be available for forwarding icmp udp and tcp we recommend deploying an internal load balancer with multiple protocols that support all ports to deploy an internal load balancer use the following steps return to your existing cloud shell session create two unmanaged instance groups one per zone and add the two nodes to the groups region gcloud config get value compute region gcloud compute instance groups unmanaged create wsfc group 1 zone zone1 gcloud compute instance groups unmanaged add instances wsfc group 1 zone zone1 instances node 1 gcloud compute instance groups unmanaged create wsfc group 2 zone zone2 gcloud compute instance groups unmanaged add instances wsfc group 2 zone zone2 instances node 2 create health check for the cluster ip that the load balancer can use to determine which is the active node from the windows cluster perspective the default port which the compute engine guest agent responds to health checks is 59998 the health check provides the cluster ip address in the request and it expects 1 as a response returned from the active node gcloud compute health checks create tcp wsfc healthcheck request cluster_ip response 1 check interval 2s healthy threshold 2 unhealthy threshold 2 port 59998 timeout 1s create a backend service and add the two existing instance groups gcloud compute backend services create wsfc backend load balancing scheme internal region region health checks wsfc healthcheck protocol unspecified gcloud compute backend services add backend wsfc backend instance group wsfc group 1 instance group zone zone1 region region gcloud compute backend services add backend wsfc backend instance group wsfc group 2 instance group zone zone2 region region create the internal load balancer associated with the cluster ip gcloud compute forwarding rules create wsfc load balancing scheme internal address cluster_ip ports all network vpc_name subnet subnet_name region region ip protocol l3_default backend service wsfc backend to provide a single endpoint for sql server clients that want to connect to any database in your bookshelf availability group deploy a new interna...
Images from subpage: "docs.cloud.google.com/compute/docs/troubleshooting/vm-startu... " Verify
Images from subpage: "docs.cloud.google.com/compute/docs/troubleshooting/fstab-err... " Verify
Images from subpage: "docs.cloud.google.com/compute/docs/troubleshooting/kernel-pa... " Verify
Images from subpage: "docs.cloud.google.com/compute/docs/troubleshooting/collectin... " Verify
Images from subpage: "docs.cloud.google.com/compute/docs/troubleshooting/rescue-vm... " Verify

Top 50 hastags from of all verified websites.

Supplementary Information (add-on for SEO geeks)*- See more on header.verify-www.com

Header

HTTP/2 200
last-modified Wed, 15 Jul 2026 17:18:40 GMT
content-type text/html; charset=utf-8
vary Cookie
vary Accept-Encoding
content-security-policy base-uri self ; object-src none ; script-src strict-dynamic unsafe-inline https: http: nonce-CNXEnLqh9YxYCk4O0rHa9uHFhd4hp4 unsafe-eval ; frame-ancestors self htt????/developers.google.com/_d/analytics-iframe; report-uri htt????/csp.withgoogle.com/csp/devsite/v2
strict-transport-security max-age=63072000; includeSubdomains; preload
x-xss-protection 0
x-content-type-options nosniff
cache-control no-cache, must-revalidate
expires 0
pragma no-cache
content-encoding gzip
x-cloud-trace-context b18c635239727ace3a5ed720c3d6e304
date Sat, 18 Jul 2026 03:05:10 GMT
server Google Frontend
content-length 60451
alt-svc h3= :443 ; ma=2592000,h3-29= :443 ; ma=2592000

Meta Tags

title="Configure SQL Server Always On availability groups with synchronous commit using an internal load balancer  |  Compute Engine  |  Google Cloud Documentation"
name="google-signin-client-id" content="721724668570-nbkv1cfusk7kk4eni4pjvepaus73b13t.apps.googleusercontent.com"
name="google-signin-scope" content="profile email htt????/www.googleapis.com/auth/developerprofiles htt????/www.googleapis.com/auth/developerprofiles.award htt????/www.googleapis.com/auth/devprofiles.full_control.firstparty"
property="og:site_name" content="Google Cloud Documentation"
property="og:type" content="website"
name="theme-color" content="#1a73e8"
charset="utf-8"
content="IE=Edge" http-equiv="X-UA-Compatible"
name="viewport" content="width=device-width, initial-scale=1"
property="og:title" content="Configure SQL Server Always On availability groups with synchronous commit using an internal load balancer  |  Compute Engine  |  Google Cloud Documentation"
property="og:url" content="htt????/docs.cloud.google.com/compute/docs/instances/sql-server/configure-availability"
property="og:image" content="htt????/docs.cloud.google.com/_static/cloud/images/social-icon-google-cloud-1200-630.png"
property="og:image:width" content="1200"
property="og:image:height" content="630"
property="og:locale" content="en"
name="twitter:card" content="summary_large_image"
name="gtm_var" data-key="docType" data-value="tutorial"

Load Info

page size399867
load time (s)0.834459
redirect count0
speed download72483
server IP 172.217.22.174
* all occurrences of the string "http://" have been changed to "htt???/"