Linux&Linux Hosting – Vahap Öç – Exevolium https://exevolium.com #windows, #linux, #hosting, #cloud, #database, #vmware Wed, 29 Oct 2025 20:34:54 +0000 tr hourly 1 https://wordpress.org/?v=7.0.2 https://exevolium.com/wp-content/uploads/2017/03/favicon1.png Linux&Linux Hosting – Vahap Öç – Exevolium https://exevolium.com 32 32 Fixing Repository Issues on RHEL 9 After Cloud Migration (AWS) https://exevolium.com/fixing-repository-issues-on-rhel-9-after-cloud-migration-aws/ Tue, 29 Apr 2025 13:04:18 +0000 https://exevolium.com/?p=1574 Hello everyone,

In this article, I will talk about an issue and its solution that you may encounter regarding package updates when you move your RHEL 9 server to AWS using lift&shift or similar migration methods/solutions. After starting the server, if you run “yum update” or “dnf update” and receive an error message similar to the one below, follow the steps outlined in this article to resolve the problem.

[root@ip-10-199-xxx-xxx ~]# sudo yum update
Updating Subscription Management repositories.
Unable to read consumer identity

This system is not registered with an entitlement server. You can use subscription-manager to register.

Red Hat Enterprise Linux 9 for x86_64 - AppStream from RHUI (RPMs)                                                                                                                        2.9 kB/s | 153  B     00:00
Errors during downloading metadata for repository 'rhel-9-appstream-rhui-rpms':
  - Status code: 403 for https://rhui.eu-central-1.aws.ce.redhat.com/pulp/content/content/dist/rhel9/rhui/9/x86_64/appstream/os/repodata/repomd.xml (IP: 18.192.84.171)
Error: Failed to download metadata for repo 'rhel-9-appstream-rhui-rpms': Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried

If you encounter this error, it’s important to recognize that the issue is likely related to RHUI (Red Hat Update Infrastructure). RHUI is a content delivery system provided by Red Hat, specifically designed for cloud environments such as AWS. It allows RHEL users to receive updates and packages without directly registering their systems with Red Hat.

When you launch a server on AWS updates are delivered via RHUI, which acts as a proxy-similar to how RedHat’s native repositories function. You can think of it as the mechanism that enables RHEL instances acquired via cloud marketplaces (e.g., AWS Marketplace) to operate without manual registration.

However, when a server has been migrated (e.g., via lift-and-shift), you’re proceeding with a BYOL (Bring Your Own License) approach, and if the system was previously registered with Red Hat, conflicts may arise.

To avoid these issues:

  1. Uninstall the RHUI client from the system.
  2. Deregister the server from Red Hat, making sure to also clear any cached data.
  3. If needed, update the hostname at this stage.
  4. Finally, re-register the system with Red Hat using the appropriate subscription method.

These steps help eliminate RHUI-related conflicts and ensure that your system is properly registered and able to receive updates in its new environment. Here are the commands:

yum remove -y rh-amazon-rhui-client // for AWS
yum remove -y rhui-azure-rhel* rhui-client-config-azure rhui-microsoft-azure-rhel // for Azure
yum remove -y google-rhui-client* rhui-client-config-google // for GCP

