Ubuntu 16.04.4 LTS RunDeck Kurulumu

Ubuntu 16.04.4 LTS RunDeck Kurulumu

Java kurarak başlıyoruz,  komutları sırası ile giriniz.

dpkg –add-architecture i386

apt-get install openjdk-8-jdk

Rundeck ‘i indiriyoruz.

wget http://download.rundeck.org/deb/rundeck_2.10.8-1-GA_all.deb

Rundeck i kuruyoruz.

dpkg -i rundeck_2.10.8-1-GA_all.deb

/etc/rundeck/framework.properties ve /etc/rundeck/rundeck-config.properties dosyalarında grails.serverURL=http://localhost:4440 yazan bölümleri grails.serverURL=http://SUNUCU-IP-ADRESI:4440 ile değiştiriyoruz.

nano /etc/rundeck/framework.properties

nano /etc/rundeck/rundeck-config.properties

Rundeck servisini başlatıyoruz.

service rundeckd start

Şimdi browser ınız üzerinden http://SUNUCU-IP-ADRESI:4440 ile RunDeck arayüzüne erişebilirsiniz.

Cpanel None Of The Authentication Methods Supported By This Client hatası ve çözümü

Cpanel None Of The Authentication Methods Supported By This Client hatası ve çözümü (0x800CCC80)
Cpanel Sunucu bu istemci tarafından desteklenen hiçbir kimlik doğrulama yöntemini desteklemiyor. (0x800CCC80)

Mail alıp gönderirken ve mailleriniz Cpanel kurulu sunucuda çalışıyor ise ve bu hata ile karşılaşıyor iseniz whm panel e root ile giriniz.

Whm panelden Exim Configuration Manager’a geliniz.

Basic Editör sekmesinin altındaki Security bölümüne giriniz ve “Require clients to connect with SSL or issue the STARTTLS command before they are allowed to authenticate with the server.” bölümünü Off olarak değiştirip kayıt ediniz.

Ayhan ARDA

Tuning Primer Kurulumu ve Kullanımı

Tuning Primer Kurulumu ve Kullanımı

Tuning Primer bir Mysql Tuner Alternatifi , aşağıdaki komutları sırası ile dosyasını indirip çalıştırabilirsiniz. Mysql Tuner kadar olmasada yeterli bilgiler mevcut ve kullanmaya değer.

[root@ayhanarda ~]# cd /usr/local/bin

[root@ayhanarda bin]# wget https://launchpadlibrarian.net/78745738/tuning-primer.sh

Şimdi sıra çalıştırmaya geldi.

[root@ayhanarda bin]# tuning-primer.sh

Çalıştırıldığında mysql in conf u ile elde ettiği değerleri en iyi optimizasyon için karşılaştırarak size öneriler sunuyor.

Mysql in versiyonundan ne kadar süredir servis verdiğine , açık olduğu son süre içinde kaç query ye cevap verdiğine, anlık bağlantı sayısına , slow query olup olmadığına , cache size ınızın yeterli olup olmadığına , max connections değerinizin anlık değerinizi karşılayıp karşılamadığına , memory kullanımınıza , join lerinize , temp alanınıza , tablo lock sayınıza kadar ölçüp biçip size öneriler sunuyor. Örneğin ben çaqlıştırdımda çıktısı aşağıdaki gibi oldu.

Ancak öncesinde 48 saat kadar mysql servisinizin açık olması daha doğru sonuçlar almanızı sağlayacaktır.

MySQL Version 10.0.34-MariaDB x86_64

Uptime = 1 days 18 hrs 21 min 54 sec
Avg. qps = 1402
Total Questions = 213875408
Threads Connected = 34

SLOW QUERIES
The slow query log is NOT enabled.
Current long_query_time = 10.000000 sec.
You have 8 out of 213875496 that take longer than 10.000000 sec. to complete
Your long_query_time seems to be fine

WORKER THREADS
Current thread_cache_size = 200
Current threads_cached = 103
Current threads_per_sec = 0
Historic threads_per_sec = 0
Your thread_cache_size is fine

MAX CONNECTIONS
Current max_connections = 200
Current threads_connected = 35
Historic max_used_connections = 137
The number of used connections is 68% of the configured maximum.
Your max_connections variable seems to be fine.

No InnoDB Support Enabled!

