Ağ ve Sistem İzleme: netstat, lsof, ve docker inspect Kullanımı
Ağ ve sistem yönetimi, özellikle modern uygulama ve servislerin sürekli büyümesiyle, önemli bir hale gelmiştir. Ağ bağlantılarını izlemek…
Ağ ve Sistem İzleme: netstat, lsof, ve docker inspect Kullanımı
Ağ ve sistem yönetimi, özellikle modern uygulama ve servislerin sürekli büyümesiyle, önemli bir hale gelmiştir. Ağ bağlantılarını izlemek, açık dosyaları takip etmek ve Docker konteynerlerini incelemek, sistem yöneticileri ve geliştiriciler için temel becerilerdir. Bu yazıda, netstat, lsof, ve docker inspect komutlarını detaylıca inceleyecek ve örneklerle nasıl kullanıldığını göstereceğiz.
netstat Komutu
netstat (network statistics), ağ bağlantıları, routing tabloları, arayüz istatistikleri, masquerade bağlantıları, ve multicast üyeliklerini görüntülemek için kullanılan bir ağ yardımcı programıdır. Aşağıda bazı temel kullanım örnekleri verilmiştir:
Temel Kullanım
- Açık Bağlantıları Listeleme:
netstat -an
2. Sadece TCP Bağlantılarını Listeleme:
netstat -at
3. Sadece UDP Bağlantılarını Listeleme:
netstat -au
4. Ağ Arayüzü İstatistiklerini Gösterme:
netstat -i
5. Routing Tablolarını Gösterme:
netstat -r
lsof Komutu
lsof (list open files), bir sistemde açık olan dosyaları listelemek için kullanılan güçlü bir araçtır. Unix benzeri işletim sistemlerinde her şey bir dosya olarak temsil edildiği için, bu komut çok geniş bir kullanım alanına sahiptir.
Temel Kullanım
- Tüm Açık Dosyaları Listeleme:
lsof
Bu komut, sistemdeki tüm açık dosyaları listeler.
2. Belirli Bir Portta Açık Olan Dosyaları Listeleme:
lsof -i :80
Bu komut, 80 numaralı portta açık olan tüm dosyaları gösterir.
3. Belirli Bir Kullanıcıya Ait Açık Dosyaları Listeleme:
lsof -u kullanıcı_adı
Bu komut, belirtilen kullanıcıya ait açık dosyaları listeler.
4. Bir Proses Tarafından Açık Olan Dosyaları Listeleme:
lsof -p PID
Bu komut, belirtilen PID’ye sahip proses tarafından açık olan dosyaları listeler.
docker inspect Komutu
docker inspect, Docker konteynerleri ve imajları hakkında detaylı bilgi almak için kullanılan bir komuttur. Bu komut, JSON formatında yapılandırma ve durum bilgisi döner.
Temel Kullanım
- Bir Konteynerin Detaylarını Görüntüleme:
docker inspect konteyner_adı_veya_id
Bu komut, belirtilen konteynerin detaylı bilgilerini JSON formatında gösterir.
2. Sadece Belirli Bir Alanı Görüntüleme:
docker inspect -f '{{.State.Running}}' konteyner_adı_veya_id
Bu komut, konteynerin çalışma durumunu gösterir. -f parametresi, format belirlemek için kullanılır.
3. Bir İmajın Detaylarını Görüntüleme:
docker inspect imaj_adı_veya_id
Bu komut, belirtilen imajın detaylı bilgilerini gösterir.
Örnek Senaryo: PostgreSQL Sunucusunu İzlemek
Bir PostgreSQL sunucusunun sistemde nasıl çalıştığını izlemek için netstat, lsof, ve docker inspect komutlarını birlikte kullanabiliriz. Bu adımları takip ederek PostgreSQL'in ağ bağlantılarını, açık dosyalarını ve Docker konteyner bilgilerini inceleyebiliriz.
Adım 1: PostgreSQL Bağlantılarını İnceleme
Öncelikle, PostgreSQL sunucusunun hangi bağlantılara sahip olduğunu netstat ile inceleyelim. PostgreSQL varsayılan olarak 5432 portunu kullanır, bu yüzden bu porta yapılan bağlantıları kontrol edebiliriz:
netstat -an | grep ':5432'
Bu komut, 5432 numaralı portta aktif olan tüm bağlantıları gösterir.
Adım 2: PostgreSQL Sunucusunun Açık Dosyalarını Kontrol Etme
PostgreSQL sunucusunun hangi dosyalara eriştiğini lsof ile kontrol edelim:
lsof -i :5432
Bu komut, 5432 numaralı portta açık olan tüm dosyaları listeler.
Adım 3: PostgreSQL Docker Konteynerini İnceleme
Eğer PostgreSQL sunucusu bir Docker konteynerinde çalışıyorsa, konteynerin detaylı bilgilerini docker inspect ile alabiliriz. Diyelim ki PostgreSQL konteynerimizin adı "postgresql_container":
docker inspect postgresql_container
Bu komut, PostgreSQL sunucusunun konteynerine ait tüm detayları JSON formatında gösterir.
Daha spesifik bilgileri görmek için belirli alanları sorgulayabiliriz. Örneğin, konteynerin çalışma durumunu kontrol etmek için:
docker inspect -f '{{.State.Running}}' postgresql_container
Bu komut, PostgreSQL konteynerinin çalışıp çalışmadığını gösterir.
Detaylı İnceleme ve İzleme
Adım 4: PostgreSQL Proseslerini İzleme
PostgreSQL sunucusunun sistemde hangi prosesler olarak çalıştığını ps komutuyla da kontrol edebiliriz:
ps aux | grep postgres
Bu komut, PostgreSQL sunucusuna ait tüm prosesleri listeler.
Adım 5: PostgreSQL Log Dosyalarını İzleme
PostgreSQL log dosyalarını izlemek, sunucu hakkında daha fazla bilgi sağlar. Log dosyalarının bulunduğu dizine giderek tail komutunu kullanabiliriz:
tail -f /var/lib/postgresql/data/log/postgresql.log
Bu komut, PostgreSQL log dosyasını izler ve yeni log girişlerini anlık olarak gösterir.
Sonuç Olarak
Bu örnek senaryoda, PostgreSQL sunucusunun ağ bağlantılarını, açık dosyalarını ve Docker konteyner bilgilerini netstat, lsof, ve docker inspect komutlarıyla nasıl izleyebileceğimizi gösterdik. Bu araçları kullanarak, PostgreSQL sunucusunun performansını ve güvenliğini artırabilir, potansiyel sorunları daha hızlı tespit edebiliriz. Ağ ve sistem yönetiminde bu güçlü araçları etkin bir şekilde kullanmak, hem günlük operasyonlarınızı hem de sorun giderme süreçlerinizi büyük ölçüde iyileştirecektir.
메타데이터
- post_id
- cd8ee2ac8ae2
- slug
- ağ-ve-sistem-i̇zleme-netstat-lsof-ve-docker-inspect-kullanımı-cd8ee2ac8ae2
- url
- https://medium.com/@cihan.gultekinnn/a%C4%9F-ve-sistem-i%CC%87zleme-netstat-lsof-ve-docker-inspect-kullan%C4%B1m%C4%B1-cd8ee2ac8ae2
- canonical_url
- https://medium.com/@cihan.gultekinnn/a%C4%9F-ve-sistem-i%CC%87zleme-netstat-lsof-ve-docker-inspect-kullan%C4%B1m%C4%B1-cd8ee2ac8ae2
- author_url
- https://medium.com/@cihan.gultekinnn
- status
- ok
- fetched_at
- 2026-06-20 20:29:01