26 Aralık 2015 Cumartesi

Günün komutu - Linux sistemlerinde {2015.12.26} - memhog - basitce hafıza testi


Bu yılda bitmek üzere. Bu yıl biterken faydalı bir komutla yeni yıllar dilemek istiyorum.

Bu günkü komutumuz memhog. memhog'u kullanmak için numactl paketinin yüklü olması, yüklü değilse kurmak gerekiyor,

oracle linux(rhel tabanlı sistemlerde);

yum install numactl

Kullanımıda oldukça basit:


# memhog
memhog [-rNUM] size[kmg] [policy [nodeset]]
-rNUM repeat memset NUM times
-H disable transparent hugepages
Policies: interleave membind preferred default



 # memhog 17G
numactl: mmap: Cannot allocate memory
# memhog 512M
....................................................
#


Bu faydalı komutu kullanmadan önce swap devre dışı bırakmanız iyi olur.















24 Aralık 2015 Perşembe

linux de işlemci, hafiza, io gibi kısıtlamalar nasıl yapılır?


Biz linux kullanıcılar, linux çekirdeğinin kabiliyetlerinin %95 kullanmayız.

işlemci, hafıza, io gibi kısıtlamaları yapan cgroup
(Control Groups, to manage the resource utilization of sets of processes.)
özelliğide kullanmadığımız özelliklerdendir.

Başlangıç için aşağıdaki linkli paylaşıyorum.

https://docs.oracle.com/cd/E37670_01/E37355/html/ol_subsystems_cgroups.html

cgroup kullanmaya oracle dökümanlarını okuyarak başlamıştım.



Belki sizlerede yardımcısı olur.

cgroup ile kullanılan başlıca datasetler;

mount {
    cpuset = /sys/fs/cgroup/cpuset;
    cpu = /sys/fs/cgroup/cpu,cpuacct;
    cpuacct = /sys/fs/cgroup/cpu,cpuacct;
    memory = /sys/fs/cgroup/memory;
    devices = /sys/fs/cgroup/devices;
    freezer = /sys/fs/cgroup/freezer;
    net_cls = /sys/fs/cgroup/net_cls;
    blkio = /sys/fs/cgroup/blkio;
    perf_event = /sys/fs/cgroup/perf_event;
    hugetlb = /sys/fs/cgroup/hugetlb;
}


Ayarlayabileceğiniz değişkenlere örnek;


memory.limit_in_bytes, memory.max_usage_in_bytes,

blkio.weight, blkio.weight_device, blkio.throttle.write_iops_device,
blkio.throttle.read_iops_device, blkio.throttle.write_bps_device, blkio.throttle.read_bps_device

cpu.shares


ve son link;

https://blogs.oracle.com/wim/entry/oracle_linux_containers_continued

Bundan sonrası sizlere kalmış. :-)


23 Aralık 2015 Çarşamba

Dizin içindeki her hangi bir dosya veya dosyaların içerisindeki bir değer nasıl değiştirilir?



"Dizin içindeki her hangi bir dosya veya dosyaların içerisindeki bir değer nasıl değiştirilir?" sorusuna cevap bulalım dedim.

Linux kullanan arkadaşlarımızın böyle bir şeye ihtiyacı olursa, çözüm için kafalarında bir fikir oluşmasına yardımcı olabilir.

Linux dünyasındaysanız, bu soruya  birden çok çözüm bulabilirsiniz, benim aklıma gelen çözüm;

sunucu ismimizi değiştireceğiz.

Mevcut ismimiz e8470p olsun, yeni ismimizde zurbahan olacak.


Öncelikle etc altındaki dosyaları find komutuyla tespit ettiririz.
Burada önemli nokta find ile arama yaparken -type f ile sadece dosyaları tespit ettirmemiz. Özellikle dosyaları  aratmazsanız, sed komutuna dizin ve başka tip dosyalarda parametre olarak gider.  Gerisi hikaye. :)

Sonrasında sed arkadaşa diyoruz ki, bu dosyanın içeriğine bak, içinde e8470p görürsen zurbahan olarak değiştir.

Komutumuz;

find /etc/ -type f -exec sed -i 's/e8470p/zurbahan/g' {} \;


Alternatif olarak aşağıdaki gibide değiştirebiliriz. Fakat yukarıdaki çözüm tercih ettiğim bir çözüm. :)

find etc/ -type f | xargs -n 1 sed -i 's/e8470p/zurbahan/g'


Sizinde aklınızda alternatif çözüm varsa yoruma yazabilirsiniz.

22 Aralık 2015 Salı

"Enterprise Grade" dedikleri nedir?




Bir disk ünitesinin enterprise seviyede olması için sahip olması gereken özellikler  nasıl?

Yukarıdakilerini sağlayan kaç ürün vardır?

13 Aralık 2015 Pazar

Oracle Enterprise Linux kernel sürümündeki numaraların anlamı (alıntı)

Oracle enterprise linux kernel sürümündeki numaraların anlamını merak edenler için;
uname -r
3.  8. 13-118.2.2.el7uek.x86_64
^  ^    ^    ^    ^
|    |    |     |     |   
|    |    |     |     Security Errata
|    |    |     |
|    |    |     Errata Kernel version
|    |    |    
|    |   The third number is the patch level version.
|    |
|    The second number is the minor revision number.
|
The first number is the major version number.


Umarım meraklılar için faydalı olur. :)

12 Aralık 2015 Cumartesi

virtualbox kernel modülü derlenme sorunu RHEL/OEL/Centos 7

RHEL 7 tabanlı(oracle, centos vs.)  linux sistemi kullanıyorsanız,
kernel güncellemesinden  sonra virtualbox çalışmadığını
/sbin/vboxconfig komutunu çalıştırmanızı söyleyecektir.
Bu komut çalıştırdığınız halde virtualbox modülleri oluşmadıysa vboxdrv.sh setup kullanarak sorunu giderebilirisiniz

[root@zurbahan ~]# /usr/lib/virtualbox/vboxdrv.sh
Usage: /usr/lib/virtualbox/vboxdrv.sh {start|stop|stop_vms|restart|force-reload|status|setup}
[root@zurbahan ~]# /usr/lib/virtualbox/vboxdrv.sh setup
Stopping VirtualBox kernel modules                         [  TAMAM  ]
Recompiling VirtualBox kernel modules                      [  TAMAM  ]
Starting VirtualBox kernel modules                         [  TAMAM  ]
[root@zurbahan ~]#

10 Aralık 2015 Perşembe

Bir paketin sistemde yüklü olup, olmadığını öğrenmek

ihtiyacımız olan bir paketin sistemde(redhat tabanlı) öğrenmek için yum info komutundan faydalanırız.


[root@zurbahan ~]# yum info mc
Yüklü eklentiler: langpacks, ulninfo
Kurulan Paketler
Ad        : mc
Mimari        : x86_64
Epoch       : 1
Sürüm     : 4.8.7
Dağıtım     : 8.el7
Boyut        : 5.6 M
Depo        : installed
Depodan   : ol7_latest
Özet     : User-friendly text console file manager and visual shell
URL         : http://www.midnight-commander.org/
Lisans     : GPLv3+
Açıklama : Midnight Commander is a visual shell much like a file manager, only
         : with many more features. It is a text mode application, but it also
         : includes mouse support. Midnight Commander's best features are its
         : ability to FTP, view tar and zip files, and to poke into RPMs for
         : specific files.

Mevcut sistemde kullandığımız bir programın bağımlı olduğu paketleri listelemek

Zaman zaman kullanıdığımız programın ihtiyaç duyduğu yüzlerce dosya olabilir.
Bu yüzlerce dosyanın hangi paket içerisinde olduğunu listelememiz gerektiği zamanda yardımımıza bash scripti yetişir.


Hazırladığım basit scripte aşağıdaki linkten erişebilirsiniz.

http://s3.dosya.tc/server6/y2ov4l/gerekli-paketler.sh.rar.html


Dosyayı açtıktan sonra, çalıştırabilmeniz için "chmod +x  gerekli-paketler.sh"
unutmayalım. :)


Linkteki dosyanın içeriği;




#!/bin/bash
# Remzi AKYUZ
# linuxliste@gmail.com
# 2015.12.10
# Sistemde mevcut olan hangi bir programin  ihtiyac duydugu kutuphaneleri listeler
# Sistem redhat tabanli sistemlerde calisir.


tmpfile="/tmp/tmpfile-"`date +%Y%m%W%N`
if test $# -gt 0

then

printf '\n\n<%s> programinin ihtiyac duydugu paketler \n\n' "$@"

ldd `which $1` |cut -d\> -f 2 |cut -d\( -f1 > $tmpfile

for i in `cat $tmpfile`

do

rpm -qf $i >> $tmpfile.2

done
sort $tmpfile.2|uniq
rm -f $tmpfile $tmpfile.2

exit 0
fi

printf '\n\n\nLutfen  ornekteki gibi kullanininiz :  %s ls \n\nTesekkurler\n\n\n'  "$0"



# script sonu


8 Aralık 2015 Salı

Oracle VM - OVA dan template oluşturarak kullanma - Reklam :)

Oracle vm her hangi bir fiziksel sunucuyu,  vmware veya başka bir

sanallaştırma  ortamından aldığınız ova formatını rahatlıkla kullanabilirsiniz.

Nasıl mı?

Çok basit ; ova dosyasını ovm'e import et, import ettiğin ova dosyasından

template  oluştur ve kullan!

Gördüğünüz gibi oracle vm de sadece oracle vm için hazırlanmış templateleri

değil, ova  formatındaki her hangi bir template(örneğin vmwarden ova 

formatında alacağınız bir export dosyasını) kullanabilirisiniz!


Sanallaştırma ile ilgilenenler için aşağıdaki dökümanı incelemelerini tavsiye ediyorum.

İnceleyince ne mi göreceksiniz?  Bu da size kalmış :)





Oracle VM Template for Oracle Solaris 11.3 Readme
===============================================================


This document is applicable to Oracle VM templates for Solaris 11 on x86/x64
platforms.

File Template Version
-------------------- ----------------
sol-11_3-ovm-x86.ova 1.0

This document contains:

1. Introduction
2. Prerequisites
3. Importing an Oracle VM Template into Oracle VM Manager 3.2
3.1 Importing from an Oracle VM Server
3.2 Importing the Template
4. Virtual Machine Configuration
5. Additional Software

1. Introduction
======================

The template is a large server installation of the Solaris 11.3 OS on
x86 (64-bit) platforms.

Notes for Oracle VM Template for Oracle Solaris 11.3
------------------------------------------------------------------
1) The Solaris 11.3 template supports x86_64 architecture.

To check if Solaris is running in 64 bit from command line run
the following:

#/usr/bin/isainfo -kv

On a 64-bit Solaris system, you'll see:
64-bit amd64 kernel modules

2) Solaris 11.3 OS runs as a hardware virtual machine (HVM) which requires HVM
support (Intel VT or AMD-V) on the underlying hardware platform, but Solaris
11.3 OS has the paravirtualized (PV) drivers as part of the OS installed by
default.

2. Prerequisites
================
2.1 Hardware prerequisites
1) 140GB free space on Oracle VM Server storage pool.
2) 2048MB free memory size on Oracle VM Server.
3) The server has HVM support. To check if the server is HVM capable, you
can run xm info command from the dom0 of the Oracle VM server to verify if
hvm is listed as the attribute of virt_caps.

# xm info

virt_caps : hvm


2.2 Software prerequisites
Oracle VM 3.2 or above

3. Importing an Oracle VM Template into Oracle VM Manager 3.2 and Above
=======================================================================

Links in this section refer to Oracle VM Manager 3.2 documentation.
Documentation for Oracle VM Manager 3.3 can be found at:

http://docs.oracle.com/cd/E50245_01/index.html

1) Copy the downloaded .ova file to a location accessible to the Oracle VM
Manager via http, https, or ftp.

2) Follow Oracle VM 3.2 Getting Started Guide to import an assembly:
http://docs.oracle.com/cd/E35328_01/E35331/html/vmgsg-resources-assembly.html

3) Create a VM template by importing from the assembly, see Oracle VM 3.2
Getting Started Guide
http://docs.oracle.com/cd/E35328_01/E35331/html/vmgsg-vms-create-assembly.html

