25 Aralık 2020 Cuma

pigz - parallel zip


# tar --use-compress-program="pigz --best --recursive  -k -r | pv" -cf arsiv.tar.gz yedeklenecek-dizin



# tar --use-compress-program="pigz -k " -xvf arsiv.tar.gz 

[remzi@d7567 ~]$  tar --use-compress-program="pigz --best --recursive  -k -r " -xf arsiv.tar.gz 

[remzi@d7567 ~]$


pigz - parallel zip


# tar --use-compress-program="pigz --best --recursive  -k -r | pv" -cf arsiv.tar.gz yedeklenecek-dizin



# tar --use-compress-program="pigz -k " -xvf arsiv.tar.gz 

[remzi@d7567 ~]$  tar --use-compress-program="pigz --best --recursive  -k -r " -xf arsiv.tar.gz 

[remzi@d7567 ~]$


29 Kasım 2020 Pazar

Linux ve Google Chrome yerel sertifikaları eklemek

 Öncelikle linux sistemimize yerel ca sertifikalarını eklemek için;

RHEL tabanlı bir sistem kullanıyorsanız;

yerel sertifikayı;

/etc/pki/ca-trust/source/anchors/

dizinine kopyaladıktan sonra;

# update-ca-trust enable

# update-ca-trust extract

Komutlarını çalıştırmanız yeterli olur.


Şayet farklı bir dağıtım kullanıyorsanız ve updat-ca-trust mevcut değilse,

sertifikanızı /etc/pki/tls/certs dizinine kopyalayabilirsiniz.


Google chrome için nssdb ca yı eklemeniz yeterli olur,
Eklemek için;

certutil  -d sql://home/remzi/.pki/nssdb/ -A -t "C,,," -n sat02.ipa.istpazdemo.yerel -i /tmp/katello-server-ca.crt

sonrasında kontrol için ;

$ certutil  -d sql://home/remzi/.pki/nssdb/ -L

Certificate Nickname                                         Trust Attributes
                                                             SSL,S/MIME,JAR/XPI

sat68m1.istpaz.yerel                                         C,,  
sat68m1.istpaz.local - Katello                               CT,C,C
Red Hat Candlepin Authority - Red Hat, Inc.                  CT,C,C
idm01.ipa.istpazdemo.yerel                                   C,,  
local.repo.home                                              Cu,u,u
sat01.ipa.istpazdemo.yerel                                   C,,  
sat01.ipa.istpazdemo.yerel - Katello                         CT,c,c
sat02.ipa.istpazdemo.yerel                                   C,,  
sat02.ipa.istpazdemo.yerel - Katello                         C,,  
[remzi@seyyah-usb ~]$ 

Dizinleri ve dosya isimlerini kendi sisteminize göre değiştirmeniz gerekiyor.

Linux ve Google Chrome yerel sertifikaları eklemek

 Öncelikle linux sistemimize yerel ca sertifikalarını eklemek için;

RHEL tabanlı bir sistem kullanıyorsanız;

yerel sertifikayı;

/etc/pki/ca-trust/source/anchors/

dizinine kopyaladıktan sonra;

# update-ca-trust enable

# update-ca-trust extract

Komutlarını çalıştırmanız yeterli olur.


Şayet farklı bir dağıtım kullanıyorsanız ve updat-ca-trust mevcut değilse,

sertifikanızı /etc/pki/tls/certs dizinine kopyalayabilirsiniz.


Google chrome için nssdb ca yı eklemeniz yeterli olur,
Eklemek için;

certutil  -d sql://home/remzi/.pki/nssdb/ -A -t "C,,," -n sat02.ipa.istpazdemo.yerel -i /tmp/katello-server-ca.crt

sonrasında kontrol için ;

$ certutil  -d sql://home/remzi/.pki/nssdb/ -L

Certificate Nickname                                         Trust Attributes
                                                             SSL,S/MIME,JAR/XPI

sat68m1.istpaz.yerel                                         C,,  
sat68m1.istpaz.local - Katello                               CT,C,C
Red Hat Candlepin Authority - Red Hat, Inc.                  CT,C,C
idm01.ipa.istpazdemo.yerel                                   C,,  
local.repo.home                                              Cu,u,u
sat01.ipa.istpazdemo.yerel                                   C,,  
sat01.ipa.istpazdemo.yerel - Katello                         CT,c,c
sat02.ipa.istpazdemo.yerel                                   C,,  
sat02.ipa.istpazdemo.yerel - Katello                         C,,  
[remzi@seyyah-usb ~]$ 

Dizinleri ve dosya isimlerini kendi sisteminize göre değiştirmeniz gerekiyor.

28 Kasım 2020 Cumartesi

ansible notları

Ansible ile ilgili notlarımı buradan paylaşayım dedim;

RHEL 9 ansible notları;

# dnf install ansible-navigator

# execution environment yüklenmesi

# https://catalog.redhat.com/search?gs&q=ee-supported&searchType=all
# podman pull registry.redhat.io/ansible-automation-platform-24/ee-supported-rhel8:latest

# podman pull registry.redhat.io/ansible-automation-platform-24/ee-supported-rhel9:latest

# ansible-navigator images

ansible-playbook  ihtiyacımız varsa, ansible-core paketini kurmamız gerekmektedir.


RHEL 8 ansible yüklenmesi;


# yum list installed platform-python

# subscription-manager repos --enable ansible-2-for-rhel-8-x86_64-rpms

# yum module install python36

# yum install ansible

# yum install python3-libselinux


Ansible sürüm bilgisi;

$ ansible --version

ansible 2.9.16

config file = /home/admin/ansible/ansible.cfg

 configured module search path = ['/home/admin/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']

  ansible python module location = /usr/lib/python3.6/site-packages/ansible

  executable location = /usr/bin/ansible

  python version = 3.6.8 (default, Aug 18 2020, 08:33:21) [GCC 8.3.1 20191121 (Red Hat 8.3.1-5)]

ansible varsayılan olarak öncelikle bulunduğunuz dizinde ansible.cfg dosyasını arar. Şayet bulunduğumuz dizinde ansible.cfg bulunmaz ise, /etc/ansible/ansible.cfg dosyası aranır.

Örnek ansible.cfg dosyası

$ cat ansible.cfg 

[defaults]

inventory=./inventory

forks          = 4

poll_interval  = 10

remote_user    = admin

sudo_user      = root

ask_sudo_pass = True

ask_pass      = false


[privelege_escalation]

become = true

become_method = sudo

become_user = root

become_ask_pass = false


$ ansible -m setup localhost |grep ansible_python_version

invertory örneği;

[webservers]

web1.tazzz.lan

web2.tazzz.lan

web[3:9].tazzz.lan


[mysqlservers]

mysql1.tazzz.lan

mysql2.tazzz.lan

mysql3.tazzz.lan

mysql[10:13].tazzz.lan


[prod:children]

webservers

mysqlservers


inventory dosyasındaki all ve ungrouped isimli iki group daima vardır.

all tüm hostları, ungrouped  her hangi bir grupta olmayan hostları içerir.


Ansible varsayılan ayar dosyasını değiştirmek;

ANSIBLE_CONFIG=/home/remzi/.my-ansible.cfg

**************.my-ansible.cfg******************

[defaults]

inventory = ./inventory

remote_user = someuser

ask_pass = false


[privilege_escalation]

become = true

become_method = sudo

become_user = root

become_ask_pass = false

**************.my-ansible.cfg******************


inventory dosyalsı ini veya yaml formantında olabilir. 

inventory dosyasına örnek:

1. ini static file

[websrv]

web1.local.lan

web2.local.lan

[dbsrv]

db1.local.lan

db2.local.lan

[lbsrv]

lb[1:2].local.lan


2. yaml  static inventory örnek:

lbsrv:

    hosts:

        lb1.local.lan

        lb2.local.lan

websrv:

    hosts:

        web[1:5].local.lan

            web1 den web5 kadar sunuculari kapsar

web:

    children:

        - lbsrv    

        - websrv


    

# ansible all -m ping

-------------------------------------------------------------------------------------------------------------------------------

$ sudo -l -U remzi

Matching Defaults entries for remzi on seyyah-usb:

    !visiblepw, always_set_home, match_group_by_gid, always_query_group_plugin, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS", env_keep+="MAIL QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE

    LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY",

    secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/var/lib/snapd/snap/bin


User remzi may run the following commands on seyyah-usb:

    (ALL) NOPASSWD: ALL

-------------------------------------------------------------------------------------------------------------------------------

ansible playbook çalıştırmadan yazım kontrolü,

ansible-playbook --syntax-check db12prepare.yml

Çalışma simülasyonu;

ansible-playbook -C db12prepare.yml



ansible'da değişkenler tanımlarken '.' (nokta), boşluk kullanılmamalı.

ansible değişkenlerine örnek;

hosts

hosts-center

