26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
LibreNMS tam özellikli bir açık kaynak ağ izleme sistemidir. Bu kullanan SNMP
farklı cihazlardan veri elde edildi. Cisco, Linux, FreeBSD, Juniper, Brocade, Foundry, HP ve daha fazlası gibi LibreNMS'de çeşitli cihazlar desteklenmektedir. Birden çok kimlik doğrulama mekanizmasını destekler ve iki faktörlü kimlik doğrulamayı destekler. Ağ yöneticisini e-posta, IRC veya gevşeklik ile uyarabilen özelleştirilebilir bir uyarı sistemine sahiptir.
Bu eğitimde, nms.example.com
Vultr örneğine işaret eden alan adı olarak kullanacağız . Lütfen örnek alan adının tüm tekrarlarını gerçek adla değiştirdiğinizden emin olun.
Ubuntu 16.04 Güncelleme kılavuzunu kullanarak temel sisteminizi güncelleyin . Sisteminiz güncellendiğinde, bağımlılıkları yüklemeye devam edin.
LibreNMS'nin ön ucu PHP ile yazılmıştır, bu yüzden bir web sunucusu ve PHP kurmamız gerekecektir. Bu eğitimde, maksimum güvenlik ve performans elde etmek için Nginx'i PHP 7.2 ile birlikte yükleyeceğiz.
Nginx'i yükleyin.
sudo apt -y install nginx
Nginx'i başlatın ve önyüklemede otomatik olarak başlamasını sağlayın.
sudo systemctl start nginx
sudo systemctl enable nginx
Varsayılan apt deposu PHP'nin daha eski bir sürümünü içerdiğinden, Remi deposunu ekleyin ve etkinleştirin.
sudo add-apt-repository --yes ppa:ondrej/php
sudo apt update
PHP 7.2 sürümünü LibreNMS için gerekli olan modüllerle birlikte kurun.
sudo apt -y install php7.2 php7.2-cli php7.2-common php7.2-curl php7.2-fpm php7.2-gd php7.2-mysql php7.2-snmp php7.2-mbstring php7.2-xml php7.2-zip zip unzip
Yüklenen yapılandırma dosyasını bir düzenleyicide açın.
sudo nano /etc/php/7.2/fpm/php.ini
Aşağıdaki satırları bulun.
;cgi.fix_pathinfo=1
;date.timezone =
Bu değerleri açığa Asia/Kolkata
çıkarın ve kullanın , yerel saat diliminizle değiştirin .
cgi.fix_pathinfo=0
date.timezone = Asia/Kolkata
Aşağıdaki komutu çalıştırarak sistem saat dilimini de değiştirmeniz gerekir.
sudo ln -sf /usr/share/zoneinfo/Asia/Kolkata /etc/localtime
PHP-FPM'yi yeniden başlatın.
sudo systemctl restart php7.2-fpm
MariaDB, MySQL'in açık kaynaklı bir çatalıdır. Varsayılan Ubuntu deposu MariaDB'nin eski bir sürümünü içerdiğinden, MariaDB deposunu sisteminize ekleyin.
sudo apt-key adv --yes --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mariadb.biz.net.id/repo/10.2/ubuntu xenial main'
sudo apt update
MariaDB'yi yükleyin. Kurulum sırasında, yükleyici MySQL root
kullanıcısının şifresini soracaktır . Güçlü bir şifre girin.
sudo apt -y install mariadb-server
MariaDB'yi kullanmaya başlamadan önce, yapılandırmayı biraz değiştirmemiz gerekecek. Yapılandırma dosyasını açın.
sudo nano /etc/mysql/conf.d/mariadb.cnf
Aşağıdaki kodu dosyanın sonuna ekleyin.
[mysqld]
innodb_file_per_table=1
sql-mode=""
lower_case_table_names=0
MariaDB'yi yeniden başlatın ve önyükleme zamanında otomatik olarak başlamasını sağlayın.
sudo systemctl restart mariadb.service
sudo systemctl enable mariadb.service
Veritabanını yapılandırmadan önce MariaDB örneğini korumanız gerekir.
sudo mysql_secure_installation
Geçerli MariaDB kök parolasını girmeniz ve ardından root
parolayı değiştirmeniz istenir . root
Yükleme sırasında kullanıcı için zaten güçlü bir şifre belirlediğimizden , " N
" yanıtını kullanarak atlayın . Diğer tüm sorularınız için " Y
" yanıtını verin . Sorulan sorular açıklayıcıdır.
MySQL kabuğuna root olarak giriş yapın.
mysql -u root -p
MariaDB kök kullanıcısının oturum açması için parolayı girin. LibreNMS yüklemesi için bir veritabanı ve veritabanı kullanıcısı oluşturmak üzere aşağıdaki sorguları çalıştırın.
CREATE DATABASE librenms CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'librenms'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON librenms.* TO 'librenms'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Veritabanı adını librenms
ve kullanıcı adını istediğiniz gibi değiştirebilirsiniz librenms
. Lütfen StrongPassword
çok güçlü bir şifreyle değiştirdiğinizden emin olun .
Yukarıdaki bağımlılıkların dışında LibreNMS'nin daha az bağımlılığa ihtiyacı vardır.
sudo apt -y install fping git imagemagick jwhois mtr graphviz nmap python-memcache python-mysqldb rrdtool snmp snmpd whois composer
LibreNMS uygulaması için yeni bir ayrıcalıksız kullanıcı ekleyin.
sudo useradd librenms -d /opt/librenms -M -r
sudo usermod -aG www-data librenms
LibreNMS, Github deposunu klonlayarak doğrudan kurulabilir.
cd /opt
sudo git clone https://github.com/librenms/librenms.git librenms
Sahipliği değiştirin.
sudo chown librenms:librenms -R /opt/librenms
PHP bağımlılıklarını yükleyin.
cd /opt/librenms
sudo su librenms -c "composer install"
LibreNMS birçok görev için SNMP'ye güvenir. SNMP'yi zaten yüklediğimizden, örnek yapılandırma dosyasını konumuna kopyalayın.
sudo cp /opt/librenms/snmpd.conf.example /etc/snmp/snmpd.conf
Yapılandırma dosyasını düzenleyicide açın.
sudo nano /etc/snmp/snmpd.conf
Bu satırı bulun.
com2sec readonly default RANDOMSTRINGGOESHERE
Metni RANDOMSTRINGGOESHERE
düzenleyin ve topluluk dizesini istediğiniz herhangi bir dizeyle değiştirin. Örneğin.
com2sec readonly default my-org
İlk SNMP cihazını eklediğimizde daha sonra gerekeceğinden dizeyi unutmayın.
SNMP'nin dağıtım sürümü hakkında da bilgiye ihtiyacı vardır. Dağıtım sürümünü bulmak için komut dosyasını indirin ve yükleyin.
sudo curl -o /usr/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro
sudo chmod +x /usr/bin/distro
SNMP arka plan hizmetini başlatın ve önyükleme zamanında otomatik olarak başlamasını sağlayın.
sudo systemctl enable snmpd
sudo systemctl restart snmpd
Şimdi zamanlanmış görevleri çalıştırmak için bazı crontab girişleri eklemeniz gerekecek. Yeni bir cron iş dosyası oluşturun.
sudo cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms
Cron arka plan programı hizmetini yeniden başlatın.
sudo systemctl restart cron
Kur logrotate
böylece günlük dosyaları otomatik olarak zaman içinde yenilenir.
sudo cp /opt/librenms/misc/librenms.logrotate /etc/logrotate.d/librenms
Son olarak, uygun sahiplik ve izinleri ayarlayın.
sudo chown -R librenms:www-data /opt/librenms
sudo chmod g+w -R /opt/librenms
sudo setfacl -d -m g::rwx /opt/librenms/rrd /opt/librenms/logs
sudo setfacl -R -m g::rwx /opt/librenms/rrd /opt/librenms/logs
Bağlantı SSL ile şifrelenmezse, LibreNMS'nin web arayüzü üzerinden gönderilen girişler ve diğer bilgiler güvenli değildir. Nginx'i Let's Encrypt ücretsiz SSL ile oluşturulan SSL'yi kullanacak şekilde yapılandıracağız.
Certbot deposunu ekleyin.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Let's Encrypt CA'nın istemci uygulaması olan Certbot'u yükleyin.
sudo apt -y install certbot
Not : Let's Encrypt CA'dan sertifika almak için, sertifikaların oluşturulacağı etki alanı sunucuya yönlendirilmelidir. Değilse, etki alanının DNS kayıtlarında gerekli değişiklikleri yapın ve sertifika isteğini yeniden yapmadan önce DNS'nin yayılmasını bekleyin. Certbot, sertifikaları vermeden önce etki alanı yetkilisini denetler.
SSL sertifikaları oluşturun.
sudo certbot certonly --webroot -w /var/www/html -d nms.example.com
Oluşturulan sertifikaların /etc/letsencrypt/live/nms.example.com/
dizinde depolanması muhtemeldir . SSL sertifikası olarak fullchain.pem
ve özel anahtar olarak depolanacaktır privkey.pem
.
Sertifikaların şifrelenmesini 90 gün içinde sona erdirelim, bu nedenle bir cron işi kullanarak sertifikalar için otomatik yenileme ayarlamanız önerilir.
Cron iş dosyasını açın.
sudo crontab -e
Dosyanın sonuna aşağıdaki satırı ekleyin.
30 5 * * 1 /usr/bin/certbot renew --quiet
Yukarıdaki cron işi her Pazartesi yerel saatle 05: 30'da yapılacaktır. Sertifikanın geçerlilik süresi dolmuşsa, otomatik olarak yenilenir.
Yeni bir sanal ana bilgisayar oluşturun.
sudo nano /etc/nginx/sites-available/librenms
Dosyayı doldurun.
server {
listen 80;
server_name nms.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name nms.example.com;
ssl_certificate /etc/letsencrypt/live/nms.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/nms.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /opt/librenms/logs/librenms.nginx.access.log;
root /opt/librenms/html;
index index.php;
charset utf-8;
gzip on;
gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location /api/v0 {
try_files $uri $uri/ /api_v0.php?$query_string;
}
location ~ \.php {
include fastcgi.conf;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
nms.example.com
Yukarıdaki yapılandırmada gerçek alan adınızla değiştirin .
Yeni oluşturulan yapılandırmayı etkinleştirin.
sudo ln -s /etc/nginx/sites-available/librenms /etc/nginx/sites-enabled/librenms
Nginx'i yeniden başlatın.
sudo systemctl restart nginx
Yüklemeyi tamamlamak https://nms.example.com
için favori tarayıcınızda açın. Gereksinimlerin karşılandığını göreceksiniz. Veritabanı bilgilerinizi verin ve yeni bir yönetici hesabı oluşturun. Kurulduktan sonra, kurulumu doğrulamak için bir mesaj alacaksınız. Bağlantıyı tıklayın ve yönetici hesabını kullanarak giriş yapın. " Poller
" Dışındaki her şeyin " Ok
" durumuna sahip olduğunu görmelisiniz .
Şimdi, bir cihaz eklemek için bağlantıyı tıklayın. " Add Device
" Arayüzünde, anasistem adını localhost olarak sağlayın ve her şeyi olduğu gibi bırakın. Topluluk dizenizi topluluk alanına girin. snmpd.conf
SNMP yapılandırması sırasında sağladığınız dize ile aynı olmalıdır .
Cihaz eklendikten sonra, " Devices
" sekmesine giderek ayrıntıları görebilirsiniz . Benzer şekilde, "gündüz" izleme için LibreNMS uygulamasına daha fazla cihaz ekleyebilirsiniz.
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.
Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.
Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.
Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.
CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?
Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.
Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!
Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.
Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun