← Back to list

Huawei OBS ve s3fs ile Docker Containerlarında Bulut Depolama ve Veri Paylaşımı

Containerlarla çalışırken depolama işleri zorlaşabiliyor. Docker volume taşınabilir bir çözüm gerektiğinde ya da farklı makinelerdeki…

Zeynep Kucur in Huawei Developers - Türkiye · 2025-05-08 12:19 · 6 claps · 4.0 min read
#docker-container #docker-bind-mounts #s3fs #huawei-obs
Open on Medium ↗
Wiki topics: ☁️ · DevOps & Cloud

Huawei OBS ve s3fs ile Docker Konteynerlerinde Bulut Depolama ve Veri Paylaşımı

Containerlarla çalışırken depolama işleri zorlaşabiliyor. Docker volume taşınabilir bir çözüm gerektiğinde ya da farklı makinelerdeki konteynerlerin aynı veriye erişmesi gerektiğinde eksik kalabiliyor.

Bu yazımda Huawei OBS bucket’ı s3fs kullanarak nasıl locale mount ettigimi, s3fs’in caching özelliğinden nasıl yararlandığımı ve ardından OBS bucket’ı Docker konteyneri için nasıl storage olarak kullandığımı anlatacağım.

İçerik

OBS nedir?

Huawei Object Storage Service (OBS), Huawei Cloud’un yüksek ölçeklenebilir ve güvenli nesne depolama çözümüdür. AWS S3 veya Google Cloud Storage ile benzer bir amaca sahiptir ve yedeklemeler, medya dosyaları, web sitesi verileri gibi büyük miktarda yapılandırılmamış verinin depolanması için optimize edilmiştir.

s3fs nedir?

s3fs, bir Huawei Cloud OBS gibi s3 uyumlu bir bucket’ı bilgisayarınızda yerel bir dosya sistemi olarak bağlamanızı sağlayan bir FUSE (Filesystem in Userspace) modülüdür. s3fs sayesinde, bulut depolama ile tıpkı yerel bir klasörle etkileşimde bulunduğunuz gibi etkileşime girebilirsiniz.

macOS’ta s3fs Kurulumu

  1. Homebrew ile dependency’leri indirin
brew install macfuse automake gcc curl libxml2 pkg-config openssl@3

2. OpenSSL için ortam değişkenlerini ayarlayın

echo 'export LDFLAGS="-L/opt/local/opt/openssl@3/lib"' >> ~/.zshrc
echo 'export CPPFLAGS="-I/opt/local/opt/openssl@3/include"' >> ~/.zshrc
echo 'exportPKG_CONFIG_PATH="/opt/local/opt/openssl@3/lib/pkgconfig"' >> ~/.zshrc

3. s3fs-fuse’u klonlayin ve build edin

 git clone https://github.com/s3fs-fuse/s3fs-fuse.git
 cd s3fs-fuse
 ./autogen.sh
 ./configure — prefix=/usr/local — with-openssl
 make
 sudo make install

4. Kurulumu test edin

s3fs --version

s3fs ile OBS Bucket’a Erişim Sağlamak için Kimlik Doğrulama

OBS bucket’ınızı s3fs ile bağlamadan önce, Huawei Cloud Access Key (AK) ve Secret Key (SK) kullanarak kimlik doğrulaması yapmanız gerekir. Bu noktada AK ve SK, kullanıcı adı ve şifre gibi çalışarak doğrulamanızı yapar ve s3fs üzerinden OBS’e güvenli bir şekilde erişiminiz sağlanır.

AK/SK’nizi oluşturmak için:

  • IAM altında “My Credentials” bölümüne gidin.
  • “Create Access Key” seçeneğine tıklayın ve oluşturulan Access Key dosyasını indirin, dosya içerisinde Access Key ve Secret Key’inizi göreceksiniz.

My Credentials

My Credentials

Access Key

Access Key

Şimdi AK:SK çiftini OBS’ye erişim için parola dosyasına ekleyelim.

echo "AK:SK" >> ~/.passwd-s3fs
chmod 600 ~/.passwd-s3fs

OBS Bucket’ı mount edelim

1- Öncelikle bu bucket'ı mount edeceğimiz klasörü oluşturalım.

mkdir mnt
cd mnt
mkdir obs_docker

2- Şimdi ise Huawei Cloud OBS’e gidip bucket’imizi oluşturalım.

bucket olusturma

bucket olusturma

