Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps | Demo | Docs | Install
  1. Cloudron Forum
  2. Feature Requests
  3. Any issues with including NetData on the root server and as an app add-on?

Any issues with including NetData on the root server and as an app add-on?

Scheduled Pinned Locked Moved Feature Requests
70 Posts 12 Posters 16.7k Views 11 Watching
  • 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.
  • girishG girish

    I think this will take a while for us. @imc67 what sort of official support are you expecting?

    If it helps, I can put together a guide in our docs on how to use Cloudron with netdata. Pre-installing net data agent into every Cloudron installation is not under consideration at the moment.

    imc67I Offline
    imc67I Offline
    imc67
    translator
    wrote on last edited by imc67
    #15

    @girish after all these months and busy work on 7.5 I can imagine you can't remember our mail correspondence and the details of this thread.

    Summary:
    Many Cloudron users are longing for more detailed live data of their server @BrutalBirdie and I used to use Zabbix but it's difficult to get it work and updated. @marcusquinn discovered Netdata and I gave it a try on a RaspberryPi and was heavily impressed so I also "pre-installed" it on my new Cloudron server before migrating installing/migrating Cloudron. It works perfect and I already got many insights by Netdata triggers and Netdata AI of things that where wrong (i.e. crashed Cloudron firewall where Cloudron didn't warn me!).

    The big question by @robi, @timconsidine, @marcusquinn and me is: is it safe to install it on the server in a live Cloudron environment?
    Second question: could it be an app candidate as it is available as a docker container, able to monitor the server itself including all other docker containers and has its own web dashboard?

    marcusquinnM 1 Reply Last reply
    4
    • imc67I imc67

      @girish after all these months and busy work on 7.5 I can imagine you can't remember our mail correspondence and the details of this thread.

      Summary:
      Many Cloudron users are longing for more detailed live data of their server @BrutalBirdie and I used to use Zabbix but it's difficult to get it work and updated. @marcusquinn discovered Netdata and I gave it a try on a RaspberryPi and was heavily impressed so I also "pre-installed" it on my new Cloudron server before migrating installing/migrating Cloudron. It works perfect and I already got many insights by Netdata triggers and Netdata AI of things that where wrong (i.e. crashed Cloudron firewall where Cloudron didn't warn me!).

      The big question by @robi, @timconsidine, @marcusquinn and me is: is it safe to install it on the server in a live Cloudron environment?
      Second question: could it be an app candidate as it is available as a docker container, able to monitor the server itself including all other docker containers and has its own web dashboard?

      marcusquinnM Offline
      marcusquinnM Offline
      marcusquinn
      wrote on last edited by
      #16

      @imc67 Good questions. I think for @girish and @nebulon . I've only used it very occasionally, but not had any issues from it on a production server.

      TBH I think it's a great feature addition, and helps make Cloudron more appealing to enterprise system admins.

      Perhaps it could be presented in an iFrame in the Cloudron Dashboard, too, for a sort of integrated experience for the prosumer users.

      Web Design https://www.evergreen.je
      Development https://brandlight.org
      Life https://marcusquinn.com

      1 Reply Last reply
      2
      • marcusquinnM Offline
        marcusquinnM Offline
        marcusquinn
        wrote on last edited by
        #17
        • https://app.netdata.cloud/spaces/netdata-demo/

        As FOSS goes, this is exceptionally fortunate for the world to have available. I like their ethics, too:

        1380249a-5514-4a01-ba5d-58d50439614c-image.png

        50e9a55e-2954-43e7-95bc-c5408bb1ab4e-image.png

        Web Design https://www.evergreen.je
        Development https://brandlight.org
        Life https://marcusquinn.com

        1 Reply Last reply
        2
        • girishG Offline
          girishG Offline
          girish
          Staff
          wrote on last edited by
          #18

          I looked into this a bit. The installation adds a custom apt repo and sets up automatic update stuff and installs a few other things. In general, it probably doesn't break anything but I find it hard to gauge what it could potentially break. My understanding is this is similar to DigitalOcean's and AWS monitoring tools (which are optionally installed on the server) to provide dashboards. We have not heard of people facing issues when they install the tools.

          I think the best approach here is to deal with issues as they appear @imc67 . What do you think? I can't think of any better way. We can't possibly track netdata releases or their installer code to understand what all changes are happening.

          marcusquinnM 1 Reply Last reply
          1
          • girishG girish

            I looked into this a bit. The installation adds a custom apt repo and sets up automatic update stuff and installs a few other things. In general, it probably doesn't break anything but I find it hard to gauge what it could potentially break. My understanding is this is similar to DigitalOcean's and AWS monitoring tools (which are optionally installed on the server) to provide dashboards. We have not heard of people facing issues when they install the tools.

            I think the best approach here is to deal with issues as they appear @imc67 . What do you think? I can't think of any better way. We can't possibly track netdata releases or their installer code to understand what all changes are happening.

            marcusquinnM Offline
            marcusquinnM Offline
            marcusquinn
            wrote on last edited by
            #19

            @girish I think the utility being sought here is Application/Service level resource usage data, as opposed to the overall general CPU/RAM that host monitoring presents. As in, when something is hogging resources, it can be identified, same for when something is allocated more than it needs.

            Web Design https://www.evergreen.je
            Development https://brandlight.org
            Life https://marcusquinn.com

            1 Reply Last reply
            0
            • fbartelsF Offline
              fbartelsF Offline
              fbartels
              App Dev
              wrote on last edited by
              #20

              Using the install script is not even necessary, as netdata can just as well be run as a container itself. So a simple docker-compose.yaml with the following is enough:

              version: '3'
              services:
                netdata:
                  image: netdata/netdata
                  container_name: netdata
                  pid: host
                  network_mode: host
                  restart: unless-stopped
                  cap_add:
                    - SYS_PTRACE
                    - SYS_ADMIN
                  security_opt:
                    - apparmor:unconfined
                  volumes:
                    - ./netdataconfig/netdata:/etc/netdata
                    - netdatalib:/var/lib/netdata
                    - netdatacache:/var/cache/netdata
                    - /etc/passwd:/host/etc/passwd:ro
                    - /etc/group:/host/etc/group:ro
                    - /proc:/host/proc:ro
                    - /sys:/host/sys:ro
                    - /etc/os-release:/host/etc/os-release:ro
                    #- /var/run/docker.sock:/var/run/docker.sock:ro
                  environment:
                    - DOCKER_HOST=127.0.0.1:2375
                cetusguard:
                  image: hectorm/cetusguard:v1
                  network_mode: host
                  read_only: true
                  volumes:
                    - /var/run/docker.sock:/var/run/docker.sock:ro
                  environment:
                    CETUSGUARD_BACKEND_ADDR: unix:///var/run/docker.sock
                    CETUSGUARD_FRONTEND_ADDR: tcp://:2375
                    CETUSGUARD_RULES: |
                      ! Inspect a container
                      GET %API_PREFIX_CONTAINERS%/%CONTAINER_ID_OR_NAME%/json
              
              volumes:
                netdatalib:
                netdatacache:
              

              Afterwards one can just create an app proxy to http://127.0.0.1:19999 and netdata can be "publicly" reached.

              The above docker-compose.yaml actually comes from the netdata documentation.

              girishG imc67I 3 Replies Last reply
              5
              • fbartelsF fbartels

                Using the install script is not even necessary, as netdata can just as well be run as a container itself. So a simple docker-compose.yaml with the following is enough:

                version: '3'
                services:
                  netdata:
                    image: netdata/netdata
                    container_name: netdata
                    pid: host
                    network_mode: host
                    restart: unless-stopped
                    cap_add:
                      - SYS_PTRACE
                      - SYS_ADMIN
                    security_opt:
                      - apparmor:unconfined
                    volumes:
                      - ./netdataconfig/netdata:/etc/netdata
                      - netdatalib:/var/lib/netdata
                      - netdatacache:/var/cache/netdata
                      - /etc/passwd:/host/etc/passwd:ro
                      - /etc/group:/host/etc/group:ro
                      - /proc:/host/proc:ro
                      - /sys:/host/sys:ro
                      - /etc/os-release:/host/etc/os-release:ro
                      #- /var/run/docker.sock:/var/run/docker.sock:ro
                    environment:
                      - DOCKER_HOST=127.0.0.1:2375
                  cetusguard:
                    image: hectorm/cetusguard:v1
                    network_mode: host
                    read_only: true
                    volumes:
                      - /var/run/docker.sock:/var/run/docker.sock:ro
                    environment:
                      CETUSGUARD_BACKEND_ADDR: unix:///var/run/docker.sock
                      CETUSGUARD_FRONTEND_ADDR: tcp://:2375
                      CETUSGUARD_RULES: |
                        ! Inspect a container
                        GET %API_PREFIX_CONTAINERS%/%CONTAINER_ID_OR_NAME%/json
                
                volumes:
                  netdatalib:
                  netdatacache:
                

                Afterwards one can just create an app proxy to http://127.0.0.1:19999 and netdata can be "publicly" reached.

                The above docker-compose.yaml actually comes from the netdata documentation.

                girishG Offline
                girishG Offline
                girish
                Staff
                wrote on last edited by
                #21

                @fbartels ah nice, cetusguard is a great find. Haven't heard of that before! We have our own internal docker proxy protector which does similar.

                fbartelsF 1 Reply Last reply
                2
                • girishG girish

                  @fbartels ah nice, cetusguard is a great find. Haven't heard of that before! We have our own internal docker proxy protector which does similar.

                  fbartelsF Offline
                  fbartelsF Offline
                  fbartels
                  App Dev
                  wrote on last edited by
                  #22

                  @girish yes, that one was new to me as well. I think they recommended a different proxy before, but i cannot remember which one.

                  1 Reply Last reply
                  0
                  • fbartelsF fbartels

                    Using the install script is not even necessary, as netdata can just as well be run as a container itself. So a simple docker-compose.yaml with the following is enough:

                    version: '3'
                    services:
                      netdata:
                        image: netdata/netdata
                        container_name: netdata
                        pid: host
                        network_mode: host
                        restart: unless-stopped
                        cap_add:
                          - SYS_PTRACE
                          - SYS_ADMIN
                        security_opt:
                          - apparmor:unconfined
                        volumes:
                          - ./netdataconfig/netdata:/etc/netdata
                          - netdatalib:/var/lib/netdata
                          - netdatacache:/var/cache/netdata
                          - /etc/passwd:/host/etc/passwd:ro
                          - /etc/group:/host/etc/group:ro
                          - /proc:/host/proc:ro
                          - /sys:/host/sys:ro
                          - /etc/os-release:/host/etc/os-release:ro
                          #- /var/run/docker.sock:/var/run/docker.sock:ro
                        environment:
                          - DOCKER_HOST=127.0.0.1:2375
                      cetusguard:
                        image: hectorm/cetusguard:v1
                        network_mode: host
                        read_only: true
                        volumes:
                          - /var/run/docker.sock:/var/run/docker.sock:ro
                        environment:
                          CETUSGUARD_BACKEND_ADDR: unix:///var/run/docker.sock
                          CETUSGUARD_FRONTEND_ADDR: tcp://:2375
                          CETUSGUARD_RULES: |
                            ! Inspect a container
                            GET %API_PREFIX_CONTAINERS%/%CONTAINER_ID_OR_NAME%/json
                    
                    volumes:
                      netdatalib:
                      netdatacache:
                    

                    Afterwards one can just create an app proxy to http://127.0.0.1:19999 and netdata can be "publicly" reached.

                    The above docker-compose.yaml actually comes from the netdata documentation.

                    imc67I Offline
                    imc67I Offline
                    imc67
                    translator
                    wrote on last edited by
                    #23

                    @fbartels @girish is this a base for a Cloudron app candidate or even possible to startup as-is?

                    1 Reply Last reply
                    0
                    • girishG Offline
                      girishG Offline
                      girish
                      Staff
                      wrote on last edited by
                      #24

                      For Netdata to work well, it has to run like it runs on the host itself i.e without a sandbox. If you see https://learn.netdata.cloud/docs/installing/docker#recommended-way or the compose file @fbartels posted, it is giving access to proc, etc, sys of the host and docker access. This is security risk (or not) depending on whether you trust netdata. Cloudron apps don't have access to any of these things.

                      1 Reply Last reply
                      2
                      • fbartelsF fbartels

                        Using the install script is not even necessary, as netdata can just as well be run as a container itself. So a simple docker-compose.yaml with the following is enough:

                        version: '3'
                        services:
                          netdata:
                            image: netdata/netdata
                            container_name: netdata
                            pid: host
                            network_mode: host
                            restart: unless-stopped
                            cap_add:
                              - SYS_PTRACE
                              - SYS_ADMIN
                            security_opt:
                              - apparmor:unconfined
                            volumes:
                              - ./netdataconfig/netdata:/etc/netdata
                              - netdatalib:/var/lib/netdata
                              - netdatacache:/var/cache/netdata
                              - /etc/passwd:/host/etc/passwd:ro
                              - /etc/group:/host/etc/group:ro
                              - /proc:/host/proc:ro
                              - /sys:/host/sys:ro
                              - /etc/os-release:/host/etc/os-release:ro
                              #- /var/run/docker.sock:/var/run/docker.sock:ro
                            environment:
                              - DOCKER_HOST=127.0.0.1:2375
                          cetusguard:
                            image: hectorm/cetusguard:v1
                            network_mode: host
                            read_only: true
                            volumes:
                              - /var/run/docker.sock:/var/run/docker.sock:ro
                            environment:
                              CETUSGUARD_BACKEND_ADDR: unix:///var/run/docker.sock
                              CETUSGUARD_FRONTEND_ADDR: tcp://:2375
                              CETUSGUARD_RULES: |
                                ! Inspect a container
                                GET %API_PREFIX_CONTAINERS%/%CONTAINER_ID_OR_NAME%/json
                        
                        volumes:
                          netdatalib:
                          netdatacache:
                        

                        Afterwards one can just create an app proxy to http://127.0.0.1:19999 and netdata can be "publicly" reached.

                        The above docker-compose.yaml actually comes from the netdata documentation.

                        imc67I Offline
                        imc67I Offline
                        imc67
                        translator
                        wrote on last edited by
                        #25

                        @fbartels said in Any issues with including NetData on the root server and as an app add-on?:

                        Afterwards one can just create an app proxy to http://127.0.0.1:19999 and netdata can be "publicly" reached.

                        I just installed Netdata (stable) on another Cloudron production server. Installation went well, connection to Netdata cloud dashboard went well and indeed as @fbartels wrote, the "app proxy" works also to have a local only view!

                        Perfect!

                        girishG 1 Reply Last reply
                        1
                        • imc67I imc67

                          @fbartels said in Any issues with including NetData on the root server and as an app add-on?:

                          Afterwards one can just create an app proxy to http://127.0.0.1:19999 and netdata can be "publicly" reached.

                          I just installed Netdata (stable) on another Cloudron production server. Installation went well, connection to Netdata cloud dashboard went well and indeed as @fbartels wrote, the "app proxy" works also to have a local only view!

                          Perfect!

                          girishG Offline
                          girishG Offline
                          girish
                          Staff
                          wrote on last edited by
                          #26

                          @imc67 Did you install as docker container or via the apt repos?

                          imc67I 1 Reply Last reply
                          0
                          • girishG girish

                            @imc67 Did you install as docker container or via the apt repos?

                            imc67I Offline
                            imc67I Offline
                            imc67
                            translator
                            wrote on last edited by
                            #27

                            @girish via apt

                            1 Reply Last reply
                            2
                            • D Offline
                              D Offline
                              d1rk
                              wrote on last edited by
                              #28

                              @imc67 I understood, that installing netdata via the Kickstart command is not a bad thing to do?

                              https://learn.netdata.cloud/docs/installing/one-line-installer-for-all-linux-systems

                              ofc, taking into account, that messing with the system like that deviates from what is suggested for obvious reasons by Cloudron and is in my responsibility.

                              imc67I 1 Reply Last reply
                              2
                              • D d1rk

                                @imc67 I understood, that installing netdata via the Kickstart command is not a bad thing to do?

                                https://learn.netdata.cloud/docs/installing/one-line-installer-for-all-linux-systems

                                ofc, taking into account, that messing with the system like that deviates from what is suggested for obvious reasons by Cloudron and is in my responsibility.

                                imc67I Offline
                                imc67I Offline
                                imc67
                                translator
                                wrote on last edited by
                                #29

                                @d1rk on 3 of my Cloudrons it is working without an issue but indeed that’s not a measure for succes πŸ˜‰

                                1 Reply Last reply
                                1
                                • robiR Offline
                                  robiR Offline
                                  robi
                                  wrote on last edited by
                                  #30

                                  It might be useful to use --disable-telemetry: Disable anonymous statistics. for the privacy conscious; as well as the local webUI.

                                  Conscious tech

                                  1 Reply Last reply
                                  1
                                  • D Offline
                                    D Offline
                                    d1rk
                                    wrote on last edited by
                                    #31

                                    Thanks for your feedback. Yeah, that would have been my approach, anyway:

                                    • disable any remote communication
                                    • use local webUI
                                    • install via kickstart (which results in apt-packages)

                                    Ok, I would give it a go and see for myself.

                                    1 Reply Last reply
                                    1
                                    • girishG Offline
                                      girishG Offline
                                      girish
                                      Staff
                                      wrote on last edited by
                                      #32

                                      Looks like we got our first support ticket related to installing netdata. I have not verified this but it seems that installing netdata installs the nodejs package which ends up downgrading nodejs to v12 . This in turn prevents Cloudron from starting up.

                                      It's better to install netdata via Docker, atleast it would prevent the above issue.

                                      1 Reply Last reply
                                      3
                                      • D Offline
                                        D Offline
                                        d1rk
                                        wrote on last edited by d1rk
                                        #33

                                        Oh, interesting find. I have to check which version of node I have. Currently it seems to work fine.

                                        Thanks for keeping us posted, here.

                                        1 Reply Last reply
                                        0
                                        • imc67I Offline
                                          imc67I Offline
                                          imc67
                                          translator
                                          wrote on last edited by imc67
                                          #34

                                          Uhoh how do we check the version? And how to install it via Docker?

                                          Netdata is extremely useful and needed like having a live dashboard in your car. Without its hard to drive πŸ˜‰

                                          imc67I 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Bookmarks
                                          • Search