subscription-manager remove --all
subscription-manager unregister
subscription-manager clean
yum clean all
rm -rf /var/cache/yum/*
subscription-manager register
subscription-manager attach --auto

After completing these steps, you’ll need to re-enable the repositories. For RHEL 9, you can use the following commands:

subscription-manager repos --enable=rhel-9-for-x86_64-baseos-rpms
subscription-manager repos --enable=rhel-9-for-x86_64-appstream-rpms

If you encounter the warning “Repositories disabled by configuration.” at this stage, open the “/etc/rhsm/rhsm.conf” file and check whether the value of “manage_repos” is set to 1. If it’s not, it may have been disabled by “subscription-manager“. Change the value to 1 and save the file.

Then, run the following commands again:

subscription-manager refresh
subscription-manager repos --enable=rhel-9-for-x86_64-baseos-rpms
subscription-manager repos --enable=rhel-9-for-x86_64-appstream-rpms
yum clean all && yum update

I hope these steps help save you time in resolving the issue.


References:

]]>
High Availability Nginx (Corosync, Pacemaker ve DRBD Cluster) Yapılandırması https://exevolium.com/high-availability-nginx-corosync-pacemaker-ve-drbd-cluster-yapilandirmasi/ Mon, 04 Mar 2019 17:20:13 +0000 http://exevolium.com/?p=1505 Merhaba,

Daha önce High Availability HAProxy-Keepalived Kurulumu ve Yapılandırması başlığı adı altında HAProxy yedekliliği ile iki veri merkezi üzerinde isteğe göre aktif-aktif veya aktif-pasif bir yapı kurulumundan bahsetmiştim. Bu anlatımda da High Availability bir ortamın iki node üzerine kurulumundan bahsedeceğim ve bu anlatım Corosync-Pacemaker kurulumu ve DRBD kurulumu olmak üzere iki kısımdan oluşuyor. İşlemlere başlamadan önce aşağıdaki makalede geçen işlemleri gerçekleştirmelisiniz. DRBD (disk replikesine) ihtiyacım yok derseniz bu anlatımı direkt uygulayabilirsiniz.

DRBD ile Disk Replikasyon Yapılandırması ve Kurulumu

Makalede geçen işlemleri tamamladıktan sonra şimdi Corosync-Pacemaker ve Nginx kurulumuna geçebiliriz.

Bu anlatımda “Web Sunucu HA” kurmaktan bahsettim. Aynı senaryoyu veritabanı veya başka servisler için de kullanabilirsiniz.

DRBD anlatımında olduğu gibi sunucuların hosts dosyalarını ve hostnamelerini düzenlemeyi, Selinux’u disable etmeyi ve sunucuların birbirleriyle ALL konuşmalarını sağlamayı unutmayın.

192.168.0.69 nginx1.vahap.net nginx1
192.168.0.72 nginx2.vahap.net nginx2
192.168.0.63 Floating IP

Nginx’in son sürümünü yükleyebilmek için aşağıdaki işlemi uygulayın.

Nginx kurulumu için /yum.repos.d/ altına nginx.repo adına dosya oluşturun:
nano /etc/yum.repos.d/nginx.repo

Aşağıdaki repo tanımını kopyalayın ve bu dosya içine yapıştırın.

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=0
enabled=1

yum -y update
yum -y install nginx
systemctl start nginx
systemctl enable nginx

Kurulumu tamamladıktan sonra ilk makinada ilk komutu, ikinci makinada da ikinci komutu kullanın.

echo 'web01 - voc-labs' > /usr/share/nginx/html/index.html
echo 'web02 - voc-labs' > /usr/share/nginx/html/index.html

Bu işlemden sonra corosync, pacemaker ve pcsd kurun. Sırasıyla uygulayın.

yum -y install corosync pacemaker pcs

systemctl enable corosync
systemctl enable pacemaker
systemctl enable pcsd
systemctl start pcsd
passwd hacluster

İşlemi iki sunucuda gerçekleştirin ve hacluster’a şifre verin ve bu adımdan sonraki işlemleri sadece primary makinada uygulayın.

pcs cluster auth nginx1 nginx2
pcs cluster setup --name vahap-cluster nginx1 nginx2
pcs cluster start --all
pcs cluster enable --all
pcs status cluster

Bu işlem sonunda STONITH disable etmelisiniz.

pcs property set stonith-enabled=false
pcs property set no-quorum-policy=ignore
pcs property list

Bu işlem sonunda floating IP eklemeniz gerekecek. Bunun içinde bir public IP belirleyin. Bu IP’yi Load Balancer IP’si gibi düşünebilirsiniz. Arka tarafta heartbeat paket gönderip, hangi sunucu IP’si aktifse trafiği onun üzerinden sunuyor. Sırasıyla ve uygun yerleri düzelterek komutu uygulayın.

pcs resource create virtual_ip ocf:heartbeat:IPaddr2 ip=192.168.0.63 cidr_netmask=32 op monitor interval=30s
pcs resource create web ocf:heartbeat:nginx configfile=/etc/nginx/nginx.conf op monitor timeout="5s" interval="5s"
pcs status resources
pcs constraint colocation add web virtual_ip INFINITY
pcs constraint order virtual_ip then web
pcs cluster stop --all
pcs cluster start --all
pcs status resources

Bu adımdan sonra süreç tamamlanmıştır. Şimdi testleri gerçekleştirelim.

pcs status nodes
corosync-cmapctl | grep members
pcs status corosync

Tarayıcıya sunucuların IPlerini yazdığımda Nginx’in cevap verdiğinden emin olduktan sonra floating IP’yi yazıyorum. Nginx 1’in cevap verdiğini görüyorum.

Test amacıyla web01 makinasını cluster üzerinde down hale getirin. Eğer floating IP ikinci web makinasından cevap vermeye başlarsa işlem tamamdır.

İşlem sonunda node1 aktif etmek için de aşağıdaki komutu node1 makinasında uygulamalısınız.

<strong>pcs cluster start nginx1</strong>

Umarım zamandan kazanmanızı sağlar.

]]>
CentOS/RHEL – Disk Ekleme, Formatlama ve Mount İşlemi https://exevolium.com/centos-rhel-yeni-disk-ekleme-ve-mount-islemi/ Mon, 04 Mar 2019 15:00:40 +0000 http://exevolium.com/?p=1507 Merhaba,

Bu anlatımı, DRBD ile Disk Replikasyon Yapılandırması ve Kurulumu (içeriği tamamlayınca link vereceğim) makalem dolayısıyla oluşturdum. Yukarıdaki makalenin bir içeriğidir. Sunucuya herhangi disk eklemeden önce df -h ve fdisk -l çıktılarını paylaşıyorum. Görebileceğiniz üzere sda olmak üzere tek disk var. Bu anlatım, sisteme yeni bir disk ekleme üzerinedir. Disk extend değildir. Eğer ortamınız VMWare ise buraya tıklayarak disk extend yazımı inceleyebilirsiniz.

Sunucuyu kapatıp, virtual veya fiziksel diski taktıktan sonra işletim sistemini başlatıyorum.
Diski taktıktan sonra ki çıktılar aşağıda ki gibidir.

CentOS, takılan diski algılamış. Şimdi bu eklediğim 10 GB disk alanını işletim sistemine ikinci bir disk olarak mount etmeliyim.
Bunun için de fdisk kullanacağım. fdisk /dev/sdb diyerek partition oluşturuyorum.

Üstteki görselin adımları fdisk /dev/sdb dedikten sonra şu şekilde:

n tuşuna tıklayıp, enter ile devam ediyoruz. (New partition oluşturuyoruz.)

Bölümlediğimiz kısmı primary yapacağımız için p tuşuna basıp enter diyerek devam ediyoruz.

Sonraki seçenekleri default bırakıp ilerledim. İki kez enter’a basın.

Son olarak w tuşu ile değişiklikleri kaydedin.

İşlem sonunda sdb1 partition oluştuğunu göreceksiniz.

Yukarıdaki görselde oluşturduğumuz /dev/sdb1 diskini, mkfs kullanarak xfs formatında biçimlendirdim. Dilerseniz ext3 veya ext4 formatında da biçimlendirebilirsiniz ancak ext4 (32 bit) kullanmanızı öneririm. Bunun için de mkfs.ext4 /dev/sdb1 demeniz yeterlidir.

Bu işlem sonunda hata almamanız halinde diski sisteme mount ederek kullanabilirsiniz. Ben /data şeklinde bir folder açtım ve diski bu dizine mount ettim. İşletim sisteminin reboot olmasıyla beraber diskin unmount olmasını önlemek için de fstab’a diski ekledim.

Dilerseniz blkid /dev/sdb1 diyerek UUID ID’yi alarak mount edebilirsiniz.

Önemli notlar: Diski xfs formatında mount edecekseniz aşağıdaki yolları da uygulayarak mount edebilirsiniz.

a. Eğer ortamınızda 2 TB’den büyük bir veri varsa ve disk boyutu 2 TB’den yüksekse şu şekilde mount etmeniz faydanıza olur. (Örnektir.)
mount -o inode64 /dev/sdb1 /data

b. XFS, güç kesintisinde dosya sistemi bütünlüğünü sağlamak için yazma engellerini, arabirim sıfırlamalarını, varsayılan olarak sistem çökmelerini korumayı sağlar. Donanımınızın bir yazma önbelleği özelliği varsa bu korumanın devre dışı bırakılmasının önerildiğini ve aksi takdirde performansı olumsuz etkilediğini gördüm. Aşağıdaki mount seçeneğini kullanarak bu korumayı devre dışı bırakabilirsiniz.
mount -o nobarrier /dev/sdb1 /data

Umarım zamandan kazanmanızı sağlar.

]]>
High Availability HAProxy-Keepalived Kurulumu ve Yapılandırması https://exevolium.com/high-availability-haproxy-load-balancer-kurulumu-ve-yapilandirmasi/ Sun, 10 Feb 2019 12:51:32 +0000 http://exevolium.com/?p=1486 Merhaba,

Çoğu sistemi incelediğimde, web ve veritabanı ortamları yedekli çalışacak veya cluster olacak şekilde yapılandırılıyor. Ancak işin üst segmenti olan yük dengeleyici ve dns mimarisinin performans ve erişilebilirliği çok incelenmiyor.

İşte bu anlatımda iki farklı veri merkezi üzerinde çalışan (örneğin 2 İstanbul ve 2 İzmir) HAProxy makinasını hem kendi içinde hem de region bazlı nasıl yedekli çalıştırabileceğinizden bahsedeceğim.

Bu yapı AWS Route53 ve Cloudfront’un benzer yedekliliğine sahiptir. Bu makale iki seriden oluşacak. (İlk kısım Load Balancer zone yedekliliği ve ikinci kısım da DNS yedekliliği.) HAProxy kurulum ve yapılandırmasını anlatırken, kurduğunuz HAProxy’i nasıl HA çalıştırabileceğinizden bahsedeceğim. Önce sunucularınızın hostnamelerini düzenleyin.

hostname haproxy1.vahap.net
vi /etc/hostname

CentOS – RHEL üzerine kurulum yapacağım için yum ile kurulumu başlatıyorum ve haproxy kullanıcısını ekliyorum.

yum install haproxy -y
useradd haproxy

Kurulumu tamamladıktan sonra HAProxy config dosyasını yedeklemelisiniz. Bunun için de /etc/haproxy içindeki haproxy.cfg dosyasını yedekleyin.

cd /etc/haproxy
mv haproxy.cfg haproxy.cfg_yedek
cp haproxy.cfg_yedek haproxy.cfg

Bir metin editörüyle config dosyasını açın. Configi silin. Hazırladığım default config tanımlarım aşağıdadır. Kendi yapınızda kullanabilir ve kendinize göre düzenleyebilirsiniz. Aşağıdaki configi yapıştırın.

#---------------------------------------------------------------------
# Genel ayarlar.
#---------------------------------------------------------------------
global

    chroot      /var/lib/haproxy
    pidfile     /var/run/haproxy.pid
    maxconn     4000
    user        haproxy             #HAProxy kullanici ve grup tanimi.
    group       haproxy
    daemon

    # turn on stats unix socket
    stats socket /var/lib/haproxy/stats
#---------------------------------------------------------------------
# Bu kisimla cok duzenleme yapmayin.
#---------------------------------------------------------------------
defaults
    mode                    http
    log                     global
    option                  httplog
    option                  dontlognull
    option http-server-close
    option forwardfor       except 127.0.0.0/8
    option                  redispatch
    retries                 3
    timeout http-request    10s
    timeout queue           1m
    timeout connect         10s
    timeout client          1m
    timeout server          1m
    timeout http-keep-alive 10s
    timeout check           10s
    maxconn                 3000
#---------------------------------------------------------------------
#HAProxy Web Monitor yapilandirmasi.
#---------------------------------------------------------------------
listen haproxy3-monitoring *:8080                #Haproxy Web Monitor.
    mode http
    option forwardfor
    option httpclose
    stats enable
    stats show-legends
    stats refresh 5s
    stats uri /stats                             #Web monitor dizini.
    stats realm Haproxy\ Statistics
    stats auth adm_user:adm_sifre1*            #Kullanici adi ve sifre.
    stats admin if TRUE
    default_backend app-main                    #Backend tanim.
#---------------------------------------------------------------------
# FrontEnd konfigurasyonu.
#---------------------------------------------------------------------
frontend main
    bind *:80
    option http-server-close
    option forwardfor
    default_backend app-main
#---------------------------------------------------------------------
# BackEnd load balance yapilandirma.
#---------------------------------------------------------------------
backend app-main
    balance roundrobin                                     #Load balance proxy methodu.
    option httpchk HEAD / HTTP/1.1\r\nHost:\ localhost    #Web site kontrol - 200 status kod.
    server site1 192.168.58.58:80 check                 #Web1
    server site2 192.168.58.59:80 check                 #Web2

Bu işlemden sonra sunucunuzun hosts dosyasını düzenleyin ve uygun kayıtları ekleyin. Çünkü üstte görebileceğiniz gibi, site1 ve site2 kayıtları bir dns kaydıdır. Metin editörüyle /etc/hosts dosyasını açın ve ekleyin.

192.168.58.58 site1.vahap.net site1
192.168.58.59 site2.vahap.net site2
192.168.58.60 haproxy1.vahap.net haproxy1
192.168.58.61 haproxy2.vahap.net haproxy2
192.168.58.62 vip.vahap.net vip

HAProxy üzerinde 3 çeşit yönlendirme methodunuz var. İlki roundrobin (bir ona bir diğerine), leastconn (en az bağlantı hangi sunucudaysa ona) ve source (hangi IP’nin hangi makinaya yönleneceği) şeklindedir. Uygun olanı seçip üstteki config dosyasını düzenleyin. HAProxy servisini başlatın ve sistem açılışında da otomatik başlattırın.

systemctl start haproxy
systemctl enable haproxy

Yukarıdaki tüm işlemleri ikinci HAProxy makinanızda da uygulayın. Aynı adımları uyguladıktan keepalived kurulumunu gerçekleştirmelisiniz. Bu her iki makinanın da durumunu kontrol eden ve sorun anında listener IP’nin-trafiğin diğer makinaya geçmesini sağlayan bir yapıdır. Öncelikle Keepalived kurulumunu her iki makinada da yapın ve sonra keepalived config dosyasının yedeğini alın. Sırasıyla adımlar:

yum install keepalived -y
cd /etc/keepalived/
mv keepalived.conf keepalived.conf_yedek
cp keepalived.conf_yedek keepalived.conf

İşlem sonunda da keepalived.conf dosyasının içeriğini silin ve aşağıda oluşturduğum satırları ekleyin.

vrrp_script chk_haproxy {
  script "killall -0 haproxy" # HAProxy islemini kontrol et.
  interval 2 # 2 saniye ping araligi.
  weight 2
}

vrrp_instance VI_1 {
  interface eno16777984 # Network adaptor monitor.
  state MASTER # MASTER haproxy1 ve YEDEK haproxy2
  virtual_router_id 51
  priority 101 # Oncelik 101 HAProxy1'de ve 100 HAProxy2'de.
  virtual_ipaddress {
    192.168.58.62 # VRRP (Sanal-Listener IP adres.)
  }
  track_script {
    chk_haproxy
  }
}

Önemli noktalar: HA, VRRP ile sağlanıyor ve bu da keepalived ile oluşturuluyor. Keepalived için bir public IP adresiniz olmalı ve bu IP adresi iki HAProxy makinanızda da kullanabilir durumda olmalıdır. (Çünkü domaini bu IP’ye yönlendireceksiniz.) Üstte ki config dosyasında “eno16777984” yazan kısmı, kendi ethernet kart adınıza göre düzenleyin ve keeaplived servisini başlatın.

systemctl start keepalived
systemctl enable keepalived

Benim de kurguladığım şekilde, region bazlı da aktif-aktif çalışan bir load balancer yapısı istiyorsanız şart şu: Keepalived için eklediğiniz listener IP bloğunu, diğer veri merkezinde oluşturduğunuz HAProxy makinalarında da kullanabiliyor olmanız lazım. Bunun için isterseniz iki veri merkezi arasında MPLS hattı çektirin isterseniz de anonsları diğer veri merkezinden de yaptırın.

Aşağıda kafamdaki proje taslağını çizdim. Elbette DNS sunucularını da kendim yapılandırdım ve GeoLocation ile anycast olacak şekilde hangi şehirden istek yapılıyorsa en yakın şehirdeki veri merkezindeki yapıya yönlendiriyor. Burada sistem taraflı tüm yapı hem kendi içinde hem de lokasyon bazlı yedeklidir.

*Bilgi paylaştıkça büyür ancak içeriği paylaşırken kaynak gösterme nezaketinde bulunursanız sevinirim.

Umarım zamandan kazanmanızı sağlar.

]]>
Windows/Linux Loglarını Syslog Sunucusuna Göndermek https://exevolium.com/windows-loglarini-syslog-sunucusuna-gondermek/ Fri, 11 Jan 2019 07:29:56 +0000 http://exevolium.com/?p=1443 Merhaba,

Daha önce log sunucusu kurulumunu içeren bir makale paylaşmıştım. Elbette aradan yıllar geçti ve paketler-sürümler güncellendi. Yine de aynı dokümandaki repo linklerini güncelleyip, latest sürümü kullanıp kurabilirsiniz. Ubuntu 18.04’de de çalışır. (Yol ve methodlar aynıdır.)

Merkezi log sunucusu kurulumu. (Graylog-Elasticsearch-MongoDB)

Windows Sunucu Loglarını Gönderme

Windows sunucunuz üzerindeki logları, log sunucunuza göndermek için 3rd party ürün olan ve Community Edition olarak yayınlanan NXLog yazılımını kullanabilirsiniz.

Windows sunucunuz üzerindeki logları, log sunucunuza göndermek için 3rd party ürün olan ve Community Edition olarak yayınlanan NXLog yazılımını kullanabilirsiniz.

Aşağıdaki linkten yazılımı indirebilirsiniz.
NXLog 2.10 sürümü.

Yazılımı kurduktan sonra Program Files (x86) klasörü içerisine nxlog isminde bir klasör oluşturacaktır. O klasör içinde conf klasörünü açıp, o dosya içindeki nxlog.conf dosyasını aşağıdaki dosyayla değiştirin.

NXLog Config dosyası.

Bu config dosyası logları Syslog TCP olarak gönderir. Bu nedenle GUI olarak Graylog, Kibana veya hangi yapıyı kullanıyorsanız, Inputs olarak Syslog TCP seçmelisiniz. İndirdiğiniz config dosyasında da iki adet satır bulunuyor.
Bu satırlara sunucu log sunucunuzun IP adresini ve gönderdiğiniz logları dinlettirdiğiniz (Syslog TCP olarak) portu yazmalısınız.

Son olarak da Windows Servislerini açıp (services.msc) açıp, NXLog servisini start etmelisiniz. Firewall tarafında bir engel yoksa loglar akmaya başlayacaktır. Eğer GUI olarak Graylog kullanıyorsanız akan loglar düzgün akmayacaktır. Logların detayını açtığınızda bu şekilde gözükmesini istiyorsanız Graylog tarafında düzenleme yapmalısınız.

Bu düzenlemenin detaylarına ulaşabileceğiniz adresin detayları bu linkte mevcuttur.

Graylog JSON extractor düzenlemesi.

Eğer sorun yaşarsanız sosyal medya adreslerimden ulaşabilirsiniz.

Linux Sunucu Loglarını Gönderme

Linux üzerinden logları göndermek için de rsyslog kullanabilirsiniz. Bu dosyaya da RHEL sistemlerde /etc/rsyslog.conf olarak ulaşabilirsiniz. Ubuntu/Debian’da da /etc/rsyslog.d/50-default.conf içinden ulaşabilirsiniz.

Eklemeniz gereken parametreler aşağıdaki linkte mevcuttur.

Rsyslog.conf parametreleri.

Umarım zamandan kazanmanızı sağlar.

]]>
Zabbix – VMWare ve ICMP Ping (Simple Check) Monitor https://exevolium.com/zabbix-vmware-ve-icmp-ping-simple-check-monitor/ Mon, 07 Jan 2019 09:53:43 +0000 http://exevolium.com/?p=1362 Merhaba,

Geçmişte open source monitor sistemlerinde Nagios nasıl popülerse günümüzde de aynı popülerliğe sahip bir monitor sistemi var: Zabbix. Zabbix’in ne olduğu, sistem gereksinimleri, kurulumu ve Zabbix agent kurulumuna dair içerik girdisini daha önce oluşturmuştum.

Zabbix Server 4.0 ve Agent kurulumu linkinden ulaşabilirsiniz.

Bu anlatımdaysa kısaca ICMP Ping kontrolünün nasıl yapılacağından bahsedeceğim. Dilerseniz http servisini de simple check ile monitör ettirebilirsiniz.

Zabbix ICMP Ping (simple check) Konfigürasyonu:

Zabbix kurulumunu yaptığınızı ve başarıyla login olduğunuzu varsayıyorum. Eğer kurmadıysanız üstte bulunan linkten inceleyebilirsiniz. Zabbix kurulumunu tamamladıktan sonra aşağıdaki komutları uygulayın. Eğer ortamınız Debian/Ubuntu/Kali ise apt-get kullanarak ilerleyebilirsiniz.

Zabbix’in ICMP kontrollerini yapabilmesi için öncelikle fping kurulumunu yapmanız ve hangi dizin altında çalıştığını tespit etmeniz gerekiyor. Bunun için aşağıdaki komutları sırasıyla çalıştırın ve which fping çıktısını not alın.

yum install update
yum install fping
which fping

Yukarıdaki işlemi tamamladıktan sonra zabbix_server.conf dosyasını düzenlemeniz gerekiyor. Düzenleyeceğiniz satırlar şu şekilde:

StartPingers = 10 (Defaultta tanım 1'dir, 10 yapın.)
FpingLocation = /usr/sbin/fping (which fping çıktısını yazın.)

Bu iki satırın başında # var ise # kaldırın ve kaydedip çıkın.

Bu işlemi tamamladıktan sonra Zabbix’i yeniden başlatın. Zabbix durumunu kontrol ettiğinizde çıktı aşağıdaki gibiyse işlem başarılı olmuştur.

**Tüm ICMP Ping logları (zabbix_server.log) dosyası içinde ve bu dosyada /tmp klasörü içinde bulunur. Bu bilgiyi kenara not almakta fayda var.

Şimdi sırada Zabbix GUI üzerinde tanımları oluşturmak var. Bunun için de Zabbix’e web arayüzünden giriş yapın ve Configuration>Hosts’a tıklayın. Eğer daha önce eklediğiniz bir host varsa onu seçin ve detaylarına gelin. Eğer yoksa da Create Host’a tıklayın.

Host ekleme adımında yeni bir grup oluşturdum ve tanımladım.

Yukarıdaki ayarlamaları yaptıktan sonra Add diyerek hostumu ekledim. Şimdi sırada Application tanımlamak gerekiyor. Bunun için de hostu ekledikten sonra açılan sayfada Application tıklamalısınız.

Açılan ekranda da Create Application demeli ve isim vermelisiniz.
Vahap-App dedim. Alttaki görselde Item’a tıklayıp, Create Item dedim.

Add diyerek Item eklemelisiniz. Bu işlemi tamamladıktan sonra 5 dakika kadar bekleyin. Sonrasında Monitoring>Latest Data kısmında görebilirsiniz. 0 ping yok ve 1 ping var anlamına gelir. Grafiğini de görebilirsiniz ve gerekirse Grafana ile entegre edip alarm üretebilir veya Zabbix’ten de bunu yapabilirsiniz.

Fping ile ilgili Zabbix’te muhtemelen karşılaşabileceğiniz hatalar:

a. fping: address family for hostname not supported.
Bunun için aşağıdaki adımları uygulayın:

chown root:zabbix /usr/sbin/fping
chmod 4710 /usr/sbin/fping
chmod ug+s /usr/sbin/fping

İşlem sonunda test etmek için aşağıdaki komutları uygulayın:
su - zabbix -s /bin/bash
fping 8.8.8.8

Eğer bu şekilde ping atabiliyorsanız sorun düzelmiştir.

VMWare Monitor yapısı için iki sistem önereceğim.
1’ncisi TICK ve diğeri de Zabbix. Bunları yeni bir içerik olarak ekleyip, yine bu sayfaya link bırakarak yayınlayacağım.

Umarım zamandan kazanmanızı sağlar.

]]>
406 Not Acceptable Hatası Çözümü https://exevolium.com/406-not-acceptable-hatasi-cozumu/ Mon, 22 Oct 2018 15:05:36 +0000 http://exevolium.com/?p=1317 Merhaba,

Eğer yapınızda Mod Security kullanıyorsanız, Mod Security’nin site içeriğini engellemesinden kaynaklı olarak sorun yaşıyor olabilirsiniz. Üç çözümü var:

Web sitenizin .htaccess dosyasına aşağıdaki satırları eklemeniz:

<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>

Eğer buna rağmen hata almaya devam ediyorsanız Mod Security disable edin veya da site dosyalarınızın bulunduğu klasöre 777 verin. (Bu sonuncuyu önermesem de çözüm sağlayabilir.)

Umarım zamandan kazanmanızı sağlar.

]]>
cPanel Site Ön İzleme “Not Supported” Hatası https://exevolium.com/cpanel-on-izleme-not-supported-hatasi-cozumu/ Mon, 22 Oct 2018 14:57:57 +0000 http://exevolium.com/?p=1314 Merhaba,

Bu hatayla sık karşılaşmıyor olsam da aralıklarla karşıma çıktığı için not alma gereği duydum. Eğer siz de sitenize http://IP ADRESİ/~cpanel-kullanici-adi/ şeklinde erişmek isterken Not Supported hatası alıyorsanız EasyApache4 üzerinden suPHP kurmanız gerekiyor.

Bunun için de WHM/cPanel arayüzünde aşağıdaki adımları takip edin.

  • WHM panele giriş yapınız.
  • Software > EasyApache 4 tıklayın.
  • Customize seçeneğine tıklayın.
  • Apache Modules tıklayın.
  • Search alanına suphp yazıp aratın.
  • mod_suphp bulduğunuzda sağ taraftaki Unaffected seçin.
  • Save as profile butonuna tıkladıktan sonra kurulum başlayacaktır. Bu işlem tamamlandıktan sonra dns yönlendirmesi yapmadan erişmek istediğiniz sitenin çalıştığı PHP versiyonunda cgi yerine suPHP aktif etmelisiniz. Bunun için de aşağıdaki adımları takip etmelisiniz.
    • WHM > Software > MultiPHP Manager’a girmeli,
    • PHP Handlers seçmeli,
    • suPHP’nin çalışacağı php versiyonun karşısındaki “Edit” butonuna tıklayarak suphp seçip “Apply” demelisiniz.

Umarım zamandan kazanmanızı sağlar.

]]>
Linux (CentOS-RHEL) LVM Disk Extend (Genişletme) İşlemi https://exevolium.com/vmware-linux-centos-redhat-disk-extend-islemi/ Mon, 22 Oct 2018 14:46:39 +0000 http://exevolium.com/?p=1299 Merhaba,

Sürekli ihtiyacım olmadığından unutmamak adına buraya not olarak ekliyorum. Yazıya başlamadan önce belirtmem gerek:
Eğer arttırmak istediğiniz volume LVM olarak partitionlara ayrılmadıysa diski extend etmeden önce sunucuyu yedekleyin ve bu yazıyı okumayı burada sonlandırın.
Bu anlatım LVM ile partitiona ayrılmış yapılarda geçerlidir. Benim örnek disk yapılandırmam şu şekildedir:

Öncelikle VMWare üzerinde, VM’in diskini yükseltin. Eğer sunucuda VMWare Tools kurulu değilse öncelikle VMWare Tools kurmalısınız.
VMWare Tools kurmak için bu linki inceleyebilirsiniz. Redhat, CentOS, Ubuntu VMWare Tools Kurulumu
Disk yükseltmeden önce ki disk boyutu ve yapılandırmam şu şekilde:

Ve disk arttırımını yaptıktan sonra da disk alanımdaki son durum şu şekilde:

VMWare üzerinde, VM’e tanımladığım virtual diskim /dev/sda olduğu için işlemlere başlamak adına aşağıdaki komutu çalıştırıyorum.

fdisk /dev/sda

Bu işlem neticesinde eklediğim 40 GB alanı yeni bir alan gibi gösterebilmek için n harfine basıyorum.
Sonra primaryde (/dev/sda) işlem yapılacağı için p harfine basıyorum ve partition number seçiyorum. Şu an /dev/sda1 ve /dev/sda2 olduğu için 3 diyorum. Sonra iki kez Enter tuşuna basıyorum. Sistemde bölüm kimliğini düzenlemek için t harfine basıyor, partition number belirtip (sda3 olan) 8e diyorum. Bu işlem, bu bölümün Hex kodunu değiştiriyor ki Linux’dan, Linux LVM oldu. İşlemlerin kaydolması için w basıyor ve sunucuyu yeniden başlatıyorum. Tüm işlemler aşağıdaki gibi.

Tüm bu işlemler sonucunda eklemiş olduğumuz 3’ncü disk partition aşağıdaki gibi gözükmelidir. (/dev/sda3)

Tüm süreç bundan sonra başlıyor. Oluşturulan bu disk alanını, fiziksel bir volume haline getirmek için aşağıdak işlemi yapmalısınız.

pvcreate /dev/sda3

Daha sonra bu alanı genişletmeniz gerekli ve bunun için de aşağıdaki komutu uygulamalısınız ancak hangi grubun yükseltileceğini anlayabilmeniz için öncelikle vgdisplay demelisiniz. VG Name öğrendikten sonra aşağıdaki komutu uygulamalısınız.

vgextend centos /dev/sda3

Volume Group üzerinde kaç adet free space bulunduğunu görmek için de yine yukarıdaki görselde olduğu gibi aşağıdaki komutu çalıştırmalısınız. Benim eklediğim alan 40 GB olduğu için bu boyutu görüyorum.

vgdisplay centos | grep "Free"

Sıra geldi Volume Group genişletmeye. Ancak bu adıma geçmeden önce hangi Logical Volume genişleteceğinizi anlamalı ve ona göre VG Name kullanmalısınız. Ben root logical volume genişleteceğim için bir sonraki komutta root yazacağım. Bir sonraki komutu daha iyi anlamak için lvdisplay demelisiniz.

Hangi Logical Volume’de işlem yapacağınızı netleştirdikten sonra LV Path kısmındaki adresi kopyalayın ve komutu çalıştırın.
CentOS 7.x ortamında bu işlemi yaptığım için ve disk formatını xfs seçtiğim için extend işlemini xfs_growfs komutuyla gerçekleştirdim. İlk df -h sorgusu extend öncesini ve ikinci df -h işlem sonrasındaki volume boyutunu gösteriyor.

Eğer File System xfs değil de ext4 ise aşağıdaki komutu kullanabilirsiniz. (/dev/centos/root kısmı benim yapıma göredir. Siz kendi yapınıza uygun olan path belirtmelisiniz.)

resize2fs -p /dev/centos/root

Umarım zamandan kazanmanızı sağlar.

]]>
ESXi 6.x SNMP Servis Aktif Etme (How to Enable SNMP on ESXi 6.x) https://exevolium.com/esxi-6-x-snmp-servis-aktif-etme/ Tue, 09 Oct 2018 10:12:50 +0000 http://exevolium.com/?p=1278 Merhaba,

ESXi 6.x üzerinde SNMP servisini aktif etmek için SSH ile CLI bağlanmalısınız.

Sonrasında aşağıdaki komutu uygulamalısınız. Bu adımda SNMP tanımı yaparken bağlantı sağlanabilmesi için Community ID tanımlamalısınız. Burada COMMUNITY_ID kısmına, SNMP bağlantısı tanımlayacağınız ID yazın. Örneğin VOC

esxcli system snmp set --communities VOC

Bu işlem sonunda SNMP servisini enable etmelisiniz.

esxcli system snmp set --enable true

Bu işlemi de tamamladıktan sonra SNMP servisine erişim için firewallda kural girilmesi gerekiyor. Aşağıdaki komut erişimi enable ediyor ve tüm IP’lerden erişime açık hale getiriyor. Duruma göre IP tanımlayabilirsiniz.

esxcli network firewall ruleset set --ruleset-id snmp --allowed-all true
esxcli network firewall ruleset set --ruleset-id snmp --enabled true

En son işlemde SNMP servisini yeniden başlatın ve SNMP restart sonrasında yeniden enable edin.

/etc/init.d/snmpd restart

esxcli system snmp set --enable true

En son işlemde de SNMP’nin durumunu çeken komutu uygulayın ve kontrol edin. Aşağıdaki gibi olmalıdır.

esxcli system snmp get

SNMP bağlantısını test etmek için Linux sunucunuzda snmp kurarak, snmpwalk komutuyla bağlantıyı test edebilirsiniz.
SNMP_TEST_EDILECEK_HOST_IP kısmına, ESXi IP adresini yazmalısınız. Alttaki kurulum örneği CentOS-Fedora içindir. Ubuntu’da apt-get install snmp demeniz yeterlidir. snmpwalk komutu aynıdır.

yum -y install net-snmp net-snmp-utils
snmpwalk -v1 -c VOC SNMP_TEST_EDILECEK_HOST_IP

Windows ortamında SNMP testi yapmak için de aşağıda linkini paylaştığım uygulamayı kullanabilirsiniz.

Visual SNMP programını indirmek için tıklayın.

Umarım zamandan kazanmanızı sağlar.

]]>