3- s3fs ile OBS bucket’ımızı oluşturduğumuz klasöre mount edelim.

Mount etme formatı şu şekilde:

Oluşturduğum klasörün yolu: /mnt/obs_docker , OBS’i buraya mount edelim. s3fs cache yapılandırmasını da yaparak OBS’ye gelen istek sayısını, ağ trafiğini azaltalım ve aynı zamanda hız kazanalım. use_cache=/tmp/s3fs

mounting OBS

mounting OBS

Artık OBS ile direkt /mnt/obs_docker klasöründe etkileşime geçebiliriz. Bu klasörü Docker container depolama alanımız olarak kullanacağız.

OBS’i depolama alanı olarak kullanan bir Docker konteyneri oluşturma

Önceki adımlarda s3fs’i indirdik, OBS’te bucket oluşturduk, s3fs’i OBS’e bağlamak için .passwd-s3fs dosyasına AK/SK bilgilerimizi girdik, OBS bucket'ımızı oluşturduğumuz /mnt/obs_docker klasörüne mount ettik. Şimdi ise özet olarak OBS'in mount edildiği bu klasörü depolama alanı olarak kullanan bir Apache HTTP Server (httpd) containerı oluşturacağız.

1- HTML dosyamızı kopyalayalım. Container doğrudan OBS’teki dosyaları servis edecek. Bunun için klasöre index.html dosyamızı kopyalayalım.

Huawei Cloud console üzerinden OBS’e gidip dosyamız yüklenmiş mi diye kontrol edersek, mount işlemini de başarıyla gerçekleştirdiğimizi görürüz.

2- OBS klasörümüzü storage olarak kullanan containerımızı oluşturalım.

Bu komutla website adında bir httpd:2.4 imajını kullanacak bir container’ı arka planda çalışacak şekilde başlatıyoruz. OBS klasörümüzü /Users/zeynepkucur/mnt/obs_docker container içinde Apache’nin hizmet verdiği dizine salt okunabilir (read only) şekilde bağlıyoruz. Böylece container, doğrudan OBS’deki dosyaları web sayfası olarak sunuyor. **http://127.0.0.1:80** adresini açarak websitemizi görüntüleyebiliriz.

website

website

Peki arka planda ne oluyor? Container, index.html dosyasını almak için OBS’ye istek gönderiyor. s3fs’in cache özelliğini de yapılandırmıştık, şimdi cache lokasyonumuza (/tmp/s3fs) gidip bir bakalım.

Cache’te index.html dosyasının tutulduğunu görüyoruz. Bu şekilde OBS’ye gönderilen istek sayısını ve bundan doğan maliyeti azaltıyoruz, aynı zamanda performansı artırıp, gecikmeyi de azaltıyoruz.

Özet

Bu makalede OBS bucket’ı lokalimize nasıl mount ederiz, mount ettiğimiz klasörü nasıl container için storage alanı olarak kullanırız bunu göstermiş oldum. Bu yöntem sayesinde, farklı makinelerde çalışan container'ların aynı OBS bucket'ına erişmesini sağlayabiliriz. Böylece containerlar için bulut tabanlı ve merkezi bir depolama çözümü sunmak mümkün oluyor.

Kaynaklar

[embed]S3Fs - S3Fs 2025.3.0+0.g01b9c4b.dirty documentation S3Fs is a Pythonic file interface to S3. It builds on top of botocore. The top-level class holds connection information…s3fs.readthedocs.io

[embed]Progressive Knowledge_Object Storage Service_Huawei Cloud Object Storage Service (OBS) is a stable, secure, efficient, and easy-to-use cloud storage service that is scalable and…support.huaweicloud.com


메타데이터
post_id
e94de34c15a6
slug
huawei-obs-ve-s3fs-ile-docker-containerlarında-bulut-depolama-ve-veri-paylaşımı-e94de34c15a6
url
https://medium.com/huawei-developers-tr/huawei-obs-ve-s3fs-ile-docker-containerlar%C4%B1nda-bulut-depolama-ve-veri-payla%C5%9F%C4%B1m%C4%B1-e94de34c15a6
canonical_url
https://medium.com/huawei-developers-tr/huawei-obs-ve-s3fs-ile-docker-containerlar%C4%B1nda-bulut-depolama-ve-veri-payla%C5%9F%C4%B1m%C4%B1-e94de34c15a6
author_url
https://medium.com/@zeynepkucur
status
ok
fetched_at
2026-06-21 07:44:09