MEMORY USAGE
Max Memory Ever Allocated : 13.54 G
Configured Max Per-thread Buffers : 8.38 G
Configured Max Global Buffers : 7.79 G
Configured Max Memory Limit : 16.18 G
Physical Memory : 23.36 G
Max memory limit seem to be within acceptable norms

KEY BUFFER
Current MyISAM index space = 1.53 G
Current key_buffer_size = 1.00 G
Key cache miss rate is 1 : 99348
Key buffer free ratio = 54 %
Your key_buffer_size seems to be too high.
Perhaps you can use these resources elsewhere

QUERY CACHE
Query cache is enabled
Current query_cache_size = 800 M
Current query_cache_used = 800 M
Current query_cache_limit = 100 M
Current Query cache Memory fill ratio = 100.00 %
Current query_cache_min_res_unit = 4 K
MySQL won’t cache query results that are larger than query_cache_limit in size

SORT OPERATIONS
Current sort_buffer_size = 1 M
Current read_rnd_buffer_size = 768 K
Sort buffer seems to be fine

JOINS
/usr/local/bin/tuning-primer.sh: line 402: export: `2097152′: not a valid identifier
Current join_buffer_size = 40.00 M
You have had 576657 queries where a join could not use an index properly
You have had 1303 joins without keys that check for key usage after each row
join_buffer_size >= 4 M
This is not advised
You should enable “log-queries-not-using-indexes”
Then look for non indexed joins in the slow query log.

OPEN FILES LIMIT
Current open_files_limit = 138451 files
The open_files_limit should typically be set to at least 2x-3x
that of table_cache if you have heavy MyISAM usage.
Your open_files_limit value seems to be fine

TABLE CACHE
Current table_open_cache = 69120 tables
Current table_definition_cache = 65960 tables
You have a total of 59378 tables
You have 65487 open tables.
The table_cache value seems to be fine

TEMP TABLES
Current max_heap_table_size = 256 M
Current tmp_table_size = 1.46 G
Of 17855233 temp tables, 32% were created on disk
Effective in-memory tmp_table_size is limited to max_heap_table_size.
Perhaps you should increase your tmp_table_size and/or max_heap_table_size
to reduce the number of disk-based temporary tables
Note! BLOB and TEXT columns are not allow in memory tables.
If you are using these columns raising these values might not impact your
ratio of on disk temp tables.

TABLE SCANS
Current read_buffer_size = 1 M
Current table scan ratio = 309 : 1
read_buffer_size seems to be fine

TABLE LOCKING
Current Lock Wait ratio = 1 : 1582
You may benefit from selective use of InnoDB.
If you have long running SELECT’s against MyISAM tables and perform
frequent updates consider setting ‘low_priority_updates=1’

Ayhan ARDA

innodb_log_file_size değişikliği

InnoDb Log File Size Değiştirme

Bu işlem , Innodb de kritik olabilecek bir işlem , dolayısı ile once shutdown mode unun 1 olup olmadığına bakıyoruz , mysql e login olup sorgumuzu çalıştıralım.

mysql> show variables like ‘innodb_fast_shutdown%’;

+———————-+——-+
| Variable_name | Value |
+———————-+——-+
| innodb_fast_shutdown | 2 |
+———————-+——-+
1 row in set (0.00 sec)

Görüldüğü üzere değerimiz 2 , bunu sağlıklı işlem yapabilmek için 1 yapalım.

mysql> SET GLOBAL innodb_fast_shutdown=1;

Tekrar bir önceki komuut çalıştırırsak değerin 1 e döndüğünü görebiliriz.

Şimdi mysql i stop edelim.

[root@ayhanarda root]# service mysql stop

şimdi log dosyalarımızı silmeyelimde farklı bir yere atalım , ne olur ne olmaz.

[root@ayhanarda root]# cd /var/lib/mysql/
[root@ayhanarda mysql]# mv ib_logfile* /tmp/

şimdi my.cnf de ilgili değeri değiştirelim.

[root@ayhanarda mysql]# nano /etc/my.cnf

innodb_log_file_size = 750M
(bunu kendi yapınıza göre ayarlayın , ben 24 gb ram li üzerinde 2000 mysql veritabanı koşan sunucuda çalıştırıyorum , yapacağınız değeri bulmak için mysqltuner kullanmanız faydalı olabilir)

Şimdi mysql i start edelim.

[root@ayhanarda root]# service mysql start

şimdi mysql dizininde iken ls -al | grep ib_* derseniz 2 adet log dosyasının belirlediğiniz değere ayarlandığını görebilirsiniz ya da yine mysql sorgusu ile tüm innodb_log değerlerini görebilirsiniz.

[root@ayhanarda mysql]# mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 15108
Server version: 10.0.34-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.

MariaDB [(none)]> show variables like ‘innodb_log%’;
+——————————-+———–+
| Variable_name | Value |
+——————————-+———–+
| innodb_log_arch_dir | ./ |
| innodb_log_arch_expire_sec | 0 |
| innodb_log_archive | OFF |
| innodb_log_block_size | 512 |
| innodb_log_buffer_size | 8388608 |
| innodb_log_checksum_algorithm | innodb |
| innodb_log_compressed_pages | ON |
| innodb_log_file_size | 786432000 |
| innodb_log_files_in_group | 2 |
| innodb_log_group_home_dir | ./ |
+——————————-+———–+
10 rows in set (0.00 sec)

Ayhan ARDA

MySQLTuner Kurulumu

MySQLTuner Kurulumu

MySQLTuner, Mysql servisinin performansını ölçmek istediğimiz durumlarda kullanabileceğimiz Perl ile yazılmış başarılı bir araç. basit bir kurulum ile geliyor, performans ve stabiilteiçin öneriler sunuyor , mysqltuner çalıştırılmadan önce mysql servisiniz ne kadar süredir çalışıyor ise mysqltuner’dan o kadar doğru değerler alabilirsiniz. MySQL/MariaDB/Percona Server için kullanabilirsiniz , sadece mysql için olduğunu düşünmeyin. 300 den fazla indikator ile geliyor.

Kurulum aşağıdaki gibi , komutları sırası ile çalıştırmanız yeterli.

wget http://mysqltuner.pl/ -O mysqltuner.pl
wget https://raw.githubusercontent.com/major/MySQLTuner-perl/master/basic_passwords.txt -O basic_passwords.txt
wget https://raw.githubusercontent.com/major/MySQLTuner-perl/master/vulnerabilities.csv -O vulnerabilities.csv
perl mysqltuner.pl

Ayhan ARDA

WHM/cPanel Tabanlı Sunucularda Tüm Kullanıcıların Cron larını Listeleme

WHM/cPanel Tabanlı Sunucularda Tüm Kullanıcıların Cron larını Listeleme

Binlerce kullanıcılı bir Cpanel kurulu sunucu yönettiğimizi düşünelim , bazen sunucularda öngörmediğimiz durumlar periyodik olarak gerçekleşebilir ve bu da akla bir cron tanımı olabileceği şüphesi uyandırır , böyle durumlarda belli komutlar ile elde ettiğiniz veriler sonucu bazı kullanıcılar üzerinde yoğunlaşırsınız ve bu durumda yapılan işlemlerden biri de o kullanıcın zamanlanmış görevlerini incelemektir , bu hengamenin içinde nasıl tüm kullanıcıların cron tanımlarını tek seferde görebiliriz diye düşünürken aşağıdaki komutla bunu yapabileceğimizi düşündüm , umarım faydalı olur.

for user in $(cut -f1 -d: /etc/passwd); do crontab -u $user -l; done

Ayhan ARDA

The system received an error from the “MySQL” database “mysql”: ER_PASSWORD_NO_MATCH (Can’t find any matching row in the user table) hatası ve çözümü

Genellikle cpanel de mysql veritabanı ve kullanıcısı oluşturmaya çalışırken aşağıdaki hatayı alabilirsiniz.

The system received an error from the “MySQL” database “mysql”: ER_PASSWORD_NO_MATCH (Can’t find any matching row in the user table)

Bu durumda yapmanız gereken şey my.cnf dosyanızda skip-name-resolve satırını kapatmanız.

nano /etc/my.cnf

skip-name-resolve

#skip-name-resolve

service mysql restart

Tekrar mysql oluşturduğunuzda bu hatayı almayacaksınız.

Ayhan ARDA

Windows plesk’te yanlışlıkla yönetim erişimini sınırlandırıp erişemez isek ne yapabiliriz?

Yine başımıza gelen bir hadise , Windows Plesk te yönetim erişimini yanlış ayarlama sebebi ile hiç bir şekilde Plesk arayüzüne giremez olduk. Tekrar nasıl açarız diye düşünürken çözümü aşağıdaki şekilde bulduk.

O sunucuya RDP ile bağlanın ve komut konsolunu açın. (cmd)

Aşağıdaki komutu çalıştıralım ve sonrasında direkt olak mysql in içine düşeceğiz.

C:\Users\Administrator>plesk db
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 22731
Server version: 5.5.52 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.

mysql>

Şimdi ilgili veritabanına erişelim , access_policy değeri psa isimli veritabanımızın içinde misc isimli tabloda yer alıyor.

mysql> use psa;
Database changed

Şu anda psa isimli tablomuzda işlem yapabiliriz , önce yanlışlıkla kapattığımız değerimizi görelim, bakınız deny durumunda yani kimse erişemesin demişiz , şimdi bunu allow olarak değiştirmemiz gerekiyor.

mysql> select * from misc;
+———————————+————-
—————+
| param | val
|
+———————————+————-
—————+
| access_policy | deny

Bu değeri allow yapmak için aşağıdaki sorgumuzu çalıştıralım.

mysql> update misc set val=”allow” where param=”access_policy”;

Şimdi değere tekrar baktığımızda artık deny yazan yerde allow yazdığını göreceksiniz ve farklı hiç bir işlem yapmadan Plesk yönetim arayüzüne erişebilirsiniz.

Ayhan ARDA

Juniper Ex2200 Port Yönlendirme(Mirroring) ve The number of Analyzer session cannot exceed 1 Hatası

Juniper Ex2200 Port Yönlendirme(Mirroring) ve The number of Analyzer session cannot exceed 1 Hatası

Bugün bir juniper ex2200 de port mirror yapmam gerekti. Önce bunun nasıl yapıldığını aktarayım.

Diyelim ki ge-0/0/17.0 interface ine gelen giden tüm trafiği ge-0/0/19.0 a yönlendirmek istiyoruz. Komutumuz aşağıdaki gibi olmalı. Önce 17 nolu portumuz için gelen giden tüm trafik olacak şekilde bir analyzer ismi ile bu portu yönlendirmek istediğimizi belirtiyoruz. (Koyu ile işaretlenmiş bölümü değiştirebilirsiniz)

set ethernet-switching-options analyzer port17to19-ayhanarda input ingress interface ge-0/0/17.0
set ethernet-switching-options analyzer port17to19-ayhanarda input egress interface ge-0/0/17.0

Sonrasında aşağıdaki komut ile o analyzer isminin trafiğinin çıkış interface i olarak 19 nolu porta göndermek istediğimizi set ediyoruz.

set ethernet-switching-options analyzer port17to19-ayhanarda output interface ge-0/0/19.0

Sonrasında show analyzer komutu ile kontrol edebilirsiniz.

Peki bir den fazla portu yönlendirmek istersek durum nasıl , Eğer birden fazla portu tek porta yönlendirecek isek bir problem yok ancak birden fazla portu birden fazla porta yönlendirmek ister isek yani 17. port 19 a , 18. port 20 ye gitsin der isek burada The number of Analyzer session cannot exceed 1 Hatasını alacağız , sebebi ise Juniper ex2200 sadece bir adet port mirror desteklemekte. Aşağıda bununla ilgili , juniper serilerinin desteklediği session sayılarını gösterir tablo bulunmakta.

Ayhan ARDA

cutycapt: cannot connect to X server hatası ve çözümü

cutycapt: cannot connect to X server hatası ve çözümü

Bir url listesinin screenshot larını almam gerekti ve bunun için çözüm ararken cutycapt denemeye karar vermiştim ancak bir bsit bir linux vps te x screen olmadığı için ssh tan komutu çalıştırdığımda “cutycapt: cannot connect to X server” hatası aldım. Tabi cahillik olsa gerek hızlıc bir çok deneysel çözüm denedim ancak hatadan kurtulmanın en kolay çözümü benim için xvfb kurmaktan geçti.

root@ayhanarda:/home/arda# cutycapt –url=http://www.ayhanarda.com/ –out=ayhanarda.png
cutycapt: cannot connect to X server

root@ayhanarda:/home/arda# apt-get install xvfb

Yukarıdaki komut ubuntu debian türevleri için , eğer centos redhat kullanıyor iseniz yum install xvfb kullanabilirsiniz. Tabi artık cutycat ı kullanma komutumuz da değişiyor , şimdi artık aşağıdaki komut örneğini kullanabilirsiniz.

root@ayhanarda:/home/arda# xvfb-run –server-args=”-screen 0, 1280x1200x24″ cutycapt –url=http://www.hostrazzi.com –out=hostrazzi.png