EBS RAID для ускорения работы и экономического эффекта

    Привет! image

    Вчера я написал статью о производительности EBS. Оказалось, что наиболее производительным будет RAID 10 из EBSoв. Помимо того, что RAID быстрее, это ещё и экономически более выгодно. Минимальная стоимость в месяц EBS диска с 2000 IOPS (минимальный размер 200 GB)

    200 * $0.125 + 2000 * $0.10 = $225

    Тот же объём информации в 200 GB в RAID10, состоящий из 8 стандартных EBS по 50 GB:

    8 * (50 * $0.10) = $40

    Исходя из расчётов, RAID дешевле более чем в пять с половиной раз.

    Как же создать такой RAID 10 быстро?

    Установите CLI. И запустите команду:
    $ for x in {1..8}; do \
                aws ec2 attach-volume --instance-id  i-0000000 --device /dev/sdr${x} \ 
                           --volume-id `aws ec2 create-volume --availability-zone us-east-1d --size 50 | \
                                  grep vol-  | awk -F '"' {'print $4'}`; \
                done
    

    Instance-ID и AZ подставьте свой.

    Далее на сервере выполните команду:
    # mdadm --create -l10 -n8 /dev/md1 /dev/sdr*
            mdadm: Defaulting to version 1.2 metadata
            mdadm: array /dev/md1 started.
    

    В fdisk появится что-то типа:
    Disk /dev/md1: 214.7 GB, 214742073344 bytes
    2 heads, 4 sectors/track, 52427264 cylinders
    Units = cylinders of 8 * 512 = 4096 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 524288 bytes / 2097152 bytes
    Disk identifier: 0x00000000
    

    Вот и всё, создавайте разделы, форматируйте и пользуйтесь! Да… это софтовый RAID, посему напряг на ресурсы процессора вы должны закладывать отдельно.
    • +11
    • 3.8k
    • 7
    EPAM
    405.41
    Компания для карьерного и профессионального роста
    Share post

    Comments 7

      +2
      korjik — если не сложно — то можете запустить прогон системы в виде нагрузки на дисковую подсистему в течении 24 или 48 часов и замерить IOPS за это время. Насколько Я знаю — IOPS у Amazon дисков меняется под действием времени, и поэтому было-бы очень кстати — привести эти цифры — и дальше вывести среднюю.
      P.S. хотя конечно это не фундаментальное исследования — но хотя-бы будут реальные цифры… ИМХО.
        0
        Не сложно, если будет время — займусь.
          0
          iops у Amazon дисков меняется под действием времени непредсказуемо, как в течении суток, так и в течении месяцев и лет, в фундаментальных исследованиях нет никакого смысла
          +1
          Этот вопрос неоднозначный. Обычный EBS в рейде работать будет нестабильно, диски в рейдах вылетать будут, периодически какие-то невероятные лаги на дисках. В итоге, трахотни с обычным EBS очень много.

          P.S. У нас 32 терабайта на EBS. Переходим на PIOPS постепенно.
            0
            Производительность обычных ebs в пиках нагрузки на ebs стореджи амазона может снижаться до единиц и десятков iops. Производительность даже 8 дисков будет варьироваться очень сильно. 10 iops в течении нескольких минут — это нормальная ситауция. Диски часто вообще останавливаются и система ждёт операций io по нескольку секунд. Если в таком рэйде будет проблема с одним диском, то это отразится на всём массиве.

            2000 piops это просто нереальная скорость, попробуйте получить столько на простом ssd, особенно по записи. Я вот не знаю точно как это сделать, рэйд из ssd? Нагруженной базе данных будет вполне достаточно нескольких сотен piops. Конкретный пример: 500 piops, при этом средний процент utilisation 10%.

            Обычные диски не позволят достичь хорошего availability для сервиса. Только если делать raid10 (цена х2). Но линуксовый рэйд не умеет определять диски как failed в таких случаях, когда они тормозят в амазоне и их придётся выключать вручную. И даже raid10 не позволит бороться со всеми проблемами.

            В общем:
            1) Не в 5 раз дороже.
            2) На обычных ebs невозможно сделать хороший аптайм для хоть сколько-нибудь нагруженной базы.
              0
              А если использовать инстанс RDS, а не городить свою обвязку для СУБД?
              +1
              Вы ещё забыли посчитать стоимость io операций на обычных EBS.

              Only users with full accounts can post comments. Log in, please.