/**
  * AutoScalingに使用するLaunchConfigurationを生成して返す
  * 既にconfigが三つ存在していた場合は古いものを削除してから生成を行う
  *
  * @return string
  **/
 private function _getLaunchConfiguration()
 {
     $configs = $this->as->getLaunchConfigurations();
     $versions = array();
     $base_name = 'ModernAdultMidnightCrawlerLaunchConfigVer';
     foreach ($configs['LaunchConfigurations'] as $config) {
         $name = $config['LaunchConfigurationName'];
         if (preg_match('/' . $base_name . '([0-9]+)/', $name, $matches)) {
             $versions[] = $matches[1];
         }
     }
     // 配列の昇順化
     asort($versions);
     // ModernAdultMidnightCrawlerLaunchConfigが三つ以上存在した場合は一番古いものを削除する
     if (count($versions) >= 3) {
         $config_name = $base_name . array_shift($versions);
         $this->as->deleteLaunchConfiguration($config_name);
     }
     // 生成したいLaunchConfiguration名を作る
     if (count($versions) == 0) {
         $config_name = $base_name . '1';
     } else {
         $ver = intval(array_pop($versions));
         $config_name = $base_name . strval($ver + 1);
     }
     // 新しいLaunchConfiguration生成
     $this->_createLaunchConfiguration($config_name);
     return $config_name;
 }