host1

host-centor1

host1-center_2


Belli başlı ansible değişken tipleri;

1. Genel değişkenler

2. playbook içindeki değişkenler

3. host özelliklerinden gelen değişkenler


Gizlilik(kullanıcı parolası vs. gibi)  taşıyan bilgilerin ansible vault ile güvende tutulması;

ansible-vault create kullanici-bilgileri.yml

ansible-vault view kullanici-bilgileri.yml

ansible-vault decrypt kullanici-bilgileri.yml --output=kullanici-bilgileri.txt



ansible-vault ile birden fazla dosya üzerinde işlem yapılabiliyor.
Detaylı bilgi için her zaman olduğu gibi; # man ansible-vault 

                        







ansible notları

Ansible ile ilgili notlarımı buradan paylaşayım dedim;

RHEL 8 ansible yüklenmesi;


# yum list installed platform-python

# subscription-manager repos --enable ansible-2-for-rhel-8-x86_64-rpms

# yum module install python36

# yum install ansible

# yum install python3-libselinux


Ansible sürüm bilgisi;

$ ansible --version

ansible 2.9.16

config file = /home/admin/ansible/ansible.cfg

 configured module search path = ['/home/admin/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']

  ansible python module location = /usr/lib/python3.6/site-packages/ansible

  executable location = /usr/bin/ansible

  python version = 3.6.8 (default, Aug 18 2020, 08:33:21) [GCC 8.3.1 20191121 (Red Hat 8.3.1-5)]

ansible varsayılan olarak öncelikle bulunduğunuz dizinde ansible.cfg dosyasını arar. Şayet bulunduğumuz dizinde ansible.cfg bulunmaz ise, /etc/ansible/ansible.cfg dosyası aranır.

Örnek ansible.cfg dosyası

$ cat ansible.cfg 

[defaults]

inventory=./inventory

forks          = 4

poll_interval  = 10

remote_user    = admin

sudo_user      = root

ask_sudo_pass = True

ask_pass      = false

callback_whitelist=cgroup_perf_recap,timer,profile_tasks,profile_roles

[callback_cgroup_perf_recap]

control_group=ansible_profile

[privelege_escalation]

become = true

become_method = sudo

become_user = root

become_ask_pass = false

[ssh_connection]

#control_path = %(directory)s/%%h-%%r-%%p

ssh_args = -o ControlMaster=auto  -O ControlPersist=600s


$ ansible -m setup localhost |grep ansible_python_version

invertory örneği;

[webservers]

web1.tazzz.lan

web2.tazzz.lan

web[3:9].tazzz.lan


[mysqlservers]

mysql1.tazzz.lan

mysql2.tazzz.lan

mysql3.tazzz.lan

mysql[10:13].tazzz.lan


[prod:children]

webservers

mysqlservers


inventory dosyasındaki all ve ungrouped isimli iki group daima vardır.

all tüm hostları, ungrouped  her hangi bir grupta olmayan hostları içerir.


Ansible varsayılan ayar dosyasını değiştirmek;

ANSIBLE_CONFIG=/home/remzi/.my-ansible.cfg

**************.my-ansible.cfg******************

[defaults]

inventory = ./inventory

remote_user = someuser

ask_pass = false


[privilege_escalation]

become = true

become_method = sudo

become_user = root

become_ask_pass = false

**************.my-ansible.cfg******************


inventory dosyalsı ini veya yaml formantında olabilir. 

inventory dosyasına örnek:

1. ini static file

[websrv]

web1.local.lan

web2.local.lan

[dbsrv]

db1.local.lan

db2.local.lan

[lbsrv]

lb[1:2].local.lan


2. yaml  static inventory örnek:

lbsrv:

    hosts:

        lb1.local.lan

        lb2.local.lan

websrv:

    hosts:

        web[1:5].local.lan

            web1 den web5 kadar sunuculari kapsar

web:

    children:

        - lbsrv    

        - websrv


    

# ansible all -m ping

-------------------------------------------------------------------------------------------------------------------------------

$ sudo -l -U remzi

Matching Defaults entries for remzi on seyyah-usb:

    !visiblepw, always_set_home, match_group_by_gid, always_query_group_plugin, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS", env_keep+="MAIL QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE

    LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY",

    secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/var/lib/snapd/snap/bin


User remzi may run the following commands on seyyah-usb:

    (ALL) NOPASSWD: ALL

-------------------------------------------------------------------------------------------------------------------------------

ansible playbook çalıştırmadan yazım kontrolü,

ansible-playbook --syntax-check db12prepare.yml

Çalışma simülasyonu;

ansible-playbook -C db12prepare.yml



ansible'da değişkenler tanımlarken '.' (nokta), boşluk kullanılmamalı.

ansible değişkenlerine örnek;

hosts

hosts-center

host1

host-centor1

host1-center_2


Belli başlı ansible değişken tipleri;

1. Genel değişkenler

2. playbook içindeki değişkenler

3. host özelliklerinden gelen değişkenler


Gizlilik(kullanıcı parolası vs. gibi)  taşıyan bilgilerin ansible vault ile güvende tutulması;

ansible-vault create kullanici-bilgileri.yml

ansible-vault view kullanici-bilgileri.yml

ansible-vault decrypt kullanici-bilgileri.yml --output=kullanici-bilgileri.txt



ansible-vault ile birden fazla dosya üzerinde işlem yapılabiliyor.
Detaylı bilgi için her zaman olduğu gibi; # man ansible-vault 

                        







ansible notları

Ansible ile ilgili notlarımı buradan paylaşayım dedim;

RHEL 8 ansible yüklenmesi;


# yum list installed platform-python

# subscription-manager repos --enable ansible-2-for-rhel-8-x86_64-rpms

# yum module install python36

# yum install ansible

# yum install python3-libselinux


Ansible sürüm bilgisi;

$ ansible --version

ansible 2.9.16

config file = /home/admin/ansible/ansible.cfg

 configured module search path = ['/home/admin/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']

  ansible python module location = /usr/lib/python3.6/site-packages/ansible

  executable location = /usr/bin/ansible

  python version = 3.6.8 (default, Aug 18 2020, 08:33:21) [GCC 8.3.1 20191121 (Red Hat 8.3.1-5)]

ansible varsayılan olarak öncelikle bulunduğunuz dizinde ansible.cfg dosyasını arar. Şayet bulunduğumuz dizinde ansible.cfg bulunmaz ise, /etc/ansible/ansible.cfg dosyası aranır.

Örnek ansible.cfg dosyası

$ cat ansible.cfg 

[defaults]

inventory=./inventory

forks          = 4

poll_interval  = 10

remote_user    = admin

callback_whitelist=cgroup_perf_recap,timer,profile_tasks,profile_roles,yaml

[callback_cgroup_perf_recap]

control_group=ansible_profile


###strategy                = linear
stdout_callback        = yaml

[privelege_escalation]

become = true

become_method = sudo

become_user = root

become_ask_pass = false

[ssh_connection]

#control_path = %(directory)s/%%h-%%r-%%p

ssh_args = -o ControlMaster=auto  -O ControlPersist=600s


Ansible ayar dosyasından bahsetmişken, sistemdeki ansible ayar dosyalarının önceliklerini atlamamak gerekiyor.

1. ANSIBLE_CONFIG

    çevre değişkeni olarak ANSIBLE_CONFIG tanımlandıysa, ansible ayar dosyası olarak, bu değişkeni kullanır.

   ANSIBLE_CONFIG=/labs/ansible/ansible.cfg

şeklinde tanım yaptıysak, ansible ayar dosyası olarak; /labs/ansible/ansible.cfg kullanır.


2. ./ansible.cfg

    ANSIBLE_CONFIG tanımle değilse, ansible komutu bulunduğu dizinde ansible.cfg dosyasını arar. Mevcut ise ayar dosyası olarak kullanır.

 

3. $HOME/.ansible.cfg

     Ansible, ANSIBLE_CONFIG ve bulunduğu dizinde ansible.cfg yoksa, kullanıcının ev dizini altında .ansible.cfg dosyasını arar, bulursa kullanır.


4. /etc/ansible/ansible.cfg

    Yukarıdaki üç durumda mevcut değilse, ansible /etc/ansible/ansible.cfg dosyasını ayar dosyası olarak kullanır.



$ ansible -m setup localhost |grep ansible_python_version

invertory örneği;

[webservers]

web1.tazzz.lan

web2.tazzz.lan

web[3:9].tazzz.lan


[mysqlservers]

mysql1.tazzz.lan

mysql2.tazzz.lan

mysql3.tazzz.lan

mysql[10:13].tazzz.lan


[prod:children]

webservers

mysqlservers


inventory dosyasındaki all ve ungrouped isimli iki group daima vardır.

all tüm hostları, ungrouped  her hangi bir grupta olmayan hostları içerir.


