Ankündigung

Einklappen
Keine Ankündigung bisher.

Edomi ProxMox-/LXC-Template RockyLinux (x86_64 & aarch64)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #76
    Servus Yves starwarsfan

    Vor etwa einem Monat habe ich deinen Container installiert und möchte nun den LBS 19002576 zum Laufen bringen.

    Folgende Installationsanleitung die dem LBS beiliegt nutze ich dafür:

    Code:
    Installations needed
    ====================
    
    MySQL Tools
    ===========
    yum -y install php-process git gcc make mysql-devel php-devel
    yum -y install autoconf automake libtool
    cd /tmp
    git clone https://github.com/jonofe/lib_mysqludf_sys
    cd lib_mysqludf_sys/
    ./install.sh
    cd /tmp
    rm -rf lib_mysqludf_sys/
    git clone https://github.com/mysqludf/lib_mysqludf_log
    cd lib_mysqludf_log
    autoreconf -i
    ./configure
    make
    make install
    mysql < installdb.sql
    
    Composer
    ========
    cd /tmp
    wget --no-check-certificate https://getcomposer.org/installer
    php installer
    mv -f composer.phar /usr/local/bin/composer
    
    PHP Influx Client
    =================
    cd /usr/local/edomi/www/admin/include/php/
    mkdir influx-client
    cd influx-client/
    composer require influxdata/influxdb-client-php​
    Nur leider kommt es dabei zu Problemen. Ist die Vorgehensweise bei Installationen bei deinem auf RockyLinux basierenden Container eine ganz andere als bei den CentOS Systemen?

    Über Nodered habe ich schon Daten auf die InfluxDB geschrieben, die eingetragene Daten im LBS sollten also grundsätzlich passen.

    Ich hatte die Pakete etwa vor einem Monat schon installiert, gut möglich dass ich irgendwas übersehen habe.
    Zumindest jetzt taucht der Fehler auch zuverlässig auf.

    Code:
    [root@edomi ~]# yum -y install php-process git gcc make mysql-devel php-devel
    Letzte Prüfung auf abgelaufene Metadaten: vor 2:07:00 am Mo 06 Feb 2023 08:41:53                                                                                                              CET.
    Das Paket php-process-7.4.30-1.module+el8.7.0+1067+0a7071cc.x86_64 ist bereits i                                                                                                             nstalliert.
    Das Paket git-2.31.1-2.el8.x86_64 ist bereits installiert.
    Das Paket gcc-8.5.0-16.el8_7.x86_64 ist bereits installiert.
    Das Paket make-1:4.2.1-11.el8.x86_64 ist bereits installiert.
    Das Paket mysql-devel-8.0.30-1.module+el8.6.0+1057+4d6a1721.x86_64 ist bereits i                                                                                                             nstalliert.
    Das Paket php-devel-7.4.30-1.module+el8.7.0+1067+0a7071cc.x86_64 ist bereits ins                                                                                                             talliert.
    Abhängigkeiten sind aufgelöst.
    Nichts zu tun.
    Fertig.
    [root@edomi ~]# yum -y install autoconf automake libtool
    Letzte Prüfung auf abgelaufene Metadaten: vor 2:07:14 am Mo 06 Feb 2023 08:41:53                                                                                                              CET.
    Das Paket autoconf-2.69-29.el8.noarch ist bereits installiert.
    Das Paket automake-1.16.1-7.el8.noarch ist bereits installiert.
    Das Paket libtool-2.4.6-25.el8.x86_64 ist bereits installiert.
    Abhängigkeiten sind aufgelöst.
    Nichts zu tun.
    Fertig.
    [root@edomi ~]# cd /tmp
    [root@edomi tmp]# git clone https://github.com/jonofe/lib_mysqludf_sys
    fatal: Zielpfad 'lib_mysqludf_sys' existiert bereits und ist kein leeres Verzeic                                                                                                             hnis.
    [root@edomi tmp]# cd lib_mysqludf_sys/
    [root@edomi lib_mysqludf_sys]# ./install.sh
    Compiling the MySQL UDF
    gcc -DMYSQL_DYNAMIC_PLUGIN -fPIC -Wall -I/usr/include/mysql -I. -shared lib_mysq                                                                                                             ludf_sys.c -o /usr/lib64/mysql/plugin/lib_mysqludf_sys.so
    lib_mysqludf_sys.c:40:10: schwerwiegender Fehler: my_global.h: No such file or d                                                                                                             irectory
     #include <my_global.h>
              ^~~~~~~~~~~~~
    Kompilierung beendet.
    make: *** [Makefile:4: install] Fehler 1
    ERROR: You need libmysqlclient development software installed
    to be able to compile this UDF, on Debian/Ubuntu just run:
    apt-get install libmysqlclient15-dev
    ​
    Auch der empfohlene Befehl :
    Code:
    apt-get install libmysqlclient15-dev
    wird mit "Kommando nicht gefunden" nicht ausgeführt.




    Diesen Befehl habe ich in einem anderen Beitrag gefunden und ausgeführt, aber auch ohne Besserung.

    Code:
    cd /usr/local/edomi/www/admin/include/php/influx-client
    Code:
    composer require php-http/guzzle7-adapter​
    Das Problem müsste eigentlich auch bei vielen anderen auftauchen die den LBS mit deinem Container nutzen.
    Hat jemand einen Tip für mich?
    Liebe Grüße​
    Zuletzt geändert von fudi6489; 07.02.2023, 13:44.

    Kommentar


      #77
      Hi

      Zitat von fudi6489 Beitrag anzeigen
      Folgende Installationsanleitung die dem LBS beiliegt nutze ich dafür:

      Code:
      Installations needed
      ====================
      
      MySQL Tools
      ===========
      yum -y install php-process git gcc make mysql-devel php-devel
      yum -y install autoconf automake libtool
      cd /tmp
      git clone https://github.com/jonofe/lib_mysqludf_sys
      cd lib_mysqludf_sys/
      ./install.sh
      cd /tmp
      rm -rf lib_mysqludf_sys/
      git clone https://github.com/mysqludf/lib_mysqludf_log
      cd lib_mysqludf_log
      autoreconf -i
      ./configure
      make
      make install
      mysql < installdb.sql
      
      Composer
      ========
      cd /tmp
      wget --no-check-certificate https://getcomposer.org/installer
      php installer
      mv -f composer.phar /usr/local/bin/composer
      ​
      Das ist alles schon installiert. Siehst Du ja auch am Output unten, dass da nichts gemacht wurde. ;-)


      Zitat von fudi6489 Beitrag anzeigen
      Code:
      ​
      PHP Influx Client
      =================
      cd /usr/local/edomi/www/admin/include/php/
      mkdir influx-client
      cd influx-client/
      composer require influxdata/influxdb-client-php
      ​
      Das hier ist eigentlich alles, was zu tun ist.


      Zitat von fudi6489 Beitrag anzeigen
      Nur leider kommt es dabei zu Problemen. Ist die Vorgehensweise bei Installationen bei deinem auf RockyLinux basierenden Container eine ganz andere als bei den CentOS Systemen?
      Nein, eigentlich nicht.

      Das folgende schlägt zwar fehl, solltest Du aber eigentlich gar nicht brauchen, weil schon vorhanden:

      Zitat von fudi6489 Beitrag anzeigen
      ​[root@edomi ~]# cd /tmp
      [root@edomi tmp]# git clone https://github.com/jonofe/lib_mysqludf_sys
      fatal: Zielpfad 'lib_mysqludf_sys' existiert bereits und ist kein leeres Verzeic hnis.
      [root@edomi tmp]# cd lib_mysqludf_sys/
      [root@edomi lib_mysqludf_sys]# ./install.sh
      Compiling the MySQL UDF
      gcc -DMYSQL_DYNAMIC_PLUGIN -fPIC -Wall -I/usr/include/mysql -I. -shared lib_mysq ludf_sys.c -o /usr/lib64/mysql/plugin/lib_mysqludf_sys.so
      lib_mysqludf_sys.c:40:10: schwerwiegender Fehler: my_global.h: No such file or d irectory
      include <my_global.h>
      ^~~~~~~~~~~~~
      Kompilierung beendet.
      make: *** [Makefile:4: install] Fehler 1
      ERROR: You need libmysqlclient development software installed
      to be able to compile this UDF, on Debian/Ubuntu just run:
      apt-get install libmysqlclient15-dev
      ​[/CODE]

      Auch der empfohlene Befehl :
      Code:
      apt-get install libmysqlclient15-dev
      wird mit "Kommando nicht gefunden" nicht ausgeführt.
      Ist ja auch klar, wir sind hier nicht auf einem Debian/Ubuntu sondern einem RedHat-Derivat und da ist der Package-Manager nicht apt oder apt-get sondern yum oder dnf.

      Aber wie gesagt, sollte eigentlich nicht notwendig sein. Versuch' mal nur den letzten Teil der Anleitung!
      Kind regards,
      Yves

      Kommentar


        #78
        Vielen Dank für deine flotte Hilfe, Yves.
        Der Baustein sendet jetzt Daten zur Influx Datenbank.

        Liebe Grüße
        Jürgen

        Kommentar


          #79
          Hallo miteinander,

          nachdem ich gerade nachgeschaut habe, ist mir auch (wieder) klar, warum der Compile-Step bei Dir fehlgeschlagen ist. Im install.sh von jonofe passiert das hier:

          Code:
          gcc -DMYSQL_DYNAMIC_PLUGIN \
              -fPIC \
              -Wall \
              -I/usr/include/mysql \
              -I. \
              -shared lib_mysqludf_sys.c \
              -o $(LIBDIR)/lib_mysqludf_sys.so
          Das funktioniert so aber nicht unter Rocky-Linux, da die Pfade zu den MySQL-Sourcen anders sind. Daher mache ich das beim Build des Rocky-Linux-Containers resp. Templates so:

          Code:
          gcc -DMYSQL_DYNAMIC_PLUGIN \
              -fPIC \
              -Wall \
              -I/usr/include/mysql/server \
              -I/usr/include/mysql/server/private \
              -I. \
              -shared lib_mysqludf_sys.c \
              -o /tmp/Mosquitto-PHP/usr/lib64/mariadb/plugin/lib_mysqludf_sys.so​
          Siehe hier.

          jonofe: Vielleicht wäre ein Hinweis in Deinen Bausteinen praktisch, dass
          a) Die Requirements im Docker-Image sowie LXC-Template bereits installiert sind und
          b) Dass die Installation unter Rocky-Linux ggf abweichend von CentOS ist.
          Was meinst Du?
          Kind regards,
          Yves

          Kommentar


            #80
            Hallo zusammen!
            hänge an dem gleichen Problem, wie fudi6489.
            verstehe nicht was ich jetzt installieren muss, und was nicht?
            Reicht es aus, dass nur folgendes installiert werden muss, oder muss ich noch weitere Punkte beachten ?

            Code:
            PHP Influx Client
            =================
            cd /usr/local/edomi/www/admin/include/php/
            mkdir influx-client
            cd influx-client/
            composer require influxdata/influxdb-client-php​

            Kommentar


              #81
              Hi

              Na probiere es doch einfach aus! Neuen Container anlegen, obige Schritte ausführen und mit Minimallogik prüfen, ob es funktioniert. Genau soetwas ist doch mit Containern völlig risikolos machbar.
              Kind regards,
              Yves

              Kommentar


                #82
                Hallo, wollte auch mal DANKE! sagen, der Umzug von EDOMI auf Proxmox in LXC war erfolgreich. Läuft einwandfrei.

                Kommentar


                  #83
                  Hallo miteinander,

                  soeben habe ich Version 2.03.6 der LXC-Templates auf Github hochgeladen. Hier die Changes:
                  • Installed stop script into `/usr/local/bin/`, outside of Edomi location. With that change the script exists even after backup import from native Edomi installation, where that script does not exist.
                  • Installed prometheus node exporter​
                  Zu Punkt 1:
                  Wenn jemand von euch Probleme beim Edomi-Shutdown via ProxMox-UI hat, dann liegt das mit grosser Wahrscheinlichkeit daran, dass die Edomi-Instanz auf dem Import einer nativen Installation basiert, weil bei diesem Import das Stop-Script abhanden kommt. Das ist nun gelöst, da das Stop-Script ausserhalb des Edomi-Verzeichnisses liegt. In solch einem Problemfall bietet es sich also an, eine neue Container-Instanz basierend auf Template 2.03.6 anzulegen und ein Backup der bestehenden Instanz zu importieren. Vielen Dank an sipiyou für den Bugreport.

                  Zu Punkt 2:
                  Wer in seinem Netzwerk Prometheus verwendet, kann dort jetzt ootb den Edomi-Container einbinden. Der Node-Exporter wurde mit Standard-Settings installiert und ist somit via http auf Port 9100 zu erreichen.

                  Weiterhin viel Spass mit Edomi und immer her mit dem Feedback!
                  Kind regards,
                  Yves

                  Kommentar


                    #84
                    Guten Abend, ich bin noch ein Anfänger bei Proxmox und LXC, da es jetzt eine neue Version gibt, wollte ich mal nachfragen wie update ich den Edomi? Muss ich das neu installieren oder gibt es dazu eine Prozedur?

                    Gruß

                    Kommentar


                      #85
                      Hallo Hardi

                      Zitat von elkomaster91 Beitrag anzeigen
                      wie update ich den Edomi? Muss ich das neu installieren oder gibt es dazu eine Prozedur?
                      Ein LXC-Container ist hinsichtlich Updates wie eine VM zu betrachten. Das heisst, den kannst Du wie ein "auf Blech" installiertes System aktuell halten. Somit ist das also anders als bei Docker-Containern, welche entsorgt und in neuer Version gestartet werden.

                      Die interessante Frage in Deinem Fall ist jedoch, wie Dein aktuelles System aussieht! Hast Du damit direkt auf dem Edomi-LXC-Template begonnen oder von einem nativ installierten System importiert?
                      Kind regards,
                      Yves

                      Kommentar


                        #86
                        Zitat von starwarsfan Beitrag anzeigen

                        Die interessante Frage in Deinem Fall ist jedoch, wie Dein aktuelles System aussieht! Hast Du damit direkt auf dem Edomi-LXC-Template begonnen oder von einem nativ installierten System importiert?
                        Hallo,

                        ich habe direkt mit Edomi 2.03.5 angefangen und dort mein Edomi ganz von vorene aufgebaut. Jetzt möchte ich auf 2.03.6 updaten.

                        Kommentar


                          #87
                          Hi

                          Zitat von elkomaster91 Beitrag anzeigen
                          ich habe direkt mit Edomi 2.03.5 angefangen und dort mein Edomi ganz von vorene aufgebaut. Jetzt möchte ich auf 2.03.6 updaten.
                          Ok, alles klar. Dann musst Du eigentlich nichts machen denn die Edomi-Version hat sich nicht geändert und da Du direkt mit dem Template begonnen hast, tritt bei Dir auch nicht das Problem mit dem fehlenden Stop-Script auf.

                          Die Edomi-Version ist zweistellig und die 2.03 ist die letzte Version. Die dritte Stelle hier beim LXC-Template und auch beim Docker-Image ist meine eigene Versionierung, mit der ich somit die Version des Templates resp. des Docker-Images kennzeichne.

                          Wenn es Dir um das Update ganz allgemein geht, dann solltest Du eine neue Instanz basierend auf dem neuen Template anlegen und dort dann das letzte nächtliche Backup der bestehenden Instanz importieren.
                          Kind regards,
                          Yves

                          Kommentar


                            #88
                            Zitat von starwarsfan Beitrag anzeigen
                            Hi

                            Wenn es Dir um das Update ganz allgemein geht, dann solltest Du eine neue Instanz basierend auf dem neuen Template anlegen und dort dann das letzte nächtliche Backup der bestehenden Instanz importieren.
                            Vielen Dank, genau das war meine Frage. Das mit dem Edomi update war mir klar :-) Mir ging es rein um den LXC

                            Kommentar


                              #89
                              Hi

                              Zitat von elkomaster91 Beitrag anzeigen
                              Mir ging es rein um den LXC
                              Ok, gut.

                              Den Container an und für sich kannst Du einfach wie jedes andere System auch aktuell halten. Also einfach via Cmdline und `dnf update`. As usual: Backup resp. Snapshot vorher nicht vergessen!
                              Kind regards,
                              Yves

                              Kommentar


                                #90
                                Hallo Yves,

                                ich benutze seit ca. 2 Wochen Dein LXC-Template in Proxmox. Davor hatte ich Dein Docker-Image. Vielen Dank für Deine tolle Arbeit. Eine Frage:. wenn ich mein Edomi-LXC per Proxmox-GUI beende, wird das stop script nicht ausgeführt (Edomi meckert beim nächsten Start "ACHTUNG: EDOMI wurde unerwartet beendet!"). Das Script finde ich aber in /root/edomi-lxc/scripts.

                                Muss das noch irgendwie aktiviert werden (ein hook script erstellen oder so was), oder habe ich bei der Installation was falsch gemacht? Bin eigentlich genau nach Deiner Anleitung vorgegangen. Template verwendet und ein Edomi-Backup aus meiner Docker-Instanz im LXC-Container wiederhergestellt.

                                Herzliche Dank,
                                Ulli

                                Kommentar

                                Lädt...
                                X