NS8 unstable Websocket

NethServer Version: 8
running on proxmox, in a debian 11-VM

I rather urgently want to set up a new NS to replace my outdated Windows Server. For testing purposes I set up an NS7 years ago which was rock solid (at least regarding update itself and the sogo calendar.

Now I tried to migrate the setup to NS8 several times. Never successful. I always had issues that prevented completing the migration process.

Since the ns7 it does not has that important imformation, I decided to build up the ns8 completely new.

I always have “Websocket disconnected → reload” issues (every one or two minutes). This is quite annoying but still OK.

After creating a new samba-AD I wanted to create users for file services, Mail and contacts and calender.

Unfortunately I always get an error when I open the “users and group” page of the domain ( Domains and users firma.local users and groups)


{
  "context": {
    "action": "list-domain-users",
    "data": {
      "domain": "firma.local"
    },
    "extra": {
      "eventId": "e7178c96-6049-4aa8-9d06-147b819f56f7",
      "isNotificationHidden": true,
      "title": "List domain users"
    },
    "id": "f446e8a4-6c1f-46e1-8177-63045a830fd4",
    "parent": "",
    "queue": "cluster/tasks",
    "timestamp": "2023-07-19T18:17:28.428503933Z",
    "user": "admin"
  },
  "status": "aborted",
  "progress": 0,
  "subTasks": [],
  "validated": false,
  "result": {
    "error": "Traceback (most recent call last):\n  File \"/var/lib/nethserver/cluster/actions/list-domain-users/50list_users\", line 33, in <module>\n    users = Ldapclient.factory(**domain).list_users()\n  File \"/usr/local/agent/pypkg/agent/ldapclient/__init__.py\", line 29, in factory\n    return LdapclientAd(**kwargs)\n  File \"/usr/local/agent/pypkg/agent/ldapclient/base.py\", line 37, in __init__\n    self.ldapconn = ldap3.Connection(self.ldapsrv,\n  File \"/usr/local/agent/pyenv/lib/python3.9/site-packages/ldap3/core/connection.py\", line 363, in __init__\n    self._do_auto_bind()\n  File \"/usr/local/agent/pyenv/lib/python3.9/site-packages/ldap3/core/connection.py\", line 387, in _do_auto_bind\n    self.open(read_server_info=False)\n  File \"/usr/local/agent/pyenv/lib/python3.9/site-packages/ldap3/strategy/sync.py\", line 57, in open\n    BaseStrategy.open(self, reset_usage, read_server_info)\n  File \"/usr/local/agent/pyenv/lib/python3.9/site-packages/ldap3/strategy/base.py\", line 146, in open\n    raise exception_history[0][0]\nldap3.core.exceptions.LDAPSocketOpenError: socket connection error while opening: [Errno 111] Connection refused\n",
    "exit_code": 1,
    "file": "task/cluster/f446e8a4-6c1f-46e1-8177-63045a830fd4",
    "output": ""
  }
}

Is there nobody who has an idea what I can do or is this question written too complicated?

:sob:

Do not have the answer but if it helps investigate:

1 Like

There is a card about a similar issue in Trello. I didn’t experience the disconnection so early though. Check the browser console (often by pressing Ctrl + Shift + J): any error message?

As Mark quoted in the previous post, the issue origin is not evident. Without further information what you could do is:

  1. Reboot the server. A reboot might start a stopped service.
  2. Remove the Samba domain and recreate it. IIUC it is a new installation so you should not loose any data in this case.

Thank you for your answers.

The idea with the console was good. I did not think about that.

I indeed get a “query token is empty” and then “Axios interceptor detectet 401, logout”.

Do you think, it is worth it to look for a solution? I am a little bit sad that it does not run “out of the box” but I might get the motivation to just create a new setup (VM including NS8) :cowboy_hat_face: as there are no “important things used yet”.

Some points:

  • I disabled the adblocker that blocks e.g. Google stuff (gstatic). No change.
  • Restarting the server was one of the actions, of course.
  • IPv6 in the VM is disabled (if I recall right)
  • I use the local IP not an fqdn
  • restored the VM snapshots several times while trying to migrate to the ns7, but I do not think this would interfere here

This is the console log from first load, login, opening provider and clicking on domain’s users and groups. I just hat to remove most of the stuff since my message got too long and upload of the log file is not allowed.

GET
https://192.168.50.253/cluster-admin

.......

App.vue:201
query token is empty App.vue:205
Axios interceptor detected 401, logout App.vue:210
error retrieving task info Error: Request failed with status code 401
    exports chunk-vendors~2a42e354.311e3352.js:1
    exports chunk-vendors~2a42e354.311e3352.js:1
    v chunk-vendors~2a42e354.311e3352.js:1
    exports chunk-vendors~2a42e354.311e3352.js:1
    exports chunk-vendors~2a42e354.311e3352.js:1
    exports chunk-vendors~2a42e354.311e3352.js:1
    request chunk-vendors~2a42e354.311e3352.js:1
    t chunk-vendors~2a42e354.311e3352.js:1
    exports chunk-vendors~2a42e354.311e3352.js:1
    getTaskContext chunk-vendors~86f6b1bc.005520b9.js:1
    s notification.js:191
    f runtime.js:63
    x runtime.js:294
    E runtime.js:119
    Babel 4
    handleProgressTaskMessage notification.js:190
    handleTaskMessage websocket.js:54
    onMessage websocket.js:39
    value chunk-vendors~cf55716b.582158e3.js:1
    value chunk-vendors~cf55716b.582158e3.js:1
    e chunk-vendors~cf55716b.582158e3.js:1
    value chunk-vendors~cf55716b.582158e3.js:1
    value chunk-vendors~cf55716b.582158e3.js:1
    t chunk-vendors~cf55716b.582158e3.js:1
    $connect chunk-vendors~cf55716b.582158e3.js:1
    initWebSocket websocket.js:13
    retryWsConnectionInterval App.vue:432
    setInterval handler*onWebsocketDisconnected App.vue:430
    re chunk-vendors~d2305125.6a99a4ff.js:7
    $emit chunk-vendors~d2305125.6a99a4ff.js:7
    onClose websocket.js:77
    value chunk-vendors~cf55716b.582158e3.js:1
    value chunk-vendors~cf55716b.582158e3.js:1
    e chunk-vendors~cf55716b.582158e3.js:1
    value chunk-vendors~cf55716b.582158e3.js:1
    value chunk-vendors~cf55716b.582158e3.js:1
    t chunk-vendors~cf55716b.582158e3.js:1
    $connect chunk-vendors~cf55716b.582158e3.js:1
    initWebSocket websocket.js:13
    re chunk-vendors~d2305125.6a99a4ff.js:7
    $emit chunk-vendors~d2305125.6a99a4ff.js:7
    loginSuccessful Login.vue:326
    e Login.vue:262
    f runtime.js:63
    x runtime.js:294
    E runtime.js:119
    Babel 6
    checkPassword Login.vue:234
    submit Login.vue:3
    re chunk-vendors~d2305125.6a99a4ff.js:7
notification.js:194:16

Stupid me!

Turns out, the NS8 got an IP I already gave to one of the Proxmox servers interfaces.

I just wonder how “stable” everything was although I had two machines with the same IP address.

I guess that also explains the migration errors. Since the script does not support Deb 11 anymore I was not able to test it. A short test on new setup debian 12 with a test migration seems to be successful on the first run.

Since I already use the SOGO calendar on a few clients I cannot really use the migration. So I will create a new server and try to use some sort of CALDAV-sync tool later.

Thanks anyways!

2 Likes