Ansible varsayılan ayar dosyasını değiştirmek;

ANSIBLE_CONFIG=/home/remzi/.my-ansible.cfg

**************.my-ansible.cfg******************

[defaults]

inventory = ./inventory

remote_user = someuser

ask_pass = false


[privilege_escalation]

become = true

become_method = sudo

become_user = root

become_ask_pass = false

**************.my-ansible.cfg******************


inventory dosyası ini veya yaml formantında olabilir. 

inventory dosyasına örnek:

1. ini static file

[websrv]

web1.local.lan

web2.local.lan

[dbsrv]

db1.local.lan

db2.local.lan

[lbsrv]

lb[1:2].local.lan


2. yaml  static inventory örnek:

lbsrv:

    hosts:

        lb1.local.lan

        lb2.local.lan

websrv:

    hosts:

        web[1:5].local.lan

            web1 den web5 kadar sunuculari kapsar

web:

    children:

        - lbsrv    

        - websrv


    

# ansible all -m ping

-------------------------------------------------------------------------------------------------------------------------------

$ sudo -l -U remzi

Matching Defaults entries for remzi on seyyah-usb:

    !visiblepw, always_set_home, match_group_by_gid, always_query_group_plugin, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS", env_keep+="MAIL QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE

    LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY",

    secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/var/lib/snapd/snap/bin


User remzi may run the following commands on seyyah-usb:

    (ALL) NOPASSWD: ALL

-------------------------------------------------------------------------------------------------------------------------------

ansible playbook çalıştırmadan yazım kontrolü,

ansible-playbook --syntax-check db12prepare.yml

Çalışma simülasyonu;

ansible-playbook -C db12prepare.yml



ansible'da değişkenler tanımlarken '.' (nokta), boşluk kullanılmamalı.

ansible değişkenlerine örnek;

hosts

hosts-center

host1

host-centor1

host1-center_2


Belli başlı ansible değişken tipleri;

1. Genel değişkenler

2. playbook içindeki değişkenler

3. host özelliklerinden gelen değişkenler


Gizlilik(kullanıcı parolası vs. gibi)  taşıyan bilgilerin ansible vault ile güvende tutulması;

ansible-vault create kullanici-bilgileri.yml (  yeni dosya olusturulur )

ansible-vault rekey kullanici-bilgileri.yml  ( dosyanin parolasini degistiri )

ansible-vault view kullanici-bilgileri.yml

ansible-vault decrypt kullanici-bilgileri.yml --output=kullanici-bilgileri.txt



ansible-vault ile birden fazla dosya üzerinde işlem yapılabiliyor.
Detaylı bilgi için her zaman olduğu gibi; # man ansible-vault 

Sorun oldugunda ansible yapilandirma ayarlarimizi kontrol etmek icin,
 
ansible-config dump komutundan faydalanabiliriz.
 
                        
 
ansible ile kullanıcı oluşturulması;

$> ansible all -m user -a "name='remzi' uid=32768 groups='wheel' password={{ 'degistirbeni' | password_hash('sha512','gizzzlitussszzzz') }} generate_ssh_key=yes" --user=root 

Tum sunucularimizda ayni kullanici id ile remzi kullanicisi olusur.
parola=degistirbeni
salt=gizzzlitussszzzz 
salt parola hash olusturulurken kullanilir. rastgele birseyde verebilirsiniz.



selinux aktif sunucumuzda web dizinin selinuz etiketinin duzenlenmesi:

ansible localhost -m file -a " path=/var/www recurse=true setype=httpd_sys_content_t" -b



ansible ile birden fazla rpm reposunun sisteme eklenmesi:





ansible notları

Ansible ile ilgili notlarımı buradan paylaşayım dedim;

RHEL 8 ansible yüklenmesi;


# yum list installed platform-python

# subscription-manager repos --enable ansible-2-for-rhel-8-x86_64-rpms

# yum module install python36

# yum install ansible

# yum install python3-libselinux


Ansible sürüm bilgisi;

$ ansible --version

ansible 2.9.16

config file = /home/admin/ansible/ansible.cfg

 configured module search path = ['/home/admin/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']

  ansible python module location = /usr/lib/python3.6/site-packages/ansible

  executable location = /usr/bin/ansible

  python version = 3.6.8 (default, Aug 18 2020, 08:33:21) [GCC 8.3.1 20191121 (Red Hat 8.3.1-5)]

ansible varsayılan olarak öncelikle bulunduğunuz dizinde ansible.cfg dosyasını arar. Şayet bulunduğumuz dizinde ansible.cfg bulunmaz ise, /etc/ansible/ansible.cfg dosyası aranır.

Örnek ansible.cfg dosyası

$ cat ansible.cfg 

[defaults]

inventory=./inventory

forks          = 4

poll_interval  = 10

remote_user    = admin

callback_whitelist=cgroup_perf_recap,timer,profile_tasks,profile_roles,yaml

[callback_cgroup_perf_recap]

control_group=ansible_profile


###strategy                = linear
stdout_callback        = yaml

[privelege_escalation]

become = true

become_method = sudo

become_user = root

become_ask_pass = false

[ssh_connection]

#control_path = %(directory)s/%%h-%%r-%%p

ssh_args = -o ControlMaster=auto  -O ControlPersist=600s


Ansible ayar dosyasından bahsetmişken, sistemdeki ansible ayar dosyalarının önceliklerini atlamamak gerekiyor.

1. ANSIBLE_CONFIG

    çevre değişkeni olarak ANSIBLE_CONFIG tanımlandıysa, ansible ayar dosyası olarak, bu değişkeni kullanır.

   ANSIBLE_CONFIG=/labs/ansible/ansible.cfg

şeklinde tanım yaptıysak, ansible ayar dosyası olarak; /labs/ansible/ansible.cfg kullanır.


2. ./ansible.cfg

    ANSIBLE_CONFIG tanımle değilse, ansible komutu bulunduğu dizinde ansible.cfg dosyasını arar. Mevcut ise ayar dosyası olarak kullanır.

 

3. $HOME/.ansible.cfg

     Ansible, ANSIBLE_CONFIG ve bulunduğu dizinde ansible.cfg yoksa, kullanıcının ev dizini altında .ansible.cfg dosyasını arar, bulursa kullanır.


4. /etc/ansible/ansible.cfg

    Yukarıdaki üç durumda mevcut değilse, ansible /etc/ansible/ansible.cfg dosyasını ayar dosyası olarak kullanır.



$ ansible -m setup localhost |grep ansible_python_version

invertory örneği;

[webservers]

web1.tazzz.lan

web2.tazzz.lan

web[3:9].tazzz.lan


[mysqlservers]

mysql1.tazzz.lan

mysql2.tazzz.lan

mysql3.tazzz.lan

mysql[10:13].tazzz.lan


[prod:children]

webservers

mysqlservers


inventory dosyasındaki all ve ungrouped isimli iki group daima vardır.

all tüm hostları, ungrouped  her hangi bir grupta olmayan hostları içerir.


Ansible varsayılan ayar dosyasını değiştirmek;

ANSIBLE_CONFIG=/home/remzi/.my-ansible.cfg

**************.my-ansible.cfg******************

[defaults]

inventory = ./inventory

remote_user = someuser

ask_pass = false


[privilege_escalation]

become = true

become_method = sudo

become_user = root

become_ask_pass = false

**************.my-ansible.cfg******************


inventory dosyası ini veya yaml formantında olabilir. 

inventory dosyasına örnek:

1. ini static file

[websrv]

web1.local.lan

web2.local.lan

[dbsrv]

db1.local.lan

db2.local.lan

[lbsrv]

lb[1:2].local.lan


2. yaml  static inventory örnek:

lbsrv:

    hosts:

        lb1.local.lan

        lb2.local.lan

websrv:

    hosts:

        web[1:5].local.lan

            web1 den web5 kadar sunuculari kapsar

web:

    children:

        - lbsrv    

        - websrv


    

# ansible all -m ping

-------------------------------------------------------------------------------------------------------------------------------

$ sudo -l -U remzi

Matching Defaults entries for remzi on seyyah-usb:

    !visiblepw, always_set_home, match_group_by_gid, always_query_group_plugin, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS", env_keep+="MAIL QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE

    LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY",

    secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/var/lib/snapd/snap/bin


User remzi may run the following commands on seyyah-usb:

    (ALL) NOPASSWD: ALL

-------------------------------------------------------------------------------------------------------------------------------

ansible playbook çalıştırmadan yazım kontrolü,

ansible-playbook --syntax-check db12prepare.yml

Çalışma simülasyonu;

ansible-playbook -C db12prepare.yml



ansible'da değişkenler tanımlarken '.' (nokta), boşluk kullanılmamalı.

ansible değişkenlerine örnek;

hosts

hosts-center

host1

host-centor1

host1-center_2


Belli başlı ansible değişken tipleri;

