در بخش اول از مجموعه مطلب «آموزش نصب و پیکربندی ELK Stack» هر کدام از اجزای ELK Stack معرفی شد و سناریویی معرفی شد و همچنین Elasticsearch نصب و پیکربندی شد.در این بخش قصد داریم تا Kibana و Nginx را نصب و پیکربندی کنیم.
نصب Kibana :
برای نصب Kibana که یک پنل وب می باشد ابتدا فایل مخزن آن را ایجاد کنید :
#vi /etc/yum.repos.d/kibana.repo
اکنون این خطوط را درون فایل بنویسید :
[kibana-6.x]
name=Kibana repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
اکنون kibana را با اجرای دستور پایین نصب کنید :
#yum install kibana
پس از نصب فایل پیکربندی kibana را باز کنید :
#vi /etc/kibana/kibana.yml
سپس این تنظیمات را انجام دهید :
server.port: 5601 server.host: "localhost" elasticsearch.url: "http://localhost:9200"
اکنون سرویس kibana را start و enable کنید :
#systemctl enable kibana
#systemctl start kibana
برای بررسی اینکه آیا kibana بر روی پورت مورد نظر فعال شده است می توانید از دستور پایین استفاده کنید :
# netstat -antupl | grep 5601
یک نمونه خروجی از اجرای دستور گفته شده را در تصویر پایین مشاهده می کنید :
نصب Nginx :
از آنجایی که Kibana را برروی localhost تنظیم کردیم،قصد داریم تا با استفاده از Nginx درخواست ها را دریافت کنیم و همچنین برای امنیت بیشتر basic authentication را روی Nginx فعال کنیم و بعد از آن درخواست ها را به Kibana ارسال کنیم.برای نصب nginx ابتدا مخازن epel را نصب کنید :
#yum install epel-release
سپس nginx به همراه httpd-tools را نصب کنید :
#yum install nginx httpd-tools
اکنون فایل تنظیمات nginx را باز کنید :
# vi /etc/nginx/nginx.conf
سپس قسمت {}server را پاک کنید.اکنون یک virtual host برای kibana تعریف کنید :
#vi /etc/nginx/conf.d/kibana.conf
سپس این خطوط را درون فایل بنویسید :
server { listen 80; server_name elk.fedorafans.com; auth_basic "Restricted Access"; auth_basic_user_file /etc/nginx/.kibana-user; location / { proxy_pass http://localhost:5601; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } }
نکته اینکه در جلوی server_name آدرس ELK Server خود را بنویسید.
اکنون یک فایل جدید basic authentication برای کاربران ایجاد کنید :
# htpasswd -c /etc/nginx/.kibana-user admin
پس از اجرای دستور بالا باید پسورد مورد نظر خود را برای کاربر admin وارد کنید.اکنون برای بررسی پیکربندی nginx می توانید دستور پایین را اجرا کنید :
#nginx -t
اگر همه چیز بدون مشکل بود،اکنون می توانید nginx را start و enable کنید :
#systemctl start nginx
#systemctl enable nginx
جهت بررسی اینکه آیا nginx رو پورت 80 فعال است نیز می توانید از دستور پایین استفاده کنید :
# netstat -antupl | grep 80
یک نمونه خروجی از اجرای دستور گفته شده را در تصویر پایین مشاهده می کنید :
اگر از SELinux استفاده می کنید این دستور را اجرا کنید :
#setsebool -P httpd_can_network_connect 1
اکنون پورت 80 را نیز بر روی firewalld باز کنید :
# firewall-cmd --zone=public --add-port=80/tcp # firewall-cmd --zone=public --add-port=80/tcp --permanent
ادامه دارد …
سلام و خسته نباشید به مرد بزرگ فدورا باز
یه مطلب هم در مورد ایمیل و سرور ایمیل بنویسی بد نیست.
درضمن… گاهی احتیاج هستش که ماها در برنامه نویسی هامون با این ابزار هایی که معرفی می کنی ارتباط برقرار کنیم.
ممنون میشم اگه ابزاری دارند هر کدوم از برنامه هایی که معرفی می کنی، به ما یه اطلاعی بدی
باتشکر
درود بر شما
آره سر فرصت در مورد mail server هم می نویسم.
منظورت کدوم ابزارهاست!؟راستش درست متوجه قسمت دوم حرفت نشدم!
پیروز باشید.
سلام . خسته نباشید
وقتی برای server_name آی پی سرور elk (سرور جاری که در حال کار روی اون هستیم) رو میزارم بعدش nginx رو تست میکنم یه همچین خروچی میگیرم :
nginx: [warn] conflicting server name “45.159.115.194” on 0.0.0.0:80, ignored
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
کانفلیکت میخوره . میشه راهنمایی کنید