Repositori ini sudah usang. Kami telah memindahkan kode build ke repositori OpenNMS. Alur kerja yang diterbitkan dan dibangun sekarang diintegrasikan sebagai bagian dari alur kerja CI/CD kami.
Kami akan mengarsipkan repositori ini dengan Horizon 25 dan tidak akan lagi mempertahankan repositori ini.
bleeding , versi tepi pendarahan harian Horizon 24 menggunakan OpenJDK 1124.1.0 , rilis horizon terakhir yang stabil menggunakan OpenJDK 11 Repositori ini menyediakan snapshot untuk horizon sebagai gambar Docker. Gambar menyediakan layanan pemantauan inti Horizon dan aplikasi web.
Disarankan untuk menggunakan docker-compose untuk membangun tumpukan layanan menggunakan gambar resmi PostgreSQL . Jika Anda sudah menjalankan database PostgreSQL , Anda dapat memberikan konfigurasi database di .opennms.env dan .postgres.env file lingkungan, jika tidak pengguna dan basis data akan dibuat.
Data secara default bertahan pada host Docker Anda menggunakan driver volume lokal untuk data berikut:
# PostgreSQL database
psql.data :
driver : local
# OpenNMS Horizon RRD files, logs and generated PDF reports
opennms.data :
driver : local
# OpenNMS Horizon configuration files
opennms.etc :
driver : local Diperlukan untuk mengedit file konfigurasi Horizon OpenNMS secara manual, Anda dapat menambahkan file konfigurasi Anda sendiri dengan menyediakan direktori etc-overlay . Pada startup file menimpa konfigurasi default.
- ./etc-overlay:/opt/opennms-etc-overlayJika Anda lebih suka memiliki konfigurasi Horizon OpenNMS pada host Docker Anda di direktori tertentu, Anda dapat memasang direktori dengan konfigurasi seperti ini:
volumes :
- ./myHorizonConfig:/opt/opennms/etc Jika direktori kosong, itu akan diinisialisasi dengan konfigurasi murni default dari /opt/opennms/share/etc-pristine .
PENTING: Berhati-hatilah tentang konfigurasi yang dapat diubah melalui UI Web yang tetap ada pada sistem file, misalnya users.xml , groups.xml , surveillance-categories.xml , snmp-config.xml , dll.
git clone https://github.com/opennms-forge/docker-horizon-core-web.git
cd docker-horizon-core-web
docker-compose up -dAplikasi web diekspos pada port TCP 8980. Anda dapat masuk dengan admin pengguna default dengan admin kata sandi. Harap segera ubah kata sandi default ke kata sandi yang aman.
Untuk mendapatkan bantuan untuk semua opsi kontainer yang tersedia, jalankan saja:
docker run --rm opennms/horizon-core-web Mudah dimungkinkan untuk menambahkan opsi Java untuk mengontrol perilaku JVM untuk penyetelan kinerja atau debugging. Variabel lingkungan JAVA_OPTS dilewatkan pada perintah Java dan dapat digunakan untuk memperluas atau menimpa opsi JVM.
PENTING: Untuk memberikan lebih banyak kontrol perintah biner Java secara asli di opsi Docker-Enterrypoint.sh dan Java di opennms.conf tidak dievaluasi. Proses Java memiliki PID 1 dan
Digunakan dalam file lingkungan:
env_file :
- .java.env
cat .java.env
JAVA_OPTS=-XX:+UseParallelGC -XX:+PrintGCDetails -XX:+PrintFlagsFinalDigunakan dalam Docker-Compose Service Environment Definition:
opennms :
container_name : opennms.core.web
image : opennms/horizon-core-web:latest
environment :
- JAVA_OPTS=-XX:+UseParallelGC -XX:+PrintGCDetails -XX:+PrintFlagsFinal Untuk mengontrol dan mengisolasi penggunaan sumber daya proses, cgroup fitur kernel (kelompok kontrol) digunakan. Dengan kombinasi Java ada beberapa hal tambahan yang harus diurus mengenai ukuran tumpukan maksimum dan membatasi penggunaan memori wadah.
Secara default, ergonomis JVM menghitung ukuran tumpukan maksimum berdasarkan memori host Docker dan bukan dengan set memori dengan cgroup .
Untuk memastikan JVM menghitung ukuran tumpukan maksimum yang benar, Anda memiliki dua opsi:
-Xmx lihat bagian di atas set opsi javaJAVA_OPTS=-XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap Pada Java SE 8U131 JVM Air-Docker dengan batas CPU Docker secara transparan. Selama -XX:ParallelGCThreads atau -XX:CICompilerCount tidak ditentukan, JVM akan menerapkan batas CPU Docker sebagai angka CPU dan menghitung jumlah benang gc dan jit kompiler seperti berjalan pada logam telanjang.
Skrip titik masuk digunakan untuk mengontrol perilaku awal:
-f: Apply overlay configuration if exist and just start OpenNMS Horizon
-h: Show help
-i: If necessary initialize database, create pristine configuration, do an upgrade and apply the overlay config but do * not * start OpenNMS Horizon
-s: Same as -i but start OpenNMS Horizon, this should be your default
-n: Initialize Newts on Cassandra and the PostgreSQL database, do * not * start OpenNMS Horizon
-c: Same as -n but start OpenNMS Horizon, this should be your default when you want to use Newts on Cassandra
-t: Just test you configuration Jika Anda ingin menegakkan pembaruan, membuat file /opt/opennms/etc/do-upgrade . Dimulai dengan -i atau -s akan menjalankan perintah install -dis sekali untuk memperbarui skema konfigurasi dan basis data.
Semua opsi yang melakukan peningkatan atau mulai OpenNMS Horizon Verifikasi jika konfigurasi valid dan lulus uji konfigurasi.
Jika Anda hanya ingin mempertahankan file konfigurasi khusus di luar OpenNMS, Anda dapat menggunakan direktori ETC-EVERLAY. Semua file dalam direktori ini baru saja disalin ke/opt/opennms/dll di wadah yang berjalan. Anda bisa memasang direktori lokal seperti ini:
volumes :
- ./etc-overlay:/opt/opennms-etc-overlay Jika Anda hanya ingin memelihara file konfigurasi khusus untuk wadah aplikasi Jetty, Anda dapat menggunakan direktori Jetty-Overlay. Semua file dalam direktori ini baru saja disalin ke/opt/opennms/jetty-webapps/opennms/web-INF di wadah berjalan. Anda bisa memasang direktori lokal seperti ini:
volumes :
- ./jetty-overlay:/opt/opennms-jetty-webinf-overlay Untuk overlay file konfigurasi/struktur direktori sewenang-wenang, Anda dapat menggunakan direktori OpenNMS-EVERLAY. Isi direktori ini disalin ke/opt/opennms/dalam wadah berjalan. Anda bisa memasang direktori lokal seperti ini:
volumes :
- ./opennms-overlay:/opt/opennms-overlay Gambar ini memungkinkan untuk menguji file konfigurasi jika mereka adalah XML yang valid dan jika dapat dimuat saat startup. Ini secara otomatis dieksekusi pada startup tetapi juga dapat dieksekusi sebagai perintah tembakan tunggal.
Dapatkan output penggunaan tester konfigurasi dengan:
docker run --rm opennms/horizon-core-web:latest -tBeberapa contoh cara menggunakan penguji konfigurasi dengan gambar ini:
Uji semua file konfigurasi:
docker run --rm opennms/horizon-core-web:latest -t -a
Tes Hanya file konfigurasi tertentu dengan output verbose -v :
docker run --rm opennms/horizon-core-web:latest -t -v snmp-config.xml
File Konfigurasi Uji dengan Direktori ETC-EVERLAY:
docker run --rm -v $(pwd)/etc-overlay:/opt/opennms-etc-overlay opennms/horizon-core-web:latest -t -v snmp-config.xml
POSTGRES_HOST : Host Basis Data PostgreSQL, Default: databasePOSTGRES_PORT : port untuk mengakses database postgresql, default: 5432POSTGRES_USER : Pengguna Admin PostgreSQL, Default: postgresPOSTGRES_PASSWORD : Kata sandi admin postgresql, default: postgresOPENNMS_DBNAME : Nama Basis Data untuk OpenNMS Horizon, Default: opennmsOPENNMS_DBUSER : Pengguna untuk mengakses database OpenNMS Horizon, Default: opennmsOPENNMS_DBPASS : Kata sandi untuk pengguna database OpenNMS Horizon, default: opennmsOPENNMS_KARAF_SSH_HOST : Alamat mendengarkan untuk port Karaf SSH, default: 0.0.0.0OPENNMS_KARAF_SSH_PORT : Port SSH untuk Karaf, default: 8101Menggunakan cluster cassandra:
${OPENNMS_CASSANDRA_HOSTNAMES} : Nama host atau alamat IP cluster cassandra, daftar yang dipisahkan koma juga diterima${OPENNMS_CASSANDRA_KEYSPACE} : nama ruang untuk bertahan data kinerja, default: newts${OPENNMS_CASSANDRA_PORT} : port cassandra, default: 9042${OPENNMS_CASSANDRA_USERNAME} : Nama pengguna Mengakses Cassandra${OPENNMS_CASSANDRA_PASSWORD} : kata sandi Mengakses cassandra Secara default gambar Horizon OpenNMS akan berjalan menggunakan RRDTool untuk penyimpanan data kinerja. Namun OpenNMS Horizon juga dapat dikonfigurasi untuk dijalankan di Cassandra menggunakan skema Newts Time Series.
Opsi konfigurasi dapat ditemukan di bagian Variabel Lingkungan . opennms-cassandra-helm.yml disediakan yang menggambarkan cara menjalankan horizon opennms dengan simpul cassandra tunggal kecil pada mesin yang sama.
MIRROR_HOST : server dengan paket rpm, default: yum.opennms.orgOPENNMS_VERSION : Versi file RPM OpenNMS Horizon, Default: stable