1. Genel değişkenler

2. playbook içindeki değişkenler

3. host özelliklerinden gelen değişkenler


Gizlilik(kullanıcı parolası vs. gibi)  taşıyan bilgilerin ansible vault ile güvende tutulması;

ansible-vault create kullanici-bilgileri.yml (  yeni dosya olusturulur )

ansible-vault rekey kullanici-bilgileri.yml  ( dosyanin parolasini degistiri )

ansible-vault view kullanici-bilgileri.yml

ansible-vault decrypt kullanici-bilgileri.yml --output=kullanici-bilgileri.txt



ansible-vault ile birden fazla dosya üzerinde işlem yapılabiliyor.
Detaylı bilgi için her zaman olduğu gibi; # man ansible-vault 

Sorun oldugunda ansible yapilandirma ayarlarimizi kontrol etmek icin,
 
ansible-config dump komutundan faydalanabiliriz.
 
                        
 
ansible ile kullanıcı oluşturulması;

$> ansible all -m user -a "name='remzi' uid=32768 groups='wheel' password={{ 'degistirbeni' | password_hash('sha512','gizzzlitussszzzz') }} generate_ssh_key=yes" --user=root 

Tum sunucularimizda ayni kullanici id ile remzi kullanicisi olusur.
parola=degistirbeni
salt=gizzzlitussszzzz 
salt parola hash olusturulurken kullanilir. rastgele birseyde verebilirsiniz.



selinux aktif sunucumuzda web dizinin selinuz etiketinin duzenlenmesi:

ansible localhost -m file -a " path=/var/www recurse=true setype=httpd_sys_content_t" -b



ansible ile birden fazla rpm reposunun sisteme eklenmesi:





16 Ekim 2020 Cuma

Google Chrome browserda parola saklamayı önermeyi durdurmak

Google chrome da yeteri kadar uygulanabilir kurallar mevcut. Bunlardan bir taneside Paralo yöneticisinin devre dışı bırakılması.

Bu işlem için;

                     /etc/opt/chrome/policies/managed

dizini altında bir dosyas oluşturup içerisene 

{"PasswordManagerEnabled": false}

yazmanız yeterli.

root@d7567:/etc/opt/chrome/policies/managed# pwd
/etc/opt/chrome/policies/managed

root@d7567:/etc/opt/chrome/policies/managed# cat password.json 
{"PasswordManagerEnabled": false}
root@d7567:/etc/opt/chrome/policies/managed# 


Artık chrome size parola saklayayım mı diye sormayacak.

Chrome üzerinde uygulayabileceğiniz kuralları merak ederseniz, detayları;

https://www.chromium.org/administrators/linux-quick-start
https://www.chromium.org/administrators/policy-list-3

bağlantılarından erişebilirsiniz.

Google Chrome browserda parola saklamayı önermeyi durdurmak

Google chrome da yeteri kadar uygulanabilir kurallar mevcut. Bunlardan bir taneside Paralo yöneticisinin devre dışı bırakılması.

Bu işlem için;

                     /etc/opt/chrome/policies/managed

dizini altında bir dosyas oluşturup içerisene 

{"PasswordManagerEnabled": false}

yazmanız yeterli.

root@d7567:/etc/opt/chrome/policies/managed# pwd
/etc/opt/chrome/policies/managed

root@d7567:/etc/opt/chrome/policies/managed# cat password.json 
{"PasswordManagerEnabled": false}
root@d7567:/etc/opt/chrome/policies/managed# 


Artık chrome size parola saklayayım mı diye sormayacak.

Chrome üzerinde uygulayabileceğiniz kuralları merak ederseniz, detayları;

bağlantılarından erişebilirsiniz.
 
 

Google Chrome browserda parola saklamayı önermeyi durdurmak

Google chrome da yeteri kadar uygulanabilir kurallar mevcut. Bunlardan bir taneside Paralo yöneticisinin devre dışı bırakılması.

Bu işlem için;

                     /etc/opt/chrome/policies/managed

dizini altında bir dosyas oluşturup içerisene 

{"PasswordManagerEnabled": false}

yazmanız yeterli.

root@d7567:/etc/opt/chrome/policies/managed# pwd
/etc/opt/chrome/policies/managed

root@d7567:/etc/opt/chrome/policies/managed# cat password.json 
{"PasswordManagerEnabled": false}
root@d7567:/etc/opt/chrome/policies/managed# 


Artık chrome size parola saklayayım mı diye sormayacak.

Chrome üzerinde uygulayabileceğiniz kuralları merak ederseniz, detayları;

bağlantılarından erişebilirsiniz.
 
 

9 Ekim 2020 Cuma

Oracle ASM kullanılan sistemlerde diski bölümlemeden kullanırsak ne olur?

 

Aşağıdaki durum olur;







ve multipath yapılandırmanız ne kadar düzgün olursa olsun, oracle asm multipathi takmaz.

oracleasm ile multipath diskler kullanıyorsanız ve scanexclude çalışmasını istiyorsanız, lun'larınızı bölümleyerek kullanmak gerektiğini unutmayın.


Disk bölümlemeye üzerine lak lak yaparken biraz oracleasm diski oluşturalım;[root@oradb01 multipath]# for dsk in 1 2 3 4 5 6 7; do oracleasm createdisk datadisk0${dsk} /dev/mapper/datadisk0${dsk}p1; done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

[root@oradb01 multipath]# oracleasm listdisks

DATADISK01

DATADISK02

DATADISK03

DATADISK04

DATADISK05

DATADISK06

DATADISK07


[root@oradb01 ~]# for dsk in 1 2 3 4 5 6 7; do oracleasm querydisk -p  datadisk0${dsk} ; done

Disk "DATADISK01" is a valid ASM disk

/dev/mapper/datadisk01p1: LABEL="DATADISK01" TYPE="oracleasm" PARTLABEL="datadisk01" PARTUUID="9c7b1792-81df-43a4-badf-fb3a45c38c9a" 

Disk "DATADISK02" is a valid ASM disk

/dev/mapper/datadisk02p1: LABEL="DATADISK02" TYPE="oracleasm" PARTLABEL="datadisk02" PARTUUID="4dab5527-8a5b-436d-9f58-9b03995a12a8" 

Disk "DATADISK03" is a valid ASM disk

/dev/mapper/datadisk03p1: LABEL="DATADISK03" TYPE="oracleasm" PARTLABEL="datadisk03" PARTUUID="6f315a02-145b-4974-b795-88ec04cb7b01" 

Disk "DATADISK04" is a valid ASM disk

/dev/mapper/datadisk04p1: LABEL="DATADISK04" TYPE="oracleasm" PARTLABEL="datadisk04" PARTUUID="a02495e8-401d-4527-baa8-4b0e77a153f6" 

Disk "DATADISK05" is a valid ASM disk

/dev/mapper/datadisk05p1: LABEL="DATADISK05" TYPE="oracleasm" PARTLABEL="datadisk05" PARTUUID="3ca0712d-cf3b-46ac-a26b-c56197414b5b" 

Disk "DATADISK06" is a valid ASM disk

/dev/mapper/datadisk06p1: LABEL="DATADISK06" TYPE="oracleasm" PARTLABEL="datadisk06" PARTUUID="d01856bc-0ec6-45e4-87bb-ec649c18b476" 

Disk "DATADISK07" is a valid ASM disk

/dev/mapper/datadisk07p1: LABEL="DATADISK07" TYPE="oracleasm" PARTLABEL="datadisk07" PARTUUID="828b5331-3b7d-4b01-9417-cddb0cd0e65f" 

[root@oradb01 ~]# 


Birden fazla lun veya diskiniz var ve bölümleme yapmak için tek tek uğraşmak istemiyorsanız aşağıdaki  betiği kullanabilirsiniz.

Parted ile lun veya disk bölümlenmesi;

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#!/bin/sh

mpathname="datadisk0"

for dn in 1 2 3 4 5 6 7

do

   parted /dev/mapper/${mpathname}${dn} print

   parted /dev/mapper/${mpathname}${dn} mklabel gpt

   parted -a optimal /dev/mapper/${mpathname}${dn} mkpart ${mpathname}${dn} 0% 100%

   parted /dev/mapper/${mpathname}${dn} print

done


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



Oracle ASM kullanılan sistemlerde diski bölümlemeden kullanırsak ne olur?

 

Aşağıdaki durum olur;







ve multipath yapılandırmanız ne kadar düzgün olursa olsun, oracle asm multipathi takmaz.

oracleasm ile multipath diskler kullanıyorsanız ve scanexclude çalışmasını istiyorsanız, lun'larınızı bölümleyerek kullanmak gerektiğini unutmayın.


Disk bölümlemeye üzerine lak lak yaparken biraz oracleasm diski oluşturalım;[root@oradb01 multipath]# for dsk in 1 2 3 4 5 6 7; do oracleasm createdisk datadisk0${dsk} /dev/mapper/datadisk0${dsk}p1; done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

