{"id":33267,"date":"2025-10-31T21:41:12","date_gmt":"2025-10-31T18:41:12","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=33267"},"modified":"2025-10-31T21:41:12","modified_gmt":"2025-10-31T18:41:12","slug":"digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/","title":{"rendered":"DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber"},"content":{"rendered":"<p><body><\/p>\n<h2>DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber<\/h2>\n<h3>Giri\u015f: Block Storage ve Doctl&#8217;\u0131n \u00d6nemi<\/h3>\n<p>Bulut bili\u015fim d\u00fcnyas\u0131nda, veri depolama \u00e7\u00f6z\u00fcmleri uygulamalar\u0131n performans\u0131, g\u00fcvenilirli\u011fi ve \u00f6l\u00e7eklenebilirli\u011fi i\u00e7in kritik bir rol oynamaktad\u0131r. DigitalOcean, sundu\u011fu \u00e7e\u015fitli depolama se\u00e7enekleriyle geli\u015ftiricilerin ve \u015firketlerin ihtiya\u00e7lar\u0131na yan\u0131t vermektedir. Bu se\u00e7eneklerden biri olan DigitalOcean Block Storage, Droplet&#8217;lere (sanal sunuculara) kal\u0131c\u0131, y\u00fcksek performansl\u0131 ve \u00f6l\u00e7eklenebilir bir depolama alan\u0131 eklemek i\u00e7in tasarlanm\u0131\u015ft\u0131r. Geleneksel sabit diskler gibi d\u00fc\u015f\u00fcn\u00fclebilecek bu blok depolama birimleri, i\u015fletim sistemi diskinden ba\u011f\u0131ms\u0131z olarak \u00e7al\u0131\u015f\u0131r ve verilerinizi Droplet&#8217;inizden ayr\u0131 bir \u015fekilde saklaman\u0131za olanak tan\u0131r. Bu sayede, bir Droplet&#8217;i sildi\u011finizde bile verileriniz g\u00fcvende kal\u0131r ve ba\u015fka bir Droplet&#8217;e kolayca ba\u011flanabilir.<\/p>\n<p>Doctl ise, DigitalOcean API&#8217;si ile etkile\u015fim kurmak i\u00e7in kullan\u0131lan resmi komut sat\u0131r\u0131 arac\u0131d\u0131r (CLI). Geli\u015ftiricilerin ve sistem y\u00f6neticilerinin, DigitalOcean kaynaklar\u0131n\u0131 (Droplet&#8217;ler, veritabanlar\u0131, a\u011flar, depolama birimleri vb.) terminal \u00fczerinden h\u0131zl\u0131 ve verimli bir \u015fekilde y\u00f6netmesini sa\u011flar. Otomasyon senaryolar\u0131, s\u00fcrekli entegrasyon\/s\u00fcrekli da\u011f\u0131t\u0131m (CI\/CD) s\u00fcre\u00e7leri ve toplu i\u015flemler i\u00e7in vazge\u00e7ilmez bir ara\u00e7t\u0131r. Doctl ile Block Storage y\u00f6netimi, manuel aray\u00fcz i\u015flemlerine g\u00f6re \u00e7ok daha h\u0131zl\u0131, tekrarlanabilir ve hatas\u0131z bir deneyim sunar.<\/p>\n<p>Bu kapsaml\u0131 rehberde, DigitalOcean Block Storage&#8217;\u0131 Doctl kullanarak nas\u0131l olu\u015fturaca\u011f\u0131n\u0131z\u0131, y\u00f6netece\u011finizi, bir Droplet&#8217;e nas\u0131l ba\u011flayaca\u011f\u0131n\u0131z\u0131, dosya sistemini nas\u0131l formatlay\u0131p ba\u011flayaca\u011f\u0131n\u0131z\u0131, yeniden boyutland\u0131raca\u011f\u0131n\u0131z\u0131 ve snapshot&#8217;lar (anl\u0131k g\u00f6r\u00fcnt\u00fcler) ile nas\u0131l yedekleyece\u011finizi ad\u0131m ad\u0131m inceleyece\u011fiz. Amac\u0131m\u0131z, Doctl&#8217;\u0131n g\u00fcc\u00fcn\u00fc kullanarak DigitalOcean Block Storage&#8217;dan en iyi \u015fekilde faydalanman\u0131z\u0131 sa\u011flamakt\u0131r.<\/p>\n<h3>\u00d6n Ko\u015fullar ve Kurulum: Doctl Ortam\u0131n\u0131 Haz\u0131rlama<\/h3>\n<p>DigitalOcean Block Storage&#8217;\u0131 Doctl ile y\u00f6netmeye ba\u015flamadan \u00f6nce, baz\u0131 temel \u00f6n ko\u015fullar\u0131 yerine getirmeniz ve Doctl&#8217;\u0131 sisteminize kurman\u0131z gerekmektedir.<\/p>\n<h4>DigitalOcean Hesab\u0131 ve API Token&#8217;\u0131<\/h4>\n<p>\u00d6ncelikle aktif bir DigitalOcean hesab\u0131n\u0131z olmal\u0131d\u0131r. Doctl, DigitalOcean API&#8217;si \u00fczerinden hesab\u0131n\u0131zla etkile\u015fim kuraca\u011f\u0131 i\u00e7in bir API token&#8217;\u0131na ihtiyac\u0131n\u0131z olacakt\u0131r. Bu token, Doctl&#8217;\u0131n hesab\u0131n\u0131zda kaynak olu\u015fturma, de\u011fi\u015ftirme veya silme yetkisine sahip olmas\u0131n\u0131 sa\u011flar.<\/p>\n<p>1.  <strong>API Token Olu\u015fturma:<\/strong><br \/>\n    *   DigitalOcean kontrol paneline giri\u015f yap\u0131n.<br \/>\n    *   Sol men\u00fcden &#8220;API&#8221; b\u00f6l\u00fcm\u00fcne gidin.<br \/>\n    *   &#8220;Generate New Token&#8221; butonuna t\u0131klay\u0131n.<br \/>\n    *   Token&#8217;a a\u00e7\u0131klay\u0131c\u0131 bir isim verin (\u00f6rn: <code>doctl-access-token<\/code>).<br \/>\n    *   &#8220;Write&#8221; izinlerinin se\u00e7ili oldu\u011fundan emin olun, b\u00f6ylece Doctl kaynaklar\u0131 olu\u015fturabilir ve de\u011fi\u015ftirebilir.<br \/>\n    *   &#8220;Generate Token&#8221; butonuna t\u0131klay\u0131n.<br \/>\n    *   Olu\u015fturulan token&#8217;\u0131 <strong>mutlaka g\u00fcvenli bir yere kopyalay\u0131n<\/strong>. Bu token bir daha g\u00f6sterilmeyecektir. Kaybederseniz, yenisini olu\u015fturman\u0131z gerekir.<\/p>\n<h4>Doctl Kurulumu<\/h4>\n<p>Doctl, farkl\u0131 i\u015fletim sistemleri i\u00e7in kolay kurulum y\u00f6ntemleri sunar.<\/p>\n<h5>Linux (Debian\/Ubuntu)<\/h5>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt install -y doctl<\/code><\/pre>\n<h5>Linux (CentOS\/Fedora)<\/h5>\n<pre><code class=\"language-bash\">sudo yum install -y doctl<\/code><\/pre>\n<h5>macOS<\/h5>\n<p>Homebrew kullanarak kolayca kurabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">brew install doctl<\/code><\/pre>\n<h5>Windows<\/h5>\n<p>Doctl&#8217;\u0131 Windows&#8217;a kurman\u0131n birka\u00e7 yolu vard\u0131r:<\/p>\n<p>1.  <strong>Scoop ile (\u00d6nerilen):<\/strong><\/p>\n<pre><code class=\"language-powershell\">scoop install doctl<\/code><\/pre>\n<p>2.  <strong>Manuel Kurulum:<\/strong><br \/>\n    *   Doctl GitHub Releases sayfas\u0131ndan en son s\u00fcr\u00fcm\u00fcn <code>doctl.exe<\/code> dosyas\u0131n\u0131 indirin.<br \/>\n    *   \u0130ndirdi\u011finiz <code>doctl.exe<\/code> dosyas\u0131n\u0131 sisteminizin PATH&#8217;ine ekli bir klas\u00f6re (\u00f6rn: <code>C:\\Windows\\System32<\/code> veya \u00f6zel bir <code>C:\\Program Files\\doctl<\/code> klas\u00f6r\u00fc) ta\u015f\u0131y\u0131n.<br \/>\n    *   Komut istemcisini veya PowerShell&#8217;i yeniden ba\u015flat\u0131n.<\/p>\n<p>Kurulumun ba\u015far\u0131l\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">doctl version<\/code><\/pre>\n<p>Bu komut, kurulu Doctl s\u00fcr\u00fcm\u00fcn\u00fc g\u00f6sterecektir.<\/p>\n<h4>Doctl Kimlik Do\u011frulamas\u0131<\/h4>\n<p>Doctl&#8217;\u0131 ilk kez \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zda, hesab\u0131n\u0131zla kimlik do\u011frulamas\u0131 yapman\u0131z gerekir. Bunun i\u00e7in daha \u00f6nce olu\u015fturdu\u011funuz API token&#8217;\u0131n\u0131 kullanacaks\u0131n\u0131z.<\/p>\n<pre><code class=\"language-bash\">doctl auth init<\/code><\/pre>\n<p>Bu komutu \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zda, Doctl sizden API token&#8217;\u0131n\u0131z\u0131 yap\u0131\u015ft\u0131rman\u0131z\u0131 isteyecektir:<\/p>\n<pre><code class=\"language-\">Please enter your access token: <API_TOKEN_BURAYA_YAPISTIRIN><\/code><\/pre>\n<p>Token&#8217;\u0131 yap\u0131\u015ft\u0131r\u0131p Enter tu\u015funa bast\u0131ktan sonra Doctl, token&#8217;\u0131n\u0131z\u0131 do\u011frulayacak ve kimlik do\u011frulama i\u015flemini tamamlayacakt\u0131r. Art\u0131k Doctl komutlar\u0131n\u0131 kullanarak DigitalOcean hesab\u0131n\u0131z\u0131 y\u00f6netmeye haz\u0131rs\u0131n\u0131z. Birden fazla DigitalOcean hesab\u0131 veya farkl\u0131 API token&#8217;lar\u0131 ile \u00e7al\u0131\u015f\u0131yorsan\u0131z, <code>doctl auth init --context <context-name><\/code> komutunu kullanarak farkl\u0131 ba\u011flamlar olu\u015fturabilirsiniz. Mevcut ba\u011flamlar\u0131 listelemek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">doctl auth list<\/code><\/pre>\n<h3>Block Storage Temelleri: Kavramlar ve \u0130lk Ad\u0131mlar<\/h3>\n<p>Block Storage, Droplet&#8217;leriniz i\u00e7in a\u011fa ba\u011fl\u0131, y\u00fcksek performansl\u0131 depolama birimleridir. Bir Droplet&#8217;ten ba\u011f\u0131ms\u0131z olarak \u00e7al\u0131\u015f\u0131r ve Droplet&#8217;iniz silinse bile verileriniz g\u00fcvende kal\u0131r.<\/p>\n<h4>Volume Nedir?<\/h4>\n<p>DigitalOcean terminolojisinde, bir Block Storage birimine &#8220;volume&#8221; denir. Her volume&#8217;un belirli bir boyutu (GB cinsinden), bir b\u00f6lgesi (Droplet&#8217;inizle ayn\u0131 b\u00f6lgede olmal\u0131d\u0131r) ve iste\u011fe ba\u011fl\u0131 bir ad\u0131 ve a\u00e7\u0131klamas\u0131 vard\u0131r.<\/p>\n<h4>Volume Boyutlar\u0131 ve \u00d6zellikleri<\/h4>\n<p>*   <strong>Boyut:<\/strong> Minimum 10 GB&#8217;tan ba\u015flay\u0131p 16 TB&#8217;a kadar \u00e7\u0131kabilir. \u0130htiya\u00e7lar\u0131n\u0131za g\u00f6re \u00f6l\u00e7eklenebilir.<br \/>\n*   <strong>Performans:<\/strong> SSD tabanl\u0131d\u0131r ve y\u00fcksek IOPS (saniyedeki giri\u015f\/\u00e7\u0131k\u0131\u015f i\u015flemleri) performans\u0131 sunar, bu da veritabanlar\u0131, log sunucular\u0131 ve di\u011fer I\/O yo\u011fun uygulamalar i\u00e7in idealdir.<br \/>\n*   <strong>B\u00f6lgesel:<\/strong> Bir volume, yaln\u0131zca olu\u015fturuldu\u011fu b\u00f6lgedeki Droplet&#8217;lere ba\u011flanabilir. Farkl\u0131 b\u00f6lgelerdeki Droplet&#8217;lere ba\u011flanamaz.<\/p>\n<h4>Volume Olu\u015fturma<\/h4>\n<p>Doctl kullanarak yeni bir volume olu\u015fturmak olduk\u00e7a basittir. En az bir ad, bir b\u00f6lge ve bir boyut belirtmeniz gerekir.<\/p>\n<pre><code class=\"language-bash\">doctl compute volume create \\\n  --name my-new-volume \\\n  --region nyc1 \\\n  --size 100gb \\\n  --description \"Uygulama verileri i\u00e7in yeni volume\"<\/code><\/pre>\n<p>*   <code>--name<\/code>: Volume&#8217;unuz i\u00e7in benzersiz bir isim.<br \/>\n*   <code>--region<\/code>: Volume&#8217;un olu\u015fturulaca\u011f\u0131 DigitalOcean b\u00f6lgesi (\u00f6rn: <code>nyc1<\/code>, <code>fra1<\/code>, <code>ams3<\/code>). Bu b\u00f6lge, volume&#8217;u ba\u011flayaca\u011f\u0131n\u0131z Droplet&#8217;in b\u00f6lgesiyle ayn\u0131 olmal\u0131d\u0131r.<br \/>\n*   <code>--size<\/code>: Volume&#8217;un boyutu (GB cinsinden). Minimum 10 GB.<br \/>\n*   <code>--description<\/code> (iste\u011fe ba\u011fl\u0131): Volume hakk\u0131nda a\u00e7\u0131klay\u0131c\u0131 bir metin.<\/p>\n<p>Komut ba\u015far\u0131l\u0131 oldu\u011funda, olu\u015fturulan volume&#8217;un detaylar\u0131n\u0131 i\u00e7eren bir JSON veya tablo \u00e7\u0131kt\u0131s\u0131 al\u0131rs\u0131n\u0131z. Bu \u00e7\u0131kt\u0131da volume&#8217;un ID&#8217;si, ad\u0131, b\u00f6lgesi, boyutu ve durumu gibi bilgiler yer al\u0131r.<\/p>\n<pre><code class=\"language-json\"># \u00d6rnek \u00c7\u0131kt\u0131 (JSON format\u0131nda)\n[\n  {\n    \"id\": \"a1b2c3d4-e5f6-7890-1234-567890abcdef\",\n    \"name\": \"my-new-volume\",\n    \"region\": {\n      \"slug\": \"nyc1\",\n      \"name\": \"New York 1\"\n    },\n    \"size_gigabytes\": 100,\n    \"description\": \"Uygulama verileri i\u00e7in yeni volume\",\n    \"created_at\": \"2023-10-27T10:00:00Z\",\n    \"droplet_ids\": [],\n    \"filesystem_type\": \"\",\n    \"filesystem_label\": \"\"\n  }\n]<\/code><\/pre>\n<h4>Mevcut Volume&#8217;lar\u0131 Listeleme<\/h4>\n<p>Hesab\u0131n\u0131zdaki t\u00fcm Block Storage volume&#8217;lar\u0131n\u0131 listelemek i\u00e7in a\u015fa\u011f\u0131daki komutu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">doctl compute volume list<\/code><\/pre>\n<p>Bu komut, t\u00fcm volume&#8217;lar\u0131n ID&#8217;sini, ad\u0131n\u0131, b\u00f6lgesini, boyutunu ve ba\u011fl\u0131 oldu\u011fu Droplet&#8217;leri (varsa) listeleyecektir.<\/p>\n<pre><code class=\"language-\">ID                                      Name           Region    SizeGiB    DropletIDs    FilesystemType    FilesystemLabel\na1b2c3d4-e5f6-7890-1234-567890abcdef    my-new-volume  nyc1      100\nb1c2d3e4-f5g6-8901-2345-67890abcdef0    db-data        nyc1      200        [123456789]   ext4              db_volume<\/code><\/pre>\n<h4>Volume Bilgilerini G\u00f6r\u00fcnt\u00fcleme<\/h4>\n<p>Belirli bir volume&#8217;un detayl\u0131 bilgilerini g\u00f6rmek i\u00e7in volume ID&#8217;sini kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">doctl compute volume get a1b2c3d4-e5f6-7890-1234-567890abcdef<\/code><\/pre>\n<p>Bu komut, yukar\u0131daki <code>volume create<\/code> komutunun \u00e7\u0131kt\u0131s\u0131na benzer \u015fekilde, tek bir volume&#8217;un t\u00fcm \u00f6zelliklerini g\u00f6sterir.<\/p>\n<h3>Volume Y\u00f6netimi: Detayl\u0131 \u0130\u015flemler<\/h3>\n<p>Bir volume olu\u015fturduktan sonra, onu Droplet&#8217;lerinize ba\u011flaman\u0131z, dosya sistemini olu\u015fturman\u0131z, boyutunu de\u011fi\u015ftirmeniz veya gerekti\u011finde silmeniz gerekebilir.<\/p>\n<h4>Volume&#8217;u Bir Droplet&#8217;e Ekleme (Attach)<\/h4>\n<p>Bir volume&#8217;u kullanabilmek i\u00e7in \u00f6ncelikle onu bir Droplet&#8217;e ba\u011flaman\u0131z gerekir. Volume ve Droplet&#8217;in ayn\u0131 b\u00f6lgede olmas\u0131 zorunludur.<\/p>\n<p>1.  <strong>Droplet ID&#8217;sini Bulma:<\/strong><br \/>\n    Volume&#8217;u ba\u011flayaca\u011f\u0131n\u0131z Droplet&#8217;in ID&#8217;sine ihtiyac\u0131n\u0131z olacak. Droplet&#8217;lerinizi listelemek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">doctl compute droplet list<\/code><\/pre>\n<p>    \u00c7\u0131kt\u0131dan ilgili Droplet&#8217;in <code>ID<\/code> de\u011ferini not al\u0131n.<\/p>\n<p>2.  <strong>Volume&#8217;u Ba\u011flama:<\/strong><\/p>\n<pre><code class=\"language-bash\">doctl compute volume attach <volume-id> --droplet-id <droplet-id><\/code><\/pre>\n<p>    \u00d6rnek:<\/p>\n<pre><code class=\"language-bash\">doctl compute volume attach a1b2c3d4-e5f6-7890-1234-567890abcdef --droplet-id 123456789<\/code><\/pre>\n<p>    Bu komut, volume&#8217;u belirtilen Droplet&#8217;e ba\u011flar. Ancak bu i\u015flem, volume&#8217;u Droplet&#8217;in i\u015fletim sistemi taraf\u0131ndan kullan\u0131labilir hale getirmez. Bunun i\u00e7in Droplet i\u00e7inde ek ad\u0131mlar gereklidir.<\/p>\n<p>3.  <strong>Droplet \u0130\u00e7inde Formatlama ve Ba\u011flama (Mount) \u0130\u015flemleri:<\/strong><br \/>\n    Volume&#8217;u Droplet&#8217;e ba\u011flad\u0131ktan sonra, SSH ile Droplet&#8217;inize ba\u011flanman\u0131z ve volume&#8217;u haz\u0131rlaman\u0131z gerekir.<\/p>\n<p>    *   <strong>Yeni Ba\u011flanan Diskleri Listeleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">lsblk<\/code><\/pre>\n<p>        Bu komut, Droplet&#8217;inize ba\u011fl\u0131 t\u00fcm diskleri ve b\u00f6l\u00fcmleri listeler. Yeni ba\u011flanan volume genellikle <code>\/dev\/disk\/by-id\/scsi-0DO_Volume_your-volume-name<\/code> veya <code>\/dev\/sdb<\/code>, <code>\/dev\/sdc<\/code> gibi bir isimle g\u00f6r\u00fcnecektir. DigitalOcean, kal\u0131c\u0131 tan\u0131mlay\u0131c\u0131lar\u0131 kullanman\u0131z\u0131 \u00f6nerir: <code>\/dev\/disk\/by-id\/scsi-0DO_Volume_your-volume-name<\/code>.<\/p>\n<p>    *   <strong>Dosya Sistemi Olu\u015fturma (Yaln\u0131zca \u0130lk Kez Ba\u011flarken):<\/strong><br \/>\n        E\u011fer volume yeni olu\u015fturulduysa ve \u00fczerinde bir dosya sistemi yoksa, bir dosya sistemi olu\u015fturman\u0131z gerekir. <code>ext4<\/code> veya <code>XFS<\/code> yayg\u0131n olarak kullan\u0131lan dosya sistemleridir.<\/p>\n<p>        <strong>ext4 i\u00e7in:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo mkfs.ext4 \/dev\/disk\/by-id\/scsi-0DO_Volume_my-new-volume<\/code><\/pre>\n<p>        <strong>XFS i\u00e7in:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo mkfs.xfs \/dev\/disk\/by-id\/scsi-0DO_Volume_my-new-volume<\/code><\/pre>\n<p>        <strong>D\u0130KKAT:<\/strong> Bu komutlar, disk \u00fczerindeki t\u00fcm verileri siler. Mevcut bir volume&#8217;u ba\u011flarken ve \u00fczerinde zaten veri varsa bu ad\u0131m\u0131 atlay\u0131n.<\/p>\n<p>    *   <strong>Ba\u011flama Noktas\u0131 Olu\u015fturma:<\/strong><br \/>\n        Volume&#8217;u ba\u011flayaca\u011f\u0131n\u0131z bir dizin olu\u015fturun.<\/p>\n<pre><code class=\"language-bash\">sudo mkdir -p \/mnt\/myvolume<\/code><\/pre>\n<p>    *   <strong>Volume&#8217;u Ba\u011flama:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo mount \/dev\/disk\/by-id\/scsi-0DO_Volume_my-new-volume \/mnt\/myvolume<\/code><\/pre>\n<p>    *   <strong>Kal\u0131c\u0131 Ba\u011flama (<code>\/etc\/fstab<\/code>):<\/strong><br \/>\n        Droplet yeniden ba\u015flat\u0131ld\u0131\u011f\u0131nda volume&#8217;un otomatik olarak ba\u011flanmas\u0131 i\u00e7in <code>\/etc\/fstab<\/code> dosyas\u0131na bir giri\u015f eklemeniz gerekir. Bunun i\u00e7in volume&#8217;un UUID&#8217;sini veya kal\u0131c\u0131 yolunu kullanmak en g\u00fcvenli y\u00f6ntemdir.<br \/>\n        Volume&#8217;un UUID&#8217;sini \u00f6\u011frenmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo blkid \/dev\/disk\/by-id\/scsi-0DO_Volume_my-new-volume<\/code><\/pre>\n<p>        \u00c7\u0131kt\u0131dan <code>UUID=\"<your-volume-uuid>\"<\/code> de\u011ferini kopyalay\u0131n.<\/p>\n<p>        <code>\/etc\/fstab<\/code> dosyas\u0131n\u0131 d\u00fczenleyin:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/fstab<\/code><\/pre>\n<p>        Dosyan\u0131n sonuna a\u015fa\u011f\u0131daki sat\u0131r\u0131 ekleyin (UUID veya kal\u0131c\u0131 yolu kullanabilirsiniz):<\/p>\n<pre><code class=\"language-\"># UUID ile:\n        UUID=<your-volume-uuid> \/mnt\/myvolume ext4 defaults,nofail 0 2\n\n        # Veya kal\u0131c\u0131 yol ile (daha az \u00f6nerilir, UUID daha sa\u011flamd\u0131r):\n        \/dev\/disk\/by-id\/scsi-0DO_Volume_my-new-volume \/mnt\/myvolume ext4 defaults,nofail 0 2<\/code><\/pre>\n<p>        <code>nofail<\/code> se\u00e7ene\u011fi, volume&#8217;un ba\u011flanamamas\u0131 durumunda Droplet&#8217;in \u00f6ny\u00fckleme i\u015fleminin tak\u0131lmamas\u0131n\u0131 sa\u011flar.<br \/>\n        De\u011fi\u015fiklikleri kaydedip \u00e7\u0131kt\u0131ktan sonra, fstab&#8217;\u0131 test etmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo mount -a<\/code><\/pre>\n<p>        Herhangi bir hata vermezse, volume ba\u015far\u0131yla kal\u0131c\u0131 olarak ayarlanm\u0131\u015ft\u0131r.<\/p>\n<h4>Volume&#8217;u Bir Droplet&#8217;ten Ay\u0131rma (Detach)<\/h4>\n<p>Bir volume&#8217;u ba\u015fka bir Droplet&#8217;e ba\u011flamak veya silmek istiyorsan\u0131z, \u00f6ncelikle onu mevcut Droplet&#8217;ten ay\u0131rman\u0131z gerekir.<\/p>\n<p>1.  <strong>Droplet \u0130\u00e7inde Ay\u0131rma (Unmount):<\/strong><br \/>\n    SSH ile Droplet&#8217;inize ba\u011flan\u0131n ve volume&#8217;u unmount edin.<\/p>\n<pre><code class=\"language-bash\">sudo umount \/mnt\/myvolume<\/code><\/pre>\n<p>    E\u011fer <code>\/etc\/fstab<\/code>&#8216;a bir giri\u015f eklediyseniz, bu giri\u015fi de silmeniz veya yorum sat\u0131r\u0131 yapman\u0131z gerekir.<\/p>\n<p>2.  <strong>Doctl ile Ay\u0131rma:<\/strong><br \/>\n    Volume&#8217;u Droplet&#8217;ten ay\u0131rmak i\u00e7in Doctl komutunu kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">doctl compute volume detach <volume-id> --droplet-id <droplet-id><\/code><\/pre>\n<p>    \u00d6rnek:<\/p>\n<pre><code class=\"language-bash\">doctl compute volume detach a1b2c3d4-e5f6-7890-1234-567890abcdef --droplet-id 123456789<\/code><\/pre>\n<p>    Bu i\u015flem tamamland\u0131\u011f\u0131nda, volume art\u0131k Droplet&#8217;e ba\u011fl\u0131 olmayacakt\u0131r.<\/p>\n<h4>Volume&#8217;u Yeniden Boyutland\u0131rma<\/h4>\n<p>Volume&#8217;unuzun depolama ihtiyac\u0131 zamanla artabilir. DigitalOcean Block Storage, volume&#8217;lar\u0131 kolayca b\u00fcy\u00fctmenize olanak tan\u0131r. <strong>Ancak volume&#8217;u k\u00fc\u00e7\u00fcltmek m\u00fcmk\u00fcn de\u011fildir.<\/strong><\/p>\n<p>1.  <strong>Doctl ile Yeniden Boyutland\u0131rma:<\/strong><br \/>\n    Volume&#8217;u yeniden boyutland\u0131rmak i\u00e7in a\u015fa\u011f\u0131daki komutu kullan\u0131n. Yeni boyut, mevcut boyuttan daha b\u00fcy\u00fck olmal\u0131d\u0131r.<\/p>\n<pre><code class=\"language-bash\">doctl compute volume resize <volume-id> --size <new-size-gb><\/code><\/pre>\n<p>    \u00d6rnek (100 GB&#8217;l\u0131k volume&#8217;u 200 GB&#8217;a b\u00fcy\u00fctme):<\/p>\n<pre><code class=\"language-bash\">doctl compute volume resize a1b2c3d4-e5f6-7890-1234-567890abcdef --size 200gb<\/code><\/pre>\n<p>    Bu komut, volume&#8217;un kapasitesini DigitalOcean taraf\u0131nda art\u0131r\u0131r.<\/p>\n<p>2.  <strong>Droplet \u0130\u00e7inde Dosya Sistemini Geni\u015fletme:<\/strong><br \/>\n    Volume&#8217;u Doctl ile b\u00fcy\u00fctt\u00fckten sonra, bu yeni alan\u0131 kullanabilmek i\u00e7in Droplet i\u00e7inde dosya sistemini geni\u015fletmeniz gerekir. Bu i\u015flem, volume&#8217;un ba\u011fl\u0131 oldu\u011fu Droplet&#8217;te yap\u0131lmal\u0131d\u0131r.<\/p>\n<p>    *   <strong>ext4 Dosya Sistemi \u0130\u00e7in:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo resize2fs \/dev\/disk\/by-id\/scsi-0DO_Volume_my-new-volume<\/code><\/pre>\n<p>        Bu komut, <code>ext4<\/code> dosya sistemini otomatik olarak volume&#8217;un yeni boyutuna g\u00f6re geni\u015fletecektir.<\/p>\n<p>    *   <strong>XFS Dosya Sistemi \u0130\u00e7in:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo xfs_growfs \/mnt\/myvolume<\/code><\/pre>\n<p>        <code>xfs_growfs<\/code> komutu, dosya sistemini ba\u011flama noktas\u0131 \u00fczerinden geni\u015fletir.<\/p>\n<p>    \u0130\u015flem tamamland\u0131ktan sonra, <code>df -h<\/code> komutu ile yeni boyutu kontrol edebilirsiniz.<\/p>\n<h4>Volume&#8217;u Yeniden Adland\u0131rma<\/h4>\n<p>Bir volume&#8217;un ad\u0131n\u0131 de\u011fi\u015ftirmek i\u00e7in <code>update<\/code> komutunu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">doctl compute volume update <volume-id> --name <new-name><\/code><\/pre>\n<p>\u00d6rnek:<\/p>\n<pre><code class=\"language-bash\">doctl compute volume update a1b2c3d4-e5f6-7890-1234-567890abcdef --name my-app-data-volume<\/code><\/pre>\n<h4>Volume&#8217;u Silme<\/h4>\n<p>Bir volume&#8217;a art\u0131k ihtiyac\u0131n\u0131z kalmad\u0131\u011f\u0131nda onu silebilirsiniz. <strong>Bu i\u015flem kal\u0131c\u0131d\u0131r ve volume \u00fczerindeki t\u00fcm verileri siler.<\/strong> Silmeden \u00f6nce volume&#8217;un ba\u011fl\u0131 oldu\u011fu herhangi bir Droplet&#8217;ten ayr\u0131ld\u0131\u011f\u0131ndan emin olun.<\/p>\n<pre><code class=\"language-bash\">doctl compute volume delete <volume-id><\/code><\/pre>\n<p>\u00d6rnek:<\/p>\n<pre><code class=\"language-bash\">doctl compute volume delete a1b2c3d4-e5f6-7890-1234-567890abcdef<\/code><\/pre>\n<p>Doctl, silme i\u015flemini onaylaman\u0131z\u0131 isteyecektir. Onaylad\u0131ktan sonra volume silinecektir.<\/p>\n<h3>Snapshot Y\u00f6netimi: Veri Yedekleme ve Kurtarma<\/h3>\n<p>Snapshot&#8217;lar, Block Storage volume&#8217;lar\u0131n\u0131z\u0131n belirli bir zamandaki anl\u0131k g\u00f6r\u00fcnt\u00fcleridir. Veri kayb\u0131n\u0131 \u00f6nlemek, test ortamlar\u0131 olu\u015fturmak veya volume&#8217;u farkl\u0131 bir b\u00f6lgeye ta\u015f\u0131mak (snapshot&#8217;tan yeni volume olu\u015fturarak) i\u00e7in olduk\u00e7a kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n<h4>Snapshot Nedir ve Neden \u00d6nemlidir?<\/h4>\n<p>Bir volume snapshot&#8217;\u0131, o volume&#8217;un t\u00fcm i\u00e7eri\u011finin bir kopyas\u0131d\u0131r. Volume&#8217;dan ayr\u0131 olarak depolan\u0131r ve gerekti\u011finde yeni bir volume olu\u015fturmak i\u00e7in kullan\u0131labilir. Snapshot&#8217;lar, felaket kurtarma, veri yedekleme ve geli\u015ftirme\/test ortamlar\u0131n\u0131n h\u0131zl\u0131 bir \u015fekilde kopyalanmas\u0131 gibi senaryolarda kritik \u00f6neme sahiptir. DigitalOcean, snapshot&#8217;lar\u0131 Droplet&#8217;lerden ba\u011f\u0131ms\u0131z olarak saklar ve \u00fccretlendirir.<\/p>\n<h4>Volume&#8217;dan Snapshot Olu\u015fturma<\/h4>\n<p>Bir volume&#8217;un snapshot&#8217;\u0131n\u0131 almak i\u00e7in volume ID&#8217;sini ve snapshot&#8217;a verece\u011finiz bir ad\u0131 belirtmeniz gerekir. <strong>Snapshot al\u0131rken volume&#8217;un ba\u011fl\u0131 oldu\u011fu Droplet&#8217;te I\/O i\u015flemlerinin durdurulmas\u0131 veya volume&#8217;un unmount edilmesi \u00f6nerilir<\/strong> (veritabanlar\u0131 gibi kritik uygulamalar i\u00e7in), aksi takdirde snapshot tutars\u0131z veriler i\u00e7erebilir.<\/p>\n<pre><code class=\"language-bash\">doctl compute volume snapshot create <volume-id> --snapshot-name <snapshot-name><\/code><\/pre>\n<p>\u00d6rnek:<\/p>\n<pre><code class=\"language-bash\">doctl compute volume snapshot create a1b2c3d4-e5f6-7890-1234-567890abcdef --snapshot-name my-volume-backup-20231027<\/code><\/pre>\n<p>Komut ba\u015far\u0131l\u0131 oldu\u011funda, olu\u015fturulan snapshot&#8217;\u0131n detaylar\u0131n\u0131 i\u00e7eren bir \u00e7\u0131kt\u0131 al\u0131rs\u0131n\u0131z.<\/p>\n<h4>Mevcut Snapshot&#8217;lar\u0131 Listeleme<\/h4>\n<p>Hesab\u0131n\u0131zdaki t\u00fcm Block Storage snapshot&#8217;lar\u0131n\u0131 listelemek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">doctl compute volume snapshot list<\/code><\/pre>\n<p>Bu komut, snapshot ID&#8217;lerini, adlar\u0131n\u0131, kaynak volume&#8217;lar\u0131n\u0131 ve olu\u015fturulma tarihlerini g\u00f6sterecektir.<\/p>\n<pre><code class=\"language-\">ID                                      Name                       ResourceID                             ResourceType    Created\ng1h2i3j4-k5l6-7890-1234-567890abcdef    my-volume-backup-20231027  a1b2c3d4-e5f6-7890-1234-567890abcdef   volume          2023-10-27T11:00:00Z<\/code><\/pre>\n<h4>Snapshot&#8217;tan Yeni Bir Volume Olu\u015fturma<\/h4>\n<p>Bir snapshot&#8217;\u0131, mevcut bir volume&#8217;u geri y\u00fcklemek veya snapshot&#8217;\u0131n bir kopyas\u0131ndan yeni bir volume olu\u015fturmak i\u00e7in kullanabilirsiniz. Yeni volume, snapshot&#8217;\u0131n al\u0131nd\u0131\u011f\u0131 b\u00f6lgede olu\u015fturulmal\u0131d\u0131r.<\/p>\n<pre><code class=\"language-bash\">doctl compute volume create \\\n  --name restored-volume \\\n  --region nyc1 \\\n  --size 100gb \\\n  --snapshot-id <snapshot-id><\/code><\/pre>\n<p>*   <code>--snapshot-id<\/code>: Kullan\u0131lacak snapshot&#8217;\u0131n ID&#8217;si.<br \/>\n*   <code>--size<\/code>: Yeni volume&#8217;un boyutu. Bu boyut, kaynak snapshot&#8217;\u0131n boyutundan k\u00fc\u00e7\u00fck olamaz. Genellikle ayn\u0131 boyut veya daha b\u00fcy\u00fck bir boyut verilir.<\/p>\n<p>\u00d6rnek:<\/p>\n<pre><code class=\"language-bash\">doctl compute volume create \\\n  --name restored-volume-from-backup \\\n  --region nyc1 \\\n  --size 100gb \\\n  --snapshot-id g1h2i3j4-k5l6-7890-1234-567890abcdef<\/code><\/pre>\n<p>Bu komut, belirtilen snapshot&#8217;tan yeni bir volume olu\u015fturacakt\u0131r. Olu\u015fturulan volume, snapshot&#8217;\u0131n al\u0131nd\u0131\u011f\u0131 andaki t\u00fcm verileri i\u00e7erecektir. Daha sonra bu volume&#8217;u bir Droplet&#8217;e ba\u011flay\u0131p kullanabilirsiniz.<\/p>\n<h4>Snapshot&#8217;\u0131 Silme<\/h4>\n<p>Art\u0131k ihtiyac\u0131n\u0131z olmayan snapshot&#8217;lar\u0131 silerek depolama maliyetlerinden tasarruf edebilirsiniz.<\/p>\n<pre><code class=\"language-bash\">doctl compute volume snapshot delete <snapshot-id><\/code><\/pre>\n<p>\u00d6rnek:<\/p>\n<pre><code class=\"language-bash\">doctl compute volume snapshot delete g1h2i3j4-k5l6-7890-1234-567890abcdef<\/code><\/pre>\n<p>Doctl, silme i\u015flemini onaylaman\u0131z\u0131 isteyecektir. Onaylad\u0131ktan sonra snapshot kal\u0131c\u0131 olarak silinecektir.<\/p>\n<h3>Geli\u015fmi\u015f Kullan\u0131m Senaryolar\u0131 ve En \u0130yi Uygulamalar<\/h3>\n<p>Doctl ile DigitalOcean Block Storage&#8217;\u0131 y\u00f6netmek, basit i\u015flemlerin \u00f6tesinde, daha karma\u015f\u0131k senaryolarda da b\u00fcy\u00fck avantajlar sunar.<\/p>\n<h4>Birden Fazla Volume ile \u00c7al\u0131\u015fma<\/h4>\n<p>Baz\u0131 uygulamalar, farkl\u0131 t\u00fcrdeki veriler i\u00e7in birden fazla depolama birimine ihtiya\u00e7 duyabilir. \u00d6rne\u011fin, bir veritaban\u0131 sunucusu i\u00e7in ana veri dosyalar\u0131 bir volume&#8217;da, log dosyalar\u0131 ba\u015fka bir volume&#8217;da ve yedekler \u00fc\u00e7\u00fcnc\u00fc bir volume&#8217;da tutulabilir. Doctl, bu volume&#8217;lar\u0131 ayr\u0131 ayr\u0131 olu\u015fturman\u0131za, y\u00f6netmenize ve ayn\u0131 Droplet&#8217;e ba\u011flaman\u0131za olanak tan\u0131r. Her volume i\u00e7in ayr\u0131 ba\u011flama noktalar\u0131 olu\u015fturarak verileri mant\u0131ksal olarak ay\u0131rabilirsiniz.<\/p>\n<h4>Otomatik Yedekleme Stratejileri (Snapshot Otomasyonu)<\/h4>\n<p>Doctl, shell betikleri (script) i\u00e7inde kullan\u0131labildi\u011fi i\u00e7in, Block Storage snapshot&#8217;lar\u0131n\u0131n otomatik olarak al\u0131nmas\u0131 ve eski snapshot&#8217;lar\u0131n temizlenmesi gibi yedekleme stratejileri olu\u015fturmak i\u00e7in m\u00fckemmel bir ara\u00e7t\u0131r. Bir cron i\u015fi kullanarak belirli aral\u0131klarla (\u00f6rne\u011fin g\u00fcnl\u00fck veya haftal\u0131k) snapshot&#8217;lar alabilir ve belirli bir ya\u015ftan (\u00f6rne\u011fin 30 g\u00fcnden) eski snapshot&#8217;lar\u0131 silebilirsiniz.<\/p>\n<p><strong>\u00d6rnek Basit Yedekleme Beti\u011fi (Kavramsal):<\/strong><\/p>\n<pre><code class=\"language-bash\">#!\/bin\/bash\n\nVOLUME_ID=\"a1b2c3d4-e5f6-7890-1234-567890abcdef\"\nSNAPSHOT_NAME=\"daily-backup-$(date +%Y%m%d%H%M)\"\n\necho \"Taking snapshot of volume $VOLUME_ID with name $SNAPSHOT_NAME...\"\ndoctl compute volume snapshot create $VOLUME_ID --snapshot-name $SNAPSHOT_NAME\n\necho \"Listing snapshots...\"\ndoctl compute volume snapshot list\n\n<h2>Eski snapshot'lar\u0131 silme mant\u0131\u011f\u0131 buraya eklenebilir<\/h2>\n<h2>\u00d6rne\u011fin, 7 g\u00fcnden eski snapshot'lar\u0131 listele ve sil.<\/h2>\n<h2>Bu k\u0131s\u0131m daha karma\u015f\u0131k olabilir ve dikkatli uygulanmal\u0131d\u0131r.<\/code><\/pre>\n<\/h2>\n<p>Bu t\u00fcr betikler, hata kontrol\u00fc ve daha geli\u015fmi\u015f filtreleme ile zenginle\u015ftirilebilir.<\/p>\n<h4>Performans \u0130pu\u00e7lar\u0131<\/h4>\n<p>*   <strong>Do\u011fru Boyutland\u0131rma:<\/strong> Block Storage performans\u0131 (IOPS), volume&#8217;un boyutuyla do\u011frudan ili\u015fkilidir. Daha b\u00fcy\u00fck volume&#8217;lar genellikle daha y\u00fcksek IOPS sa\u011flar. Uygulaman\u0131z\u0131n I\/O gereksinimlerini analiz ederek uygun boyutta bir volume se\u00e7in.<br \/>\n*   <strong>Droplet Lokasyonu:<\/strong> Volume&#8217;unuzun Droplet&#8217;inizle ayn\u0131 veri merkezinde (ayn\u0131 b\u00f6lgede) oldu\u011fundan emin olun. Bu, gecikmeyi (latency) en aza indirir ve performans\u0131 art\u0131r\u0131r.<br \/>\n*   <strong>Dosya Sistemi Se\u00e7imi:<\/strong> <code>ext4<\/code> \u00e7o\u011fu genel kullan\u0131m i\u00e7in uygunken, <code>XFS<\/code> \u00f6zellikle b\u00fcy\u00fck dosyalar ve y\u00fcksek e\u015fzamanl\u0131 I\/O gerektiren i\u015f y\u00fckleri (\u00f6rne\u011fin veritabanlar\u0131) i\u00e7in daha iyi performans g\u00f6sterebilir.<\/p>\n<h4>G\u00fcvenlik Hususlar\u0131<\/h4>\n<p>*   <strong>Eri\u015fim Kontrol\u00fc:<\/strong> Doctl kimlik do\u011frulamas\u0131nda kullan\u0131lan API token&#8217;\u0131n\u0131z\u0131 g\u00fcvende tutun. Bu token, hesab\u0131n\u0131za tam eri\u015fim sa\u011flar. Yaln\u0131zca gerekli izinlere sahip token&#8217;lar olu\u015fturun (\u00f6rne\u011fin, sadece okuma izinleri).<br \/>\n*   <strong>Veri \u015eifreleme:<\/strong> DigitalOcean Block Storage, varsay\u0131lan olarak depolanan verileri \u015fifreler. Ancak, hassas veriler i\u00e7in uygulama d\u00fczeyinde veya dosya sistemi d\u00fczeyinde ek \u015fifreleme (\u00f6rne\u011fin LUKS) uygulamay\u0131 d\u00fc\u015f\u00fcnebilirsiniz.<br \/>\n*   <strong>Snapshot G\u00fcvenli\u011fi:<\/strong> Snapshot&#8217;lar da volume&#8217;lar kadar hassas veriler i\u00e7erebilir. Snapshot&#8217;lar\u0131n\u0131za eri\u015fimi kontrol alt\u0131nda tutun ve gereksiz snapshot&#8217;lar\u0131 d\u00fczenli olarak silin.<\/p>\n<h4>CI\/CD Entegrasyonu i\u00e7in Doctl Kullan\u0131m\u0131<\/h4>\n<p>Doctl, otomasyon ara\u00e7lar\u0131 ve CI\/CD pipeline&#8217;lar\u0131 ile sorunsuz bir \u015fekilde entegre edilebilir. \u00d6rne\u011fin, yeni bir test ortam\u0131 olu\u015fturulurken bir veritaban\u0131 volume&#8217;unun snapshot&#8217;\u0131ndan otomatik olarak yeni bir volume olu\u015fturulabilir, bir test Droplet&#8217;ine ba\u011flanabilir ve testler tamamland\u0131\u011f\u0131nda silinebilir. Bu, test ortamlar\u0131n\u0131n h\u0131zl\u0131 bir \u015fekilde olu\u015fturulup yok edilmesini sa\u011flayarak kaynak kullan\u0131m\u0131n\u0131 optimize eder.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<h4>Block Storage ile Object Storage aras\u0131ndaki fark nedir?<\/h4>\n<p>*   <strong>Block Storage (Volume&#8217;lar):<\/strong> Bir sunucuya (Droplet&#8217;e) do\u011frudan ba\u011flanan, i\u015fletim sistemi taraf\u0131ndan bir disk gibi g\u00f6r\u00fclen, formatlanabilen ve \u00fczerine dosya sistemi kurulabilen depolama birimleridir. Genellikle veritabanlar\u0131, i\u015fletim sistemi diskleri veya y\u00fcksek performans gerektiren uygulamalar i\u00e7in kullan\u0131l\u0131r.<br \/>\n*   <strong>Object Storage (Spaces):<\/strong> Nesne tabanl\u0131 depolama, yap\u0131land\u0131r\u0131lmam\u0131\u015f verileri (resimler, videolar, yedekler, statik web siteleri) depolamak i\u00e7in tasarlanm\u0131\u015ft\u0131r. Bir Droplet&#8217;e do\u011frudan ba\u011flanmaz; bunun yerine, veriye HTTP API&#8217;leri arac\u0131l\u0131\u011f\u0131yla eri\u015filir. Sonsuz \u00f6l\u00e7eklenebilir ve genellikle daha uygun maliyetlidir.<\/p>\n<h4>Bir volume&#8217;u birden fazla Droplet&#8217;e ba\u011flayabilir miyim?<\/h4>\n<p>Hay\u0131r, DigitalOcean Block Storage volume&#8217;lar\u0131 ayn\u0131 anda yaln\u0131zca bir Droplet&#8217;e ba\u011flanabilir. Payla\u015f\u0131ml\u0131 depolama \u00e7\u00f6z\u00fcm\u00fc ar\u0131yorsan\u0131z, bunun yerine bir A\u011f Dosya Sistemi (NFS) sunucusu kurmay\u0131 veya harici bir veritaban\u0131 hizmeti kullanmay\u0131 d\u00fc\u015f\u00fcnebilirsiniz.<\/p>\n<h4>Volume&#8217;u farkl\u0131 bir b\u00f6lgeye ta\u015f\u0131yabilir miyim?<\/h4>\n<p>Do\u011frudan bir volume&#8217;u farkl\u0131 bir b\u00f6lgeye ta\u015f\u0131yamazs\u0131n\u0131z. Ancak, volume&#8217;un bir snapshot&#8217;\u0131n\u0131 al\u0131p, bu snapshot&#8217;\u0131 farkl\u0131 bir b\u00f6lgede yeni bir volume olu\u015fturmak i\u00e7in kullanabilirsiniz. Bu, verilerinizi farkl\u0131 bir b\u00f6lgeye &#8220;ta\u015f\u0131mak&#8221; i\u00e7in yayg\u0131n bir y\u00f6ntemdir.<\/p>\n<h4>Silinen bir volume&#8217;u geri getirebilir miyim?<\/h4>\n<p>Hay\u0131r, bir volume silindi\u011finde, \u00fczerindeki t\u00fcm veriler kal\u0131c\u0131 olarak silinir ve geri getirilemez. Bu nedenle, silme i\u015flemi yapmadan \u00f6nce \u00f6nemli verilerin yedeklendi\u011finden (snapshot al\u0131nd\u0131\u011f\u0131ndan) emin olun.<\/p>\n<h3>Sonu\u00e7: Doctl ile DigitalOcean Block Storage&#8217;\u0131n G\u00fcc\u00fc<\/h3>\n<p>DigitalOcean Block Storage, Droplet&#8217;lerinize esnek, y\u00fcksek performansl\u0131 ve kal\u0131c\u0131 depolama sa\u011flamak i\u00e7in g\u00fc\u00e7l\u00fc bir \u00e7\u00f6z\u00fcmd\u00fcr. Doctl ise, bu depolama birimlerini komut sat\u0131r\u0131 \u00fczerinden y\u00f6netmek i\u00e7in vazge\u00e7ilmez bir ara\u00e7t\u0131r. Volume olu\u015fturmaktan snapshot almaya, yeniden boyutland\u0131rmaktan Droplet&#8217;lere ba\u011flamaya kadar t\u00fcm s\u00fcre\u00e7leri otomatikle\u015ftirebilme yetene\u011fi sayesinde, geli\u015ftiriciler ve sistem y\u00f6neticileri operasyonel verimlili\u011fi art\u0131rabilir, hata olas\u0131l\u0131\u011f\u0131n\u0131 azaltabilir ve daha \u00f6l\u00e7eklenebilir altyap\u0131lar kurabilirler.<\/p>\n<p>Bu rehber, Doctl&#8217;\u0131 kullanarak DigitalOcean Block Storage ile \u00e7al\u0131\u015fman\u0131n temel ad\u0131mlar\u0131n\u0131 ve geli\u015fmi\u015f senaryolar\u0131n\u0131 kapsaml\u0131 bir \u015fekilde ele alm\u0131\u015ft\u0131r. Doctl&#8217;\u0131n sa\u011flad\u0131\u011f\u0131 kolayl\u0131k ve otomasyon yetenekleri sayesinde, DigitalOcean&#8217;daki depolama ihtiya\u00e7lar\u0131n\u0131z\u0131 \u00e7ok daha etkin bir \u015fekilde y\u00f6netebilirsiniz. Unutmay\u0131n, herhangi bir kritik i\u015flem yapmadan \u00f6nce her zaman yedekleme yapman\u0131z ve \u00f6zellikle \u00fcretim ortamlar\u0131nda dikkatli olman\u0131z \u00f6nemlidir. DigitalOcean&#8217;\u0131n sundu\u011fu bu g\u00fc\u00e7l\u00fc ikiliyi kullanarak projelerinizi bir sonraki seviyeye ta\u015f\u0131y\u0131n!<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber\nGiri\u015f: Block Storage ve Doctl&#8217;\u0131n \u00d6nemi\nBulut bili\u015fim d\u00fcnyas\u0131nda, veri d","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1401],"tags":[],"class_list":{"0":"post-33267","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-git","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber\" \/>\n<meta property=\"og:description\" content=\"DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber Giri\u015f: Block Storage ve Doctl&#039;\u0131n \u00d6nemi Bulut bili\u015fim d\u00fcnyas\u0131nda, veri d\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-31T18:41:12+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"18 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber\",\"datePublished\":\"2025-10-31T18:41:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/\"},\"wordCount\":3192,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Git\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/\",\"name\":\"DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-10-31T18:41:12+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/","og_locale":"tr_TR","og_type":"article","og_title":"DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber","og_description":"DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber Giri\u015f: Block Storage ve Doctl'\u0131n \u00d6nemi Bulut bili\u015fim d\u00fcnyas\u0131nda, veri d","og_url":"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-10-31T18:41:12+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"18 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber","datePublished":"2025-10-31T18:41:12+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/"},"wordCount":3192,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Git"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/","url":"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/","name":"DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-10-31T18:41:12+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/digitalocean-block-storage-ile-doctl-kullanimi-kapsamli-bir-rehber\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"DigitalOcean Block Storage ile Doctl Kullan\u0131m\u0131: Kapsaml\u0131 Bir Rehber"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33267","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=33267"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33267\/revisions"}],"predecessor-version":[{"id":33268,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33267\/revisions\/33268"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=33267"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=33267"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=33267"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}