Gjek
November 17, 2019, 7:33pm
1
Hello
I am trying to do the following with Traefik 1.7.
https://docs.couchbase.com/sync-gateway/2.1/load-balancer.html
The https work. I can’t get the websocke to work.
@simon.murray
2019-11-17T19:12:01.224Z [DBG] WS+: c:[18366323] Push RPY#6
2019-11-17T19:12:01.224Z [DBG] WS+: c:[18366323] Sending frame: RPY#6 (flags= 1, size= 10)
2019-11-17T19:12:01.401Z [DBG] WS+: c:[18366323] receiveLoop stopped
2019-11-17T19:12:01.401Z [DBG] WS+: c:[18366323] parseLoop stopped
2019-11-17T19:12:01.401Z [DBG] WS+: c:[18366323] Sender stopped
2019-11-17T19:12:01.401Z [INF] HTTP: c:[18366323] #36405: --> BLIP+WebSocket connection closed
I’ve never worked with Traefik but in the case with certain other edge routers/load balancers/ reverse proxies, we’ve had to specifically enable websockets . So you may want to double check the configuration to ensure that websockets is enabled and also configured to allow the designated Sync Gateway ports (defaults to 4984 for public)
Gjek
November 17, 2019, 8:02pm
3
https://docs.couchbase.com/sync-gateway/2.1/load-balancer.html
that example uses nginx and uses port 80 and then sends the Traefik to port 4984 so I suppose that it should work.
However am getting an error. Replication starts but then the websocket is closed
Gjek
November 17, 2019, 9:13pm
5
@priya.rajagopal
i have attached logs. i create new docs and it syncs but the ws connection closes
Gjek
November 17, 2019, 9:15pm
6
@simon.murray
running sync gateway in kubernetes with Traefik ingress controller
I don’t see any errors in the logs. It seems like documents were synced and replicator closed gracefully.
2019-11-17 09:07:22.251+00:00 [6]| INFO) [Replicator] {Repl#7} Saved local checkpoint cp-r1rJEUs1cQmBSwqVXJahNXGsvsk= to db
2019-11-17 09:07:22.255+00:00 [6]| INFO) [Replicator] {Repl#7} Replication complete! Closing connection
2019-11-17 09:07:22.416+00:00 [61]| INFO) [Replicator] (WebSocketWrapper) [61] Closing socket normally due to request from LiteCore
2019-11-17 09:07:22.423+00:00 [61]| INFO) [Network] {C4SocketImpl#14} Socket disconnected cleanly
Do you have replication enabled in continuous or one-shot mode?
If it’s not continuous then the socket connection will close once the pending documents are synced. If you want to have the documents to be synced continually any time there is a change, then setup the replicator in continuous mode which will keep the web socket connection open.
(which IIRC is the default mode)
Gjek
November 18, 2019, 10:21am
8
hello @priya.rajagopal
I managed to fix the issue with couchbase mobile .net core version 2.6. That seems to be working and syncing
However am having a issue with the Android mobile 2.5
2019-11-18T09:37:49.167Z [DBG] Changes+: c:[587e2fb9] MultiChangesFeed waiting… (to ResidentTablet123)
2019-11-18T09:37:49.167Z [DBG] Changes+: No new changes to send to change listener. Waiting for “carevisit-dev”'s count to pass 0
2019-11-18T09:37:49.167Z [DBG] Sync+: c:[587e2fb9] Sending 1 changes. User:ResidentTablet123
2019-11-18T09:37:49.167Z [DBG] Sync+: c:[587e2fb9] Sending 0 changes. User:ResidentTablet123
2019-11-18T09:37:49.167Z [DBG] WSFrame+: c:[587e2fb9] Queued MSG#1~
2019-11-18T09:37:49.167Z [DBG] WS+: c:[587e2fb9] Push MSG#1~
2019-11-18T09:37:49.167Z [INF] Sync: c:[587e2fb9] Sent all changes to client. User:ResidentTablet123
2019-11-18T09:37:49.167Z [DBG] WS+: c:[587e2fb9] Sending frame: MSG#1~ (flags= 101000, size= 51)
2019-11-18T09:37:49.196Z [DBG] WS+: c:[587e2fb9] Received frame: MSG#3!~ (flags= 11000, length=4090)
2019-11-18T09:37:49.197Z [INF] WS: c:[587e2fb9] ERROR decompressing frame: inputLen=4090, remaining=0, output=0, error=unexpected EOF
2019-11-18T09:37:49.197Z [INF] WS: c:[587e2fb9] Error receiving frame MSG#3!~: unexpected EOF. Raw frame = <0318549bc9ae60b99696790be6775c96dc37635e807989815b40421482f797f8fe6d9fd439a55ba9c88c081f7b357fb3ecfd9fffebfffd8ff33fffd7fe4fffe7fffec7fff98fffb7ffcbffe8fffbbfeffff79ffefddfff15e629bb2f6ffaf0cec47e8669230f13478d7d2edf523bfffab77f3973e2b069afed4e3bc987325d1f2e9f506ad8b174cf1ffad7bff968ffdbbffdfbbf460bd1d69e4d2eb598681dcb9f354dad2555fefcb4277c8bf6906be9b6e7b2eb1e8d7f941db3f363b8befa48bf175db19d9dfa3665e66ea29bded459f995772996135c58ee5b74e76d5b74c1f65a578a8edf6e319fba864bceb9fa7b513faadb352d534264a7dd36d3da0e26a5bcbd4dc5f9b2bf457de8e38cc2b96bb02e8c1df9dfb275d89d6a48f1f7a2ec2f13c864ca582c9a59b4679b4d2965b6d30631ecdfa276ae13ea99c4312db696eaf06707bffab165c5f27bd1ba59279e6894050e1d593436b2b5770b95ffdbcd7e8bd6dadab2619598679b7ead3c7bb0d3876a733c7efe89a99f29c4988c5f639b985a37c312dd35061b1a6ecc711365cbb0c10697f68c7b8652b62aa3f47472a8b98edf8bee183d991e26ec46492d9f4c9f671a7baa0de5d4e9dc5d34cf1d921d6590cbb8d3d26aecdeb6e648e7fab368f1d6dbde8f61e9ca4e5736b54fb69b7a997ed8516bfc169d91309fbdfc881c82656df76d8fb2fab6a79ffc27fbd45899659963138bbae0cc20ef6cd773b4e15a9de5167faa6c761e4b13945e77a06e478973d59953dafbcfa29604931533fd8cec3414438d0fb3bb737445caf91d3f244f56d2f47453daad77ebc3dea5b8e8b78f7f8b5f3d418abc29761c13cbdaa6711a330f91f269851e6ff17be7cfaac9c7e07b5cb9c6b0dd749518c4be72ff53fc9488ef79065357b126921933d4a6616e3b096b6db3dd922a2727777c9b36cdca0e3d593aadb5e44af3eb4f9d8eee57dc7699a94892a8a48adcc6a7dcfd013df6f6dfa271264a6a8e316d000796f5cd0d6bcb2e54cc3e7f625a5c0b9e7099e629f938b3a3ee5733a987c0c132a872518ae28da7e5d47df075d05a6738b7738ebe9416c3df980e1025baaf99c8be1d243ea5667cf13101413eeff52d3a96cb3ec419d3e83d9f6e23ff5e7ca2a8c2616b6f51ff2d1a52f0b614d3d208f4fe64cfc37ae3c6f22b349fdc87a791e62dde679781922958e9cd4d7a2ca4b1eca26dbf4583cf5ab4d3b6b1ee6a5c5e94d406f5aaa3a308735d21bb35e3dde901ce0248179bb3c50229beb85cedccd54d7adfffdee999a3fab0ac394b6d6a77a1eec12b4f4a00af3901866f519766616b3d1cdbe3f0f558fa967dc6535ab1ffe0e9b7686c255201d3b895a6e8249a56e3307dfb32d9694f7ddee2efec8a929f966dd6e4ea72a5d22cb38ece766fa25cfd1615f4ac7dc8ae3be0299865e83e2a0c3055b10440e85b744d5be25a966d015fb3fa4265b816f7b031f203dea2f16bd33973a657e9cb404c2b1d50c3a0814aa26a92f7bbde3a0d25575a7652eb67c4057f8519565cb1ef4a7e2ef2b3f90ffaba3d6cb29b12ad88af5728ce46a2d106243b832b3751fb4478b084be0611eb415dd37b8badf933f64329d7be3a8db002d8a5744f415fa8a69e928ca06843c554ea45fe453e66b776870208d212db43a3b6ee337aa120def1eb8da9dd2daf6ea8e00c486bd10547d546a5e740afe74b7c2adac68eb64b7d39c879b6e4ed01e4ed0a2ea7dfc767f7ae87764c401880a79e98722e63adf7a5a96f46bebc9febde146409b640db7b05db76cf2d3b5bf9c3e3edf4a2945bbdedc2f14762a7eccc8c98331cd5ec76680f18e8d24915d9a53c48504c89a6f00bb1c2cf190894527e97546bb9b811e064d794a8524da35b386d74f44a412e5c40c9beb12f2adeafeaac4ba0224b74187614aabbffdee9b6bb276a0d101647ad2d2d45f67399f3c0cf50edb880423d372a8993f6be5967c1ba754ca10ee4557ec774c0fbc19e6cd05e207f7203e20b10014407dad90875dc45476e67adb322fcbb6c69d5c1f708298a124c39bf8fbf810de4cd30850371fc08a074f41fac477f835fb0cc4d54f7ac4a0b0377d675bb2749a0eca88a3a40966f5158ed5b74c2e63150fc0efc8bc82daaa9362339d6a1d40dbd5d40a173529db3a6839e64272e37feb4eb007bb6e367d10ffa4670230598a41dda2a668a75a0c90c593e106f837fdd4bd44ec812253c403aae4de8d957b0bebb65a7a45001b5affc49f686e183faec8db75fc27aa4a9da4204c09cb31146bf1f57ed992d8bcf1676ca0b7e297bd51c2c0ad0db45440e1ae17216c579457007547734e84512171bcd50bd07f928f6a456daaadb5c1bfac84d5b29b34c00462236fe9442bb4c629ccfbc05d1fc57651dfd6d012718d5b369480a7e5ec39cda4669b9b7f9e90b4f95758f0887c94583bb9d32c52ff0fc0979fc84b97d9b2d03763ca0e1acc29842dac6e157c3d642ed03a2fe762e241da12d113931a0224e45b84a90c4097013a2ce4fb0976940d16f71045319646ece0edbf61a4c2f8d9f8084469a0159f59242b52ecfe82cfcefd02f74aecb7bf4bcc3c82af717de7af530cdcd91cd06c94d0cdfa21377d0aaed9672ea697d610807318d76a5c3f2c8d6a29b42aa284302cf512ed624f78501a8e1fcec14f9294990c16f708182a08f07c206017475c686622a4c0924389b4377a3ad49c18937aa30752039c2950640d447b86ea1a2f156d3e308e2c8702355695ae6047beff0536d8edea06339820de80972902a4a059be061a2828cc11c5040bfc35128e5ba9a379988526d13d549208d4ac0636be2681725f7c82c8aa03b3d23e55b240c0ed54887b41a3ac40a67b87513182fab4f906e8d90d82f1a31563453cb6826f609cecc45a0fc17ebd5505915a3121a2127711b811c2a023fe967f6dfcd47acc38299e83b72170fe8d6c009e3f7a13a3c01ee577cfb1da84d5f03205e6bef98ba3cf803ab73e884d85b6dbbf2740840a5c5135a9292af122fda319cc4668b91bcf4ada68993fc164f48195c24ad0a44132c7ef36c8e6529622972f47a87a6dfce5dbc066767072498800394ff44df80a1060dbfab3d8e6ebe8baf455bf0f35a2c8d820208d79a08248a86cd39081fb8a9fd25327e55127b4f05e56af2c9348b34ff67c883787d4f47fd5e12c1ac41f707f379d2046c0a2514913b1d5ae010ed0025c4327c8b53391fed753456c2998e2ff01b71ded0e1886944bd75eb50b65f22e9514449c056a179fd1e75282e7819c037f5f8dafbe27e801d3636dac8b4b263f93d3c8939a84f44347f3b5f258528c03374ea58a2ff04b4db467d2d50bcf675589fe3d5eeaef46ddfe211218fe6f6883dd83ace213d4de7a0fc4fcacdcbdadf2ac919db8de376fd4896698c601358ea40a1219ba36496bb38fafe6b1a009c1a6aa6264018458301823d4c2a14c5d614e1cc2f1c09eacefa012e11ed68e194b621a326daf6ebe1fedd710aae0e8c01aaa7099f3bf07180eb489b63d98085a63f5f8d3fd4135a15e929bf43b164d59f853e670480aeae0edfa25466cbc315b8d5b153ba145742dba0cc004d8c15b07fdb1b750cca7994a514351958bb9784f3a2f6425da04c00a8fb9f181fa4e9dad974043e09a44ff00f80205b9d5ba26e5f35b0ad5c48af145eee09ff5dc5284ed2d86296fd7428bce4ff24104319364c6676ee53bd4e277ed571d22a788dd8fcad0eb6d629623864e269883340ddd1cb6c1fa71dd9478ec4f5d673bc612939afb35170074bc2e299541247b3c5b94866048bea3998a09eb52bd13dd4193a7c3bd451b6256ba4312e095c655c03943b1225e610d960f7902896815d367c44b0d3e7e076d32c62cd63e9088b85092005624511c0f0dffcb90b196e78e4d946660d19ce7c603fce0647670fe23a8d13aee02a03725a314cb750c31ad94408056d91cfc69a1cf479e09cbf438cd3296e62872b6d0a15a2602a12d620e2e81522045a3ed9dd20aa31f0981ca4c08711c37f26068fde8b7f7aa3f13b83ea91cda0f150a9a6ad2027978ed40fbd13be309470e8948a8edfbd0f0a09e780facef8ac9cb02cbfc320e6cdb1902ad89d7f78d45c2be82b44187abe7aacecd770f49638cfa6094bc970ece1021ccf090f09f801b5ebb80396777633814e569a3231ac393d12b1f84dd53c294f0db4048dcc4503b413f00561b741510428b63cd9f92dda9373840fb089da28d5821068ac1c091e544d1dab8570215e3555fb818080787e324743d747cdb2527a46ee2ac28dc6e3ef22b357a315a80732e23a82d623b3cf38bd5e2c43c1399f29248cbf9d89decee7e4d92cad4994d31357dfa2fe402d00343b61294418e81be5637b44f8ec493b5f64c018a2da40f362e7e80dcd853ec0f3e16b16feb09f5dd1cae787f8efe0a1b98629a60db668b4238a305d879a38c082c77b7eb32ffe8093e8a665f55fc75ef8ed90e066320c3352b82fb857c11e1c5da2b9d0eee41e04379586e7d85b39de2d7ccc9f2495c935b214638bd6a324e1e485396f11e9565f87dd690e9ada26db052cb819596a9a6b83b2d80c102fc512cf1b6685e4a6af16e40927e3006054fcbdab194f78c6ef3210e988058c4483c619dbb4300f3aa7e355dba836b5af5ee53491f8dd2a413072286ccb913bd43260f2231fbea0cec54665e5279042192cc178046fd6847868e45aaf9f6f2b6772b335a820d2d9e3ae3ef5e0e6a1e86b73be51c8f1f78e1765989b13824f621b55c2608f599f0b0820f7a71b710e35a19f2278333aca883f0ea31e3f5143731f5ae26e397cc1a519d01f1abd518c14590016880d0c710a1a8840fbf5140fd04d6c81ec76b08e3e218551d06397ede23f7ef1dbaa2553078436ac31d4f1886d9749d03800e829cbbd89f6cc6c0d7d0d12d2cd38c6c80171d36dc4e830fcf9a4907a7df0e5ae17f72de104374a5db4d3acd69dd650f3213521d50722d41f7e79cb92b9dd1d521549bcd41ae022154cd75d1abe36696348a03bc8f7331d357f6a047d1010a713c98b28fdf8a6e083347806bdf052e1c0814ef347c8be9c3b03fbe19bd604c49a149167768acd45246583fe6d2ed512ef4080fdbb4e37934d4c03e22e56809e8c16cdcc0b3eec1dff03da73c2a4f7f01a839a8d51b7053e82817151073895fd8d2234f496fa25e26be812e1b04fc2f30dc03c0dbd7f8b108a6dc05c5021750e7a5305ddd16278925c4931ea2ebf6ea8d0a4463930c0408d716230b3a40c989d87de3f1e1cbd1caa0db89ecc4e43020c0aaeb9d9b8563fd9bb7cc790f8157e9a033800e65c6cc1367add5101ff6b534a248e5fa53f1efc0ccf6ac5a0e69afc1c02af2fdd4c200957c5f58f2ba6a1a36439345c872203085054277cea9d2dc409ee73dc37934720dca1b4e74fd2c280a6d310991481a1c404786467d5dbfec118a55fe0c213a2737b2f54cc8271a3c00231ddde501a50b8e540dc321be55847be167ed0fc7c6ffeca7105f33d9eaf8521b181d942b5336918d64108312b25b3f8e1149d7de890e2d54b0814987c61f3074a8fce3523c145baea3ab3389af7d65a4a2e2d1c32261bd7da945e7f26bf5b7a5b70a84b6175627f83edef44154187153e3065d79c72c820266f28aad97787736a7b9e8b6c818a6b011f077e47974534669fc8aefe145eca77512cb78f80b9ffa6d48b16eedb77a38d0cd5f5a877c773148b44660bba511b002fecbe22f086f38feec17afb166d08004fc40cfc222216a3c135602671a3195d68d7cfe6>
2019-11-18T09:37:49.197Z [INF] WS: c:[587e2fb9] Error: parseLoop closing socket due to error: unexpected EOF
2019-11-18T09:37:49.197Z [DBG] WS+: c:[587e2fb9] parseLoop stopped
2019-11-18T09:37:49.197Z [INF] WS: c:[587e2fb9] BLIP/Websocket Handler exited: unexpected EOF
2019-11-18T09:37:49.197Z [INF] HTTP: c:[587e2fb9] #3818: --> BLIP+WebSocket connection error: unexpected EOF
2019-11-18T09:37:49.197Z [INF] HTTP: c:[587e2fb9] #3818: --> BLIP+WebSocket connection closed
2019-11-18T09:37:49.197Z [DBG] Changes+: Notifying to check for _changes feed termination
2019-11-18T09:37:49.197Z [DBG] SyncMsg+: c:[587e2fb9] #2: Type:subChanges --> Time:30.684057ms User:ResidentTablet123
2019-11-18T09:37:49.197Z [DBG] WS+: c:[587e2fb9] Sender stopped
2019-11-18T09:37:49.197Z [DBG] Changes+: No new changes to send to change listener. Waiting for “carevisit-dev”'s count to pass 6
2019-11-18T09:37:49.197Z [INF] Changes: c:[587e2fb9] MultiChangesFeed done (to ResidentTablet123)
Hi Gjek/Priya
Even though this post was long time ago but I would like to check whether we have a solution for this issue recently.
I have the same issue when deploying the couchbase server and sync gateway to k8s environment. The sync gateway is running in Kubernetes with Traefik ingress controller.
@Tuan_Duc_Vo Please share in your post, the details of the issue that you are observing along with the relevant logs and specifics of your environment.
In general, there is nothing fundamentally different w.r.t the sync gateway being deployed on Kubernetes versus a non-containerized environment. If you have a load balancer, make sure that it is configured correctly per guidelines here