[root@oradb01 multipath]# oracleasm listdisks

DATADISK01

DATADISK02

DATADISK03

DATADISK04

DATADISK05

DATADISK06

DATADISK07


[root@oradb01 ~]# for dsk in 1 2 3 4 5 6 7; do oracleasm querydisk -p  datadisk0${dsk} ; done

Disk "DATADISK01" is a valid ASM disk

/dev/mapper/datadisk01p1: LABEL="DATADISK01" TYPE="oracleasm" PARTLABEL="datadisk01" PARTUUID="9c7b1792-81df-43a4-badf-fb3a45c38c9a" 

Disk "DATADISK02" is a valid ASM disk

/dev/mapper/datadisk02p1: LABEL="DATADISK02" TYPE="oracleasm" PARTLABEL="datadisk02" PARTUUID="4dab5527-8a5b-436d-9f58-9b03995a12a8" 

Disk "DATADISK03" is a valid ASM disk

/dev/mapper/datadisk03p1: LABEL="DATADISK03" TYPE="oracleasm" PARTLABEL="datadisk03" PARTUUID="6f315a02-145b-4974-b795-88ec04cb7b01" 

Disk "DATADISK04" is a valid ASM disk

/dev/mapper/datadisk04p1: LABEL="DATADISK04" TYPE="oracleasm" PARTLABEL="datadisk04" PARTUUID="a02495e8-401d-4527-baa8-4b0e77a153f6" 

Disk "DATADISK05" is a valid ASM disk

/dev/mapper/datadisk05p1: LABEL="DATADISK05" TYPE="oracleasm" PARTLABEL="datadisk05" PARTUUID="3ca0712d-cf3b-46ac-a26b-c56197414b5b" 

Disk "DATADISK06" is a valid ASM disk

/dev/mapper/datadisk06p1: LABEL="DATADISK06" TYPE="oracleasm" PARTLABEL="datadisk06" PARTUUID="d01856bc-0ec6-45e4-87bb-ec649c18b476" 

Disk "DATADISK07" is a valid ASM disk

/dev/mapper/datadisk07p1: LABEL="DATADISK07" TYPE="oracleasm" PARTLABEL="datadisk07" PARTUUID="828b5331-3b7d-4b01-9417-cddb0cd0e65f" 

[root@oradb01 ~]# 


Birden fazla lun veya diskiniz var ve bölümleme yapmak için tek tek uğraşmak istemiyorsanız aşağıdaki  betiği kullanabilirsiniz.

Parted ile lun veya disk bölümlenmesi;

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#!/bin/sh

mpathname="datadisk0"

for dn in 1 2 3 4 5 6 7

do

   parted /dev/mapper/${mpathname}${dn} print

   parted /dev/mapper/${mpathname}${dn} mklabel gpt

   parted -a optimal /dev/mapper/${mpathname}${dn} mkpart ${mpathname}${dn} 0% 100%

   parted /dev/mapper/${mpathname}${dn} print

done


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


Oracle DB sunucularında unutulmaması gereken thp ayarınıda hatırlatmak gerekiyor;

# grubby --grub2 --update-kernel=ALL --args="transparent_hugepage=never"




Oracle ASM kullanılan sistemlerde diski bölümlemeden kullanırsak ne olur?

 

Aşağıdaki durum olur;







ve multipath yapılandırmanız ne kadar düzgün olursa olsun, oracle asm multipathi takmaz.

oracleasm ile multipath diskler kullanıyorsanız ve scanexclude çalışmasını istiyorsanız, lun'larınızı bölümleyerek kullanmak gerektiğini unutmayın.


Disk bölümlemeye üzerine lak lak yaparken biraz oracleasm diski oluşturalım;[root@oradb01 multipath]# for dsk in 1 2 3 4 5 6 7; do oracleasm createdisk datadisk0${dsk} /dev/mapper/datadisk0${dsk}p1; done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

[root@oradb01 multipath]# oracleasm listdisks

DATADISK01

DATADISK02

DATADISK03

DATADISK04

DATADISK05

DATADISK06

DATADISK07


[root@oradb01 ~]# for dsk in 1 2 3 4 5 6 7; do oracleasm querydisk -p  datadisk0${dsk} ; done

Disk "DATADISK01" is a valid ASM disk

/dev/mapper/datadisk01p1: LABEL="DATADISK01" TYPE="oracleasm" PARTLABEL="datadisk01" PARTUUID="9c7b1792-81df-43a4-badf-fb3a45c38c9a" 

Disk "DATADISK02" is a valid ASM disk

/dev/mapper/datadisk02p1: LABEL="DATADISK02" TYPE="oracleasm" PARTLABEL="datadisk02" PARTUUID="4dab5527-8a5b-436d-9f58-9b03995a12a8" 

Disk "DATADISK03" is a valid ASM disk

/dev/mapper/datadisk03p1: LABEL="DATADISK03" TYPE="oracleasm" PARTLABEL="datadisk03" PARTUUID="6f315a02-145b-4974-b795-88ec04cb7b01" 

Disk "DATADISK04" is a valid ASM disk

/dev/mapper/datadisk04p1: LABEL="DATADISK04" TYPE="oracleasm" PARTLABEL="datadisk04" PARTUUID="a02495e8-401d-4527-baa8-4b0e77a153f6" 

Disk "DATADISK05" is a valid ASM disk

/dev/mapper/datadisk05p1: LABEL="DATADISK05" TYPE="oracleasm" PARTLABEL="datadisk05" PARTUUID="3ca0712d-cf3b-46ac-a26b-c56197414b5b" 

Disk "DATADISK06" is a valid ASM disk

/dev/mapper/datadisk06p1: LABEL="DATADISK06" TYPE="oracleasm" PARTLABEL="datadisk06" PARTUUID="d01856bc-0ec6-45e4-87bb-ec649c18b476" 

Disk "DATADISK07" is a valid ASM disk

/dev/mapper/datadisk07p1: LABEL="DATADISK07" TYPE="oracleasm" PARTLABEL="datadisk07" PARTUUID="828b5331-3b7d-4b01-9417-cddb0cd0e65f" 

[root@oradb01 ~]# 


Birden fazla lun veya diskiniz var ve bölümleme yapmak için tek tek uğraşmak istemiyorsanız aşağıdaki  betiği kullanabilirsiniz.

Parted ile lun veya disk bölümlenmesi;

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#!/bin/sh

mpathname="datadisk0"

for dn in 1 2 3 4 5 6 7

do

   parted /dev/mapper/${mpathname}${dn} print

   parted /dev/mapper/${mpathname}${dn} mklabel gpt

   parted -a optimal /dev/mapper/${mpathname}${dn} mkpart ${mpathname}${dn} 0% 100%

   parted /dev/mapper/${mpathname}${dn} print

done


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


asmdisklerinin doğru olup olmadığını aşağıdaki gibi kontrol edebiliriz.

[root@rac01 ~]# oracleasm listdisks  | xargs oracleasm querydisk -d
Disk "DATA01" is a valid ASM disk on device [252,11]
Disk "DATA02" is a valid ASM disk on device [252,10]
Disk "DATA03" is a valid ASM disk on device [252,9]
Disk "DATA04" is a valid ASM disk on device [252,12]


[root@rac01 ~]# dmsetup info data01p1
Name:              data01p1
State:             ACTIVE
Read Ahead:        8192
Tables present:    LIVE
Open count:        5
Event number:      0
Major, minor:      252, 11
Number of targets: 1
UUID: part1-mpath-3600507640082018548000000000000ec

Bu aygıtın bağlı olduğu aygıtlar;

# dmsetup ls --tree

...

data01p1 (252:11)
 └─data01 (252:7)
    ├─ (8:176)
    ├─ (66:112)
    ├─ (65:176)
    └─ (67:96)

...


[root@rac01 ~]# dmsetup info data02p1
Name:              data02p1
State:             ACTIVE
Read Ahead:        8192
Tables present:    LIVE
Open count:        2
Event number:      0
Major, minor:      252, 10
Number of targets: 1
UUID: part1-mpath-3600507640082018548000000000000ed

[root@rac01 ~]#

his





Oracle DB sunucularında unutulmaması gereken thp ayarınıda hatırlatmak gerekiyor;

# grubby --grub2 --update-kernel=ALL --args="transparent_hugepage=never"




Oracle ASM kullanılan sistemlerde diski bölümlemeden kullanırsak ne olur?

 

Aşağıdaki durum olur;







ve multipath yapılandırmanız ne kadar düzgün olursa olsun, oracle asm multipathi takmaz.

oracleasm ile multipath diskler kullanıyorsanız ve scanexclude çalışmasını istiyorsanız, lun'larınızı bölümleyerek kullanmak gerektiğini unutmayın.


