XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Netdata package is now available in XCP-ng

    Scheduled Pinned Locked Moved News
    131 Posts 25 Posters 105.9k Views 14 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • LunarstarPonyL Offline
      LunarstarPony @stormi
      last edited by olivierlambert

      @stormi

      # do not edit, managed by XCP-ng
      
      [stream]
          # Enable this on slaves, to have them send metrics.
          enabled = yes
          destination = tcp:*********.****.****:19999
          api key = 0b607150-79c6-11eb-9575-c210359af93e
          timeout seconds = 60
          default port = 19999
          send charts matching = *
          buffer size bytes = 1048576
          reconnect delay seconds = 5
          initial clock resync iterations = 60
      

      I found these in stream.conf

      1 Reply Last reply Reply Quote 0
      • olivierlambertO Offline
        olivierlambert Vates 🪐 Co-Founder CEO
        last edited by

        Is the destination matches XO IP address?

        LunarstarPonyL 1 Reply Last reply Reply Quote 0
        • LunarstarPonyL Offline
          LunarstarPony @olivierlambert
          last edited by

          @olivierlambert
          Yup It does match XOA's IP Address

          1 Reply Last reply Reply Quote 0
          • olivierlambertO Offline
            olivierlambert Vates 🪐 Co-Founder CEO
            last edited by

            So check netdata logs in /var/log to see if there's any error.

            LunarstarPonyL 1 Reply Last reply Reply Quote 0
            • LunarstarPonyL Offline
              LunarstarPony @olivierlambert
              last edited by

              This post is deleted!
              1 Reply Last reply Reply Quote 0
              • stormiS Offline
                stormi Vates 🪐 XCP-ng Team
                last edited by stormi

                I see this, which looks good at first sight:

                2021-05-05 14:53:06: netdata INFO  : STREAM_SENDER[localhost] : STREAM localhost [send to tcp:XXX:19999]: connecting...
                2021-05-05 14:53:06: netdata INFO  : STREAM_SENDER[localhost] : STREAM localhost [send to tcp:XXX:19999]: initializing communication...
                2021-05-05 14:53:06: netdata INFO  : STREAM_SENDER[localhost] : STREAM localhost [send to tcp:XXX:19999]: waiting response from remote netdata...
                2021-05-05 14:53:06: netdata INFO  : STREAM_SENDER[localhost] : STREAM localhost [send to tcp:XXX:19999]: established communication - ready to send metrics...
                2021-05-05 14:53:07: netdata INFO  : PLUGIN[tc] : STREAM localhost [send]: sending metrics..
                

                (caution: your log contains the IP address you masked earlier)

                LunarstarPonyL 1 Reply Last reply Reply Quote 1
                • LunarstarPonyL Offline
                  LunarstarPony @stormi
                  last edited by LunarstarPony

                  @stormi Oh No, have any idea what might be the problem?

                  1 Reply Last reply Reply Quote 0
                  • stormiS Offline
                    stormi Vates 🪐 XCP-ng Team
                    last edited by

                    No, I don't know where the problem resides exactly.

                    1 Reply Last reply Reply Quote 0
                    • andrewm4894A Offline
                      andrewm4894
                      last edited by

                      Hello!

                      We have recently added some ml capabilities to netdata from netdata agent v1.32.0 onwards. Basically, its fairly lightweight unsupervised anomaly detection, so in addition to collecting raw metrics each second for about 1% cpu of one core (typically) and no extra storage the agent also can produce an "anomaly bit" that's 1 if recent data "looks" anomalous or 0 for normal.

                      Some of our users have asked about if this ML capabilities would work on netdata within XCP-ng.

                      I'm trying to figure out if/how i might go about answering that. I work on the ML part of all this so am a bit (very) naive on the packaging side of things.

                      I'm wondering if anyone would be able to help me try figure out if the ML features of the netdata agent would be available via XCP-ng?

                      lawrencesystemsL 1 Reply Last reply Reply Quote 2
                      • olivierlambertO Offline
                        olivierlambert Vates 🪐 Co-Founder CEO
                        last edited by

                        Hello @andrewm4894

                        Sure, what do you need to know? Let me add @stormi in the conversation 🙂

                        andrewm4894A 1 Reply Last reply Reply Quote 1
                        • lawrencesystemsL Offline
                          lawrencesystems Ambassador @andrewm4894
                          last edited by

                          @andrewm4894 I am really looking forward to seeing how this update goes because using Netdata inside of XCP-NG is something that I want to do an updated video on to discuss performance and tesing.

                          1 Reply Last reply Reply Quote 0
                          • andrewm4894A Offline
                            andrewm4894 @olivierlambert
                            last edited by

                            @olivierlambert basically that if I was using XCP-ng and I set enabled = yes in the [ml] section of the netdata.conf if it would just work as normal.

                            Once a user makes that config change they would get the new "Anomaly Detection" menu

                            8f55a375-daea-4a45-a466-4f6b390e92cb-image.png

                            What this means then is that within each chart there will also be the new anomaly-bit corresponding to each raw metric value.

                            For example if you add options=anomaly-bit then you get the anomaly bit instead of the raw value, for example (will probably be all 0 since all normal on that server) https://london.my-netdata.io/api/v1/data?chart=system.cpu&options=anomaly-bit

                            For users who then claim their nodes into netdata cloud this powers the anomaly advisor feature.

                            Here is a quick example of me doing a k6 load test against our demo servers.

                            So i guess (apologies for rambling a bit) my questions are:

                            1. What netdata agent version is available in XCP-ng by default?
                            2. Do you know if there are any custom build flags passed to it as part of the packaging for XCP-ng? e.g sometimes package maintainers might pass things like --disable-cloud or --disable-ml for various reasons so im just trying to double check if anything there that might preclude things.

                            I think its mainly down to the netdata version that's included by default and if any custom flags passed as part of that packaging (if that makes sense).

                            1 Reply Last reply Reply Quote 0
                            • stormiS Offline
                              stormi Vates 🪐 XCP-ng Team
                              last edited by stormi

                              The netdata version is rather old because XCP-ng 8.2 is a LTS and netdata sadly doesn't have long term maintenance branches that would guarantee an absence of regressions. And I've had serious issues with netdata on XCP-ng in the past (disk full due to a bug that I reported at the time, fixed since but now I completely disable disk writes and let only netdata use a limited RAM database, just in case), so I'm not eager to update often as long as it is working and no unpatchable major security issues are found.

                              And given the pace at which netdata evolves, each update is a significant amount of packaging work for me 🙂

                              I will provide an update at some point, in the testing repository at least, but I don't know when exactly.

                              1 Reply Last reply Reply Quote 1
                              • olivierlambertO Offline
                                olivierlambert Vates 🪐 Co-Founder CEO
                                last edited by olivierlambert

                                Is there a way to reduce both the risk and the packaging burden? Asking @andrewm4894 🙂

                                edit: thing is, the dom0 is a very sensitive piece in XCP-ng, so if we do something bad in there, this can affect all VMs.

                                We are working on the longer run to be able to get metrics out of the dom0 (we can imagine a dedicated domain or a central Open Metrics compatible database). I wonder if Netdata is capable to work on top of an Open Metrics by the way 🤔

                                andrewm4894A 2 Replies Last reply Reply Quote 0
                                • stormiS Offline
                                  stormi Vates 🪐 XCP-ng Team
                                  last edited by stormi

                                  Additional notes:

                                  • my last update attempt ended in curl: (6) Could not resolve host: github.com; Unknown error because the spec file started defaulting to downloading stuff from github when a distro must build everything using only the RPM sources and our build environment has no internet access on purpose. So this means I must re-bundle sources that were unbundled upstream. I had already done such work previously for other components that are downloaded during the RPM build.
                                  • EPEL now has a netdata RPM that seems to be updated regularly (currently at 1.34.1) and which I could probably light-fork. It will probably be more suited to the needs of a distro maintainer than the upstream spec file which is tailored for the needs of the netdata project itself (you often see this dichotomy between upstream developers and downstream packagers, as in the example I gave earlier of a spec file that does what no distro would allow: download stuff dynamically at build time).
                                  W 1 Reply Last reply Reply Quote 2
                                  • andrewm4894A Offline
                                    andrewm4894 @olivierlambert
                                    last edited by

                                    @olivierlambert @stormi i see i see. In terms of the ML stuff it's fairly stable (admittedly i'm being subjective here - we have been dogfooding it for the last few months and had it under beta launch since March) and is disabled by default. At some stage we will have it enabled by default but that's much further down the road.

                                    Of course it is still evolving at the same time - for example here is a big discussion about how we can extend the training window beyond the default 4 hours etc which obviously will involve more work and changes.

                                    So in terms of where we are now the base ML functionality that's there I consider fairly stable and would be enough to be a useful feature some users might like.

                                    But I totally get that it's a lot of work for you guys too and indeed we are building a lot of new features, especially around ML and related features and so the agent is for sure still evolving a lot.

                                    I'm not really sure where that leaves us. I will tag in some of our SRE folks to see if anything we can do to help ease some pain at all in some way.

                                    1 Reply Last reply Reply Quote 1
                                    • andrewm4894A Offline
                                      andrewm4894 @olivierlambert
                                      last edited by

                                      @olivierlambert yep - OpenMetrics is a big deal and totally a standard we want to handle.

                                      https://www.netdata.cloud/blog/release-1-24/

                                      Mainly via the Prometheus collector at the moment but iirc there is still one or two OpenMetrics types we need to do some work to cover - eg Histograms is one we working on at the moment.

                                      1 Reply Last reply Reply Quote 1
                                      • olivierlambertO Offline
                                        olivierlambert Vates 🪐 Co-Founder CEO
                                        last edited by olivierlambert

                                        Nice 🙂 It's not for tomorrow in XCP-ng, but knowing that it will be supported in the future for Netdata is a great news!

                                        Thanks a lot for coming here and helping to build some bridges, I personally love Netdata (as a sysadmin, and I'm not the only one around!) and I'll be happy to get closer collaboration between our 2 projects!

                                        1 Reply Last reply Reply Quote 1
                                        • andrewm4894A Offline
                                          andrewm4894
                                          last edited by

                                          We are actually planning v1.35 stable release for next week so maybe, if not too much hassle (but I can imagine it's certainly non trivial, so defo is some hassle 🙂 ), we could try see about updating to that on your end with understanding that's like a good base version for the ml stuff and then can leave it at that for a while maybe if ends up being not too painful on your end.

                                          Totally up to you guys, but I can try help any way I can.

                                          Qq, what would be the best way for me to try spin up a sort of test or dev XCP-ng env for me to try things out on? Or is there sort of hardware involved such that this might not be so easy. In my mind I'm imagining spinning up a VM lol which probably shows my level of naivety 🙂

                                          ForzaF 1 Reply Last reply Reply Quote 1
                                          • ForzaF Offline
                                            Forza @andrewm4894
                                            last edited by

                                            @andrewm4894 said in Netdata package is now available in XCP-ng:

                                            Qq, what would be the best way for me to try spin up a sort of test or dev XCP-ng env for me to try things out on? Or is there sort of hardware involved such that this might not be so easy. In my mind I'm imagining spinning up a VM lol which probably shows my level of naivety

                                            You can run XCP-ng inside a VM, as long as the hypervisor underneath exposes nested virtualisation. The actual installation of XCP-ng is very easy. Mostly click and run.

                                            1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post