4) Create a VM from the imported template, see Oracle VM 3.2 Getting Started
Guide
http://docs.oracle.com/cd/E35328_01/E35331/html/vmgsg-vms-create-template.html


4. Virtual Machine Configuration
================================
When you connect to the virtual machine console, you will see the virtual
machine boots up. Proceed through configuration screens that prompt for
hostname, timezone, default user and passwd, and root passwd.

Log in as the default user configured in the previous step.

Network Information
-------------------
By default the VM is not configured for networking. For information on setting
up a network in a Solaris 11.3 environment see "Configuring and Administering
IP Interfaces and Addresses" section in "Configuring and Administering Network
Components in Oracle Solaris 11.3":

http://docs.oracle.com/cd/E53394_01/html/E54745/ipconfig-123.html#scrolltoc

5. Additional Software
======================

Additional software may be downloaded from the configured repository. For
example, the GNOME desktop environment can be installed with the command:

# pkg install solaris-desktop

See the following for detailed instructions:

http://docs.oracle.com/cd/E53394_01/html/E54739/index.html

Additional Resources:
---------------------

* Oracle Solaris 11 Product Documentation
www.oracle.com/technetwork/server-storage/solaris11/documentation/

* Oracle Premier Support for Operating Systems
www.oracle.com/us/support/systems/operating-systems/index.html

* Oracle Solaris Premier Subscription for non-Oracle Hardware
www.oracle.com/us/products/servers-storage/solaris/non-sun-x86-081976.html

* Link to Solaris 11 Third-Party License information:
http://www.oracle.com/pls/topic/lookup?ctx=solaris11&id=OSPLG

Sanallaştırma!

Merhaba,

Bu günlerde insanların kullanmayacakları özelliklere tonlarca $$$$ vermesini

üzüldüğümü belirterek başlıyorum.

Oracle VM, xen, oVirt, kvm, qemu, proxmox, vs. vs. genel ihtiyaçlarını

karşılayacak  açık kaynak kodlu, çoğu ücretsiz (

 Yalnış anlamayın, güncelleme ve destek ücrete tabi!!! Böylede olmalı, sonuçta

ürün geliştirmeye devam etmek, maddi güç ister!!!) çözümler varken neden

gider $$$$  lisans parası vererek ücretli ürünleri alırlar anlamıyorum!

Yalnış anlaşılmasın o çözümlere gerçekten ihtiyaç varsa ve özellikleri

kullanılacaksa alınmasına bir şey demiyorum.

Sadece  temel özellikleri(snapshot, live migration, clone, template import gibi)

kullanılacaksa neden gidip $$$$ lisans vererek çözüm alıyorlar?

Düşündüm düşündüm ve aklıma gelen cevaplar;

1. Ön yargı + bilgisizlik +öğrenmekten kaçınma + sorun olduğunda sorunu

kendisine değilde ürüne mal etmek.

2. Alternatif çözümleri öğrenme kabiliyetine sahip olmamak!

3. Çalıştığı firma/kurum/kuruluşu kendi firması olarak görmemek!!!
   
Sizlerinde aklınızdaki cevapları benimle paylaşırsanız sevinirim.


Bu kadar konuşmuşken ben çözüm olarak ne mi kullanıyorum?

Bir kaç çözümü birlikte kullanıyorum, fakat başlıca kullandığım çözümler;

Oracle VM, Proxmox, KVM + QEMU, ovirt

Bununla birlikte destek verdiğimiz müşterilerimizin ısrarlı isteği doğrultusunda

vmware + microsoft hyper v çözümünü, müşterilerimiz için kullanıyorum.

7 Aralık 2015 Pazartesi

ovm ip uçları

OVM manager kullanıcı parolası değiştirme veya yeni kullanıcı ekleme;

# /u01/app/oracle/ovm-manager-3/bin/ovm_admin --createuser

# /u01/app/oracle/ovm-manager-3/bin/ovm_admin --modifyuser

Ansible automation platform kurarken dikkat edilmesi gereken noktalar

 1. iç ortamamınızda kullanılacak aap için yerel sertifikalar üretilmeli. Aşağıdaki script kullanılabilir. https://github.com/linuxliste/ara...