Disk bölümlemeye üzerine lak lak yaparken biraz oracleasm diski oluşturalım;[root@oradb01 multipath]# for dsk in 1 2 3 4 5 6 7; do oracleasm createdisk datadisk0${dsk} /dev/mapper/datadisk0${dsk}p1; done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

Writing disk header: done

Instantiating disk: done

[root@oradb01 multipath]# oracleasm listdisks

DATADISK01

DATADISK02

DATADISK03

DATADISK04

DATADISK05

DATADISK06

DATADISK07


[root@oradb01 ~]# for dsk in 1 2 3 4 5 6 7; do oracleasm querydisk -p  datadisk0${dsk} ; done

Disk "DATADISK01" is a valid ASM disk

/dev/mapper/datadisk01p1: LABEL="DATADISK01" TYPE="oracleasm" PARTLABEL="datadisk01" PARTUUID="9c7b1792-81df-43a4-badf-fb3a45c38c9a" 

Disk "DATADISK02" is a valid ASM disk

/dev/mapper/datadisk02p1: LABEL="DATADISK02" TYPE="oracleasm" PARTLABEL="datadisk02" PARTUUID="4dab5527-8a5b-436d-9f58-9b03995a12a8" 

Disk "DATADISK03" is a valid ASM disk

/dev/mapper/datadisk03p1: LABEL="DATADISK03" TYPE="oracleasm" PARTLABEL="datadisk03" PARTUUID="6f315a02-145b-4974-b795-88ec04cb7b01" 

Disk "DATADISK04" is a valid ASM disk

/dev/mapper/datadisk04p1: LABEL="DATADISK04" TYPE="oracleasm" PARTLABEL="datadisk04" PARTUUID="a02495e8-401d-4527-baa8-4b0e77a153f6" 

Disk "DATADISK05" is a valid ASM disk

/dev/mapper/datadisk05p1: LABEL="DATADISK05" TYPE="oracleasm" PARTLABEL="datadisk05" PARTUUID="3ca0712d-cf3b-46ac-a26b-c56197414b5b" 

Disk "DATADISK06" is a valid ASM disk

/dev/mapper/datadisk06p1: LABEL="DATADISK06" TYPE="oracleasm" PARTLABEL="datadisk06" PARTUUID="d01856bc-0ec6-45e4-87bb-ec649c18b476" 

Disk "DATADISK07" is a valid ASM disk

/dev/mapper/datadisk07p1: LABEL="DATADISK07" TYPE="oracleasm" PARTLABEL="datadisk07" PARTUUID="828b5331-3b7d-4b01-9417-cddb0cd0e65f" 

[root@oradb01 ~]# 


Birden fazla lun veya diskiniz var ve bölümleme yapmak için tek tek uğraşmak istemiyorsanız aşağıdaki  betiği kullanabilirsiniz.

Parted ile lun veya disk bölümlenmesi;

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#!/bin/sh

mpathname="datadisk0"

for dn in 1 2 3 4 5 6 7

do

   parted /dev/mapper/${mpathname}${dn} print

   parted /dev/mapper/${mpathname}${dn} mklabel gpt

   parted -a optimal /dev/mapper/${mpathname}${dn} mkpart ${mpathname}${dn} 0% 100%

   parted /dev/mapper/${mpathname}${dn} print

done


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


asmdisklerinin doğru olup olmadığını aşağıdaki gibi kontrol edebiliriz.

[root@rac01 ~]# oracleasm listdisks  | xargs oracleasm querydisk -d
Disk "DATA01" is a valid ASM disk on device [252,11]
Disk "DATA02" is a valid ASM disk on device [252,10]
Disk "DATA03" is a valid ASM disk on device [252,9]
Disk "DATA04" is a valid ASM disk on device [252,12]


[root@rac01 ~]# dmsetup info data01p1
Name:              data01p1
State:             ACTIVE
Read Ahead:        8192
Tables present:    LIVE
Open count:        5
Event number:      0
Major, minor:      252, 11
Number of targets: 1
UUID: part1-mpath-3600507640082018548000000000000ec

Bu aygıtın bağlı olduğu aygıtlar;

# dmsetup ls --tree

...

data01p1 (252:11)
 └─data01 (252:7)
    ├─ (8:176)
    ├─ (66:112)
    ├─ (65:176)
    └─ (67:96)

...


[root@rac01 ~]# dmsetup info data02p1
Name:              data02p1
State:             ACTIVE
Read Ahead:        8192
Tables present:    LIVE
Open count:        2
Event number:      0
Major, minor:      252, 10
Number of targets: 1
UUID: part1-mpath-3600507640082018548000000000000ed

[root@rac01 ~]#

his





Oracle DB sunucularında unutulmaması gereken thp ayarınıda hatırlatmak gerekiyor;

# grubby --grub2 --update-kernel=ALL --args="transparent_hugepage=never"




Disk işlemleri - aynı anda yapılabilecek i/o limiti

 

Kullanılan kart, qlogic ise mevcut i/o limiti standart olarak 32 dir.

# cat /sys/module/qla2xxx/parameters/ql2xmaxqdepth

32

Bu limit normal şartlarda yeterli olmakla birlikte,  yoğun disk işlemleri olan ortamlarda ihtiyacı karşılamaz. Böyle durumlarda mevcut yapı (san switch, disk ünitesi) destekliyorsa, tavsiye edilen limitlere yükseltmek için(redhat / oel) ;

echo options qla2xxx ql2xmaxqdepth=256  >  /etc/modprobe.d/qlogic.conf

dracut -f

reboot


Sistemi yeniden başlatmadan ayarı değiştirmek isterseniz;

echo 256 > t /sys/module/qla2xxx/parameters/ql2xmaxqdepth







Disk işlemleri - aynı anda yapılabilecek i/o limiti

 

Kullanılan kart, qlogic ise mevcut i/o limiti standart olarak 32 dir.

# cat /sys/module/qla2xxx/parameters/ql2xmaxqdepth

32

Bu limit normal şartlarda yeterli olmakla birlikte,  yoğun disk işlemleri olan ortamlarda ihtiyacı karşılamaz. Böyle durumlarda mevcut yapı (san switch, disk ünitesi) destekliyorsa, tavsiye edilen limitlere yükseltmek için(redhat / oel) ;

echo options qla2xxx ql2xmaxqdepth=256  >  /etc/modprobe.d/qlogic.conf

dracut -f

reboot


Sistemi yeniden başlatmadan ayarı değiştirmek isterseniz;

echo 256 > t /sys/module/qla2xxx/parameters/ql2xmaxqdepth



qlogic modülü ile ilgili tüm parametleri öğrenmek isterseniz;


modinfo -q qla2xxx







Disk işlemleri - aynı anda yapılabilecek i/o limiti

 

Kullanılan kart, qlogic ise mevcut i/o limiti standart olarak 32 dir.

# cat /sys/module/qla2xxx/parameters/ql2xmaxqdepth

32

Bu limit normal şartlarda yeterli olmakla birlikte,  yoğun disk işlemleri olan ortamlarda ihtiyacı karşılamaz. Böyle durumlarda mevcut yapı (san switch, disk ünitesi) destekliyorsa, tavsiye edilen limitlere yükseltmek için(redhat / oel) ;

echo options qla2xxx ql2xmaxqdepth=256  >  /etc/modprobe.d/qlogic.conf

dracut -f

reboot


Sistemi yeniden başlatmadan ayarı değiştirmek isterseniz;

echo 256 > t /sys/module/qla2xxx/parameters/ql2xmaxqdepth



qlogic modülü ile ilgili tüm parametleri öğrenmek isterseniz;


modinfo -q qla2xxx







15 Eylül 2020 Salı

Red Hat 7 de transparent hugepages (THP) devre dışı bırakmak

Öncelikle

                 /etc/default/grub 

dosyasındaki "GRUB_CMDLINE_LINUX" satıra transparent_hugepage=never parametresini ekliyoruz.

Parametreyi ekledikten sonra grub ayar dosyası grub.cfg yi yeniden oluşturmamazı gerekiyor.

Sistem standart bios ile başlıyorsa;

# grub2-mkconfig -o /boot/grub2/grub.cfg


UEFI ile açılıyorsa;

# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg


komutları ile grub.cfg yeniden oluşturulur.

Bu işlemden sonra

                              systemctl reboot 

veya 

                              shutdown -r now

Komutuyla sistemimiz yeniden başlatırız.

 

Bu işlemi yapmamıza rağmen THP devredeyse, büyük ihtimal tuned  THP yi aktifleştiriyordur. Şayet böyle bir durum mevcut ise özel bir profil oluşturarak, THP nin aktifleşmesini önleriz.

Yapılacak işlemler;

mkdir /etc/tuned/nothp


# cat /etc/tuned/nothp/tuned.conf
[main]
include= throughput-performance

[vm]
transparent_hugepages=never


# chmod +x /etc/tuned/nothp/tuned.conf


# tuned-adm profile myprofile-nothp
 

Kontrol için;

# cat /sys/kernel/mm/transparent_hugepage/enabled


Red Hat 7 de transparent hugepages (THP) devre dışı bırakmak

Öncelikle

                 /etc/default/grub 

dosyasındaki "GRUB_CMDLINE_LINUX" satıra transparent_hugepage=never parametresini ekliyoruz.

Parametreyi ekledikten sonra grub ayar dosyası grub.cfg yi yeniden oluşturmamazı gerekiyor.

Sistem standart bios ile başlıyorsa;

# grub2-mkconfig -o /boot/grub2/grub.cfg


UEFI ile açılıyorsa;

# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg


komutları ile grub.cfg yeniden oluşturulur.

Bu işlemden sonra

                              systemctl reboot 

veya 

                              shutdown -r now

Komutuyla sistemimiz yeniden başlatırız.

 

Bu işlemi yapmamıza rağmen THP devredeyse, büyük ihtimal tuned  THP yi aktifleştiriyordur. Şayet böyle bir durum mevcut ise özel bir profil oluşturarak, THP nin aktifleşmesini önleriz.

Yapılacak işlemler;

mkdir /etc/tuned/nothp


# cat /etc/tuned/nothp/tuned.conf
[main]
include= throughput-performance

[vm]
transparent_hugepages=never


# chmod +x /etc/tuned/nothp/tuned.conf


# tuned-adm profile myprofile-nothp
 

Kontrol için;

# cat /sys/kernel/mm/transparent_hugepage/enabled


RHEL 8 de Transparent hugepages(THP) devre dışı bırakmak için;

# grubby --grub2 --update-kernel=ALL --args="transparent_hugepage=never"
yeniden başlatmanız veya yeniden başlatana kadar, gecici olarak aşağıdaki gibi
# echo never > /sys/kernel/mm/transparent_hugepage/enabled
devre dışı bırakabilirsiniz.

Red Hat 7 de transparent hugepages (THP) devre dışı bırakmak

Öncelikle

                 /etc/default/grub 

dosyasındaki "GRUB_CMDLINE_LINUX" satıra transparent_hugepage=never parametresini ekliyoruz.

Parametreyi ekledikten sonra grub ayar dosyası grub.cfg yi yeniden oluşturmamazı gerekiyor.

Sistem standart bios ile başlıyorsa;

# grub2-mkconfig -o /boot/grub2/grub.cfg


UEFI ile açılıyorsa;

# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg


komutları ile grub.cfg yeniden oluşturulur.

Bu işlemden sonra

                              systemctl reboot 

veya 

                              shutdown -r now

Komutuyla sistemimiz yeniden başlatırız.

 

Bu işlemi yapmamıza rağmen THP devredeyse, büyük ihtimal tuned  THP yi aktifleştiriyordur. Şayet böyle bir durum mevcut ise özel bir profil oluşturarak, THP nin aktifleşmesini önleriz.

Yapılacak işlemler;

mkdir /etc/tuned/nothp


# cat /etc/tuned/nothp/tuned.conf
[main]
include= throughput-performance

[vm]
transparent_hugepages=never


# chmod +x /etc/tuned/nothp/tuned.conf


# tuned-adm profile myprofile-nothp
 

Veya yukarıdaki işlemler yerine aktif kullanılan tuned profili içerisinde vm bölümüne transparent_hugepage=never ekleyerek, tuned yeniden başlatabiliriz.

Kontrol için;

# cat /sys/kernel/mm/transparent_hugepage/enabled


RHEL 8 de Transparent hugepages(THP) devre dışı bırakmak için;

# grubby --grub2 --update-kernel=ALL --args="transparent_hugepage=never"
yeniden başlatmanız veya yeniden başlatana kadar, gecici olarak aşağıdaki gibi
# echo never > /sys/kernel/mm/transparent_hugepage/enabled
devre dışı bırakabilirsiniz.


Red Hat 7 de transparent hugepages (THP) devre dışı bırakmak

Öncelikle

                 /etc/default/grub 

dosyasındaki "GRUB_CMDLINE_LINUX" satıra transparent_hugepage=never parametresini ekliyoruz.

Parametreyi ekledikten sonra grub ayar dosyası grub.cfg yi yeniden oluşturmamazı gerekiyor.

Sistem standart bios ile başlıyorsa;

# grub2-mkconfig -o /boot/grub2/grub.cfg


UEFI ile açılıyorsa;

# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg


komutları ile grub.cfg yeniden oluşturulur.

Bu işlemden sonra

                              systemctl reboot 

veya 

                              shutdown -r now

Komutuyla sistemimiz yeniden başlatırız.

 

Bu işlemi yapmamıza rağmen THP devredeyse, büyük ihtimal tuned  THP yi aktifleştiriyordur. Şayet böyle bir durum mevcut ise özel bir profil oluşturarak, THP nin aktifleşmesini önleriz.

Yapılacak işlemler;

mkdir /etc/tuned/nothp


# cat /etc/tuned/nothp/tuned.conf
[main]
include= throughput-performance

[vm]
transparent_hugepages=never


# chmod +x /etc/tuned/nothp/tuned.conf


# tuned-adm profile myprofile-nothp
 

Veya yukarıdaki işlemler yerine aktif kullanılan tuned profili içerisinde vm bölümüne transparent_hugepage=never ekleyerek, tuned yeniden başlatabiliriz.

Kontrol için;

# cat /sys/kernel/mm/transparent_hugepage/enabled


RHEL 8 de Transparent hugepages(THP) devre dışı bırakmak için;

# grubby --grub2 --update-kernel=ALL --args="transparent_hugepage=never"
yeniden başlatmanız veya yeniden başlatana kadar, gecici olarak aşağıdaki gibi
# echo never > /sys/kernel/mm/transparent_hugepage/enabled
devre dışı bırakabilirsiniz.

6 Ağustos 2020 Perşembe

vmware esx üzerinde çalışan bir linux sisteminde disk genişletmek esnasında, linux sisteminin diskin büyüdüğünü algılayamaması

esx üzerinde linux çalışırken, mevcut sanal diskin boyutunu vmware esx ten artırdığımızda, linux diskin boyutunun değiştiğini algılayamıyor. Elle diskleri tekrar taratmak gerekiyor.

Aşağıdaki satırlar ile vmwardeki tüm sanal disklerin boyutlarının tekrar algılanmasını sağlayabiliriz.

#!/bin/bash
for dskpath in `ls /sys/class/scsi_disk`
do 
echo       "/sys/class/scsi_disk/${dskpath}/device/rescan"
echo 1 >   "/sys/class/scsi_disk/${dskpath}/device/rescan"
done
lsblk

vmware esx üzerinde çalışan bir linux sisteminde disk genişletmek esnasında, linux sisteminin diskin büyüdüğünü algılayamaması

esx üzerinde linux çalışırken, mevcut sanal diskin boyutunu vmware esx ten artırdığımızda, linux diskin boyutunun değiştiğini algılayamıyor. Elle diskleri tekrar taratmak gerekiyor.

Aşağıdaki satırlar ile vmwardeki tüm sanal disklerin boyutlarının tekrar algılanmasını sağlayabiliriz.

#!/bin/bash
for dskpath in `ls /sys/class/scsi_disk`
do 
echo       "/sys/class/scsi_disk/${dskpath}/device/rescan"
echo 1 >   "/sys/class/scsi_disk/${dskpath}/device/rescan"
done
lsblk

28 Haziran 2020 Pazar

yorumsuz - işlemci-hafıza arasındaki hızları

Değişik işlemcilerin en basit şekilde hafızadan okuma hızlarını göstermek istedim.
Yorum sizlere aittir;

remzi@dell-7557:~$ dd if=/dev/zero of=/dev/null bs=1M count=1000000 status=progress
1042116771840 bytes (1.0 TB, 971 GiB) copied, 48 s, 21.7 GB/s   
1000000+0 records in
1000000+0 records out
1048576000000 bytes (1.0 TB, 977 GiB) copied, 48.2988 s, 21.7 GB/s
remzi@dell-7557:~$ lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                8
On-line CPU(s) list:   0-7
Thread(s) per core:    2
Core(s) per socket:    4
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 158
Model name:            Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
Stepping:              9
CPU MHz:               800.111
CPU max MHz:           3800.0000
CPU min MHz:           800.0000
BogoMIPS:              5616.00
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              6144K
NUMA node0 CPU(s):     0-7
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp flush_l1d
remzi@dell-7557:~$

root@Z170-HD3P:~# dd if=/dev/zero of=/dev/null bs=1M count=1000000 status=progress
1047730847744 bytes (1,0 TB, 976 GiB) copied, 48 s, 21,8 GB/s   
1000000+0 records in
1000000+0 records out
1048576000000 bytes (1,0 TB, 977 GiB) copied, 48,0387 s, 21,8 GB/s
root@Z170-HD3P:~# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                4
On-line CPU(s) list:   0-3
Thread(s) per core:    2
Core(s) per socket:    2
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 94
Model name:            Intel(R) Core(TM) i3-6100 CPU @ 3.70GHz
Stepping:              3
CPU MHz:               800.185
CPU max MHz:           3700,0000
CPU min MHz:           800,0000
BogoMIPS:              7392.00
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              3072K
NUMA node0 CPU(s):     0-3
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm arat pln pts hwp hwp_notify hwp_act_window hwp_epp flush_l1d
root@Z170-HD3P:~#



remzi@dell-7557:~$ ssh node13
Last login: Wed Jan  9 20:38:20 2019 from 176.43.21.110
root@node13 ~ # dd if=/dev/zero of=/dev/null bs=1M count=1000000 status=progress1030936854528 bytes (1.0 TB, 960 GiB) copied, 46 s, 22.4 GB/s   
1000000+0 records in
1000000+0 records out
1048576000000 bytes (1.0 TB, 977 GiB) copied, 46.7969 s, 22.4 GB/s
root@node13 ~ # lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                8
On-line CPU(s) list:   0-7
Thread(s) per core:    2
Core(s) per socket:    4
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 58
Model name:            Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz
Stepping:              9
CPU MHz:               2189.533
CPU max MHz:           3900.0000
CPU min MHz:           1600.0000
BogoMIPS:              7004.06
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              8192K
NUMA node0 CPU(s):     0-7
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm cpuid_fault epb pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms xsaveopt dtherm ida arat pln pts flush_l1d
root@node13 ~ #



p8-800002-22c:~ #  dd if=/dev/zero of=/dev/null bs=1M count=1000000 status=progress
985714917376 bytes (986 GB, 918 GiB) copied, 12 s, 82.1 GB/s
1000000+0 records in
1000000+0 records out
1048576000000 bytes (1.0 TB, 977 GiB) copied, 12.7649 s, 82.1 GB/s
p8-800002-22c:~ # lscpu
Architecture:         ppc64le
Byte Order:           Little Endian
CPU(s):               160
On-line CPU(s) list:  0,8,16,24,32,40,48,56,64,72,80,88,96,104,112,120,128,136,144,152
Off-line CPU(s) list: 1-7,9-15,17-23,25-31,33-39,41-47,49-55,57-63,65-71,73-79,81-87,89-95,97-103,105-111,113-119,121-127,129-135,137-143,145-151,153-159
Thread(s) per core:   1
Core(s) per socket:   10
Socket(s):            2
NUMA node(s):         2
Model:                2.0 (pvr 004d 0200)
Model name:           POWER8 (raw), altivec supported
CPU max MHz:          3491.0000
CPU min MHz:          2061.0000
L1d cache:            64K
L1i cache:            32K
L2 cache:             512K
L3 cache:             8192K
NUMA node0 CPU(s):    0,8,16,24,32,40,48,56,64,72
NUMA node8 CPU(s):    80,88,96,104,112,120,128,136,144,152
p8-800002-22c:~ #  dd if=/dev/zero of=/dev/null bs=1M count=1000000 status=progress
985749520384 bytes (986 GB, 918 GiB) copied, 12 s, 82.1 GB/s
1000000+0 records in
1000000+0 records out
1048576000000 bytes (1.0 TB, 977 GiB) copied, 12.7648 s, 82.1 GB/s
p8-800002-22c:~ #


processor       : 152
cpu             : POWER8 (raw), altivec supported
clock           : 3491.000000MHz
revision        : 2.0 (pvr 004d 0200)

timebase        : 512000000
platform        : PowerNV
model           : 8001-22C
machine         : PowerNV 8001-22C
firmware        : OPAL
MMU             : Hash
p8-800002-22c:~ #


[root@cnode002 ~ ]# dd if=/dev/zero of=/dev/null bs=1M count=1000000 status=progress
1037066829824 bytes (1.0 TB) copied, 56.001647 s, 18.5 GB/s
1000000+0 records in
1000000+0 records out
1048576000000 bytes (1.0 TB) copied, 56.6216 s, 18.5 GB/s
[root@cnode002 ~ ]# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                28
On-line CPU(s) list:   0-27
Thread(s) per core:    1
Core(s) per socket:    14
Socket(s):             2
NUMA node(s):          2
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 79
Model name:            Intel(R) Xeon(R) CPU E5-2680 v4 @ 2.40GHz
Stepping:              1
CPU MHz:               2400.000
CPU max MHz:           2400.0000
CPU min MHz:           1200.0000
BogoMIPS:              4788.87
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              35840K
NUMA node0 CPU(s):     0-6,14-20
NUMA node1 CPU(s):     7-13,21-27
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch epb cat_l3 cdp_l3 intel_ppin intel_pt ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm rdt_a rdseed adx smap xsaveopt cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts spec_ctrl intel_stibp
[root@cnode002 ~ ]#


[root@headnode ~ ]# dd if=/dev/zero of=/dev/null bs=1M count=1000000 status=progress
1041830510592 bytes (1.0 TB) copied, 75.002684 s, 13.9 GB/s
1000000+0 records in
1000000+0 records out
1048576000000 bytes (1.0 TB) copied, 75.4883 s, 13.9 GB/s
[root@headnode ~ ]# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                40
On-line CPU(s) list:   0-39
Thread(s) per core:    2
Core(s) per socket:    10
Socket(s):             2
NUMA node(s):          2
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 79
Model name:            Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz
Stepping:              1
CPU MHz:               2200.000
CPU max MHz:           2200.0000
CPU min MHz:           1200.0000
BogoMIPS:              4395.00
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              25600K
NUMA node0 CPU(s):     0-9,20-29
NUMA node1 CPU(s):     10-19,30-39
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch epb cat_l3 cdp_l3 invpcid_single intel_pt tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm rdt_a rdseed adx smap xsaveopt cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts
[root@headnode ~ ]#



root@node2:~# dd if=/dev/zero of=/dev/null bs=1M count=1000000 status=progress
1033986113536 bytes (1.0 TB, 963 GiB) copied, 58.0001 s, 17.8 GB/s
1000000+0 records in
1000000+0 records out
1048576000000 bytes (1.0 TB, 977 GiB) copied, 58.818 s, 17.8 GB/s
root@node2:~# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                24
On-line CPU(s) list:   0-23
Thread(s) per core:    1
Core(s) per socket:    12
Socket(s):             2
NUMA node(s):          2
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 63
Model name:            Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz
Stepping:              2
CPU MHz:               1200.485
CPU max MHz:           3300.0000
CPU min MHz:           1200.0000
BogoMIPS:              5000.75
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              30720K
NUMA node0 CPU(s):     0,2,4,6,8,10,12,14,16,18,20,22
NUMA node1 CPU(s):     1,3,5,7,9,11,13,15,17,19,21,23
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm cpuid_fault epb invpcid_single pti tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm xsaveopt cqm_llc cqm_occup_llc ibpb ibrs stibp dtherm ida arat pln pts
root@node2:~#


node1 deki dd status parametresini desteklemediğinden kullanamadım.

root@node1:~# time  dd if=/dev/zero of=/dev/null bs=1M count=1000000
1000000+0 records in
1000000+0 records out
1048576000000 bytes (1.0 TB) copied, 49.8366 s, 21.0 GB/s

real    0m49.838s
user    0m0.216s
sys     0m49.566s
root@node1:~# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                20
On-line CPU(s) list:   0-19
Thread(s) per core:    1
Core(s) per socket:    10
Socket(s):             2
NUMA node(s):          2
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 62
Stepping:              4
CPU MHz:               3000.023
BogoMIPS:              6001.40
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              25600K
NUMA node0 CPU(s):     0,2,4,6,8,10,12,14,16,18
NUMA node1 CPU(s):     1,3,5,7,9,11,13,15,17,19
root@node1:~#

processor       : 19
vendor_id       : GenuineIntel
cpu family      : 6
model           : 62
model name      : Intel(R) Xeon(R) CPU E5-2690 v2 @ 3.00GHz
stepping        : 4
microcode       : 0x42d
cpu MHz         : 3000.023
cache size      : 25600 KB
physical id     : 1
siblings        : 10
core id         : 12
cpu cores       : 10
apicid          : 56
initial apicid  : 56
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm ida arat xsaveopt pln pts dtherm rsb_ctxsw ssbd retpoline tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms flush_l1d
bogomips        : 6001.40
clflush size    : 64
cache_alignment : 64
address sizes   : 46 bits physical, 48 bits virtual




ansible ile yerel quay sunucusu üzerinden execution environment kullanımı

 Yerel quay veya registry sunucularımızdaki ee leri ansible ile kullanabiliyoruz. Bunun için kendi yaptığımız ee leri veya hazır ee leri yük...