7
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

RedshiftのクエリとLoadをManagement Consoleからキャンセルする

Last updated at Posted at 2014-10-29

リリース

今日、Redshiftで実行されているクエリやLoad処理をManagement ConsoleからTerminateすることができるようになりました。
今までは、Redshiftクラスタにログインをして該当クエリを特定してcancelを実行する必要がありました。詳細は: http://docs.aws.amazon.com/ja_jp/redshift/latest/dg/cancel_query.html
これは非常に面倒で、クエリがつまりに詰まって、SuperUserキューでoperationを実行するしかないような場合は更にめんどくさい状態でした。特に、Redshiftのオペレーションとクエリ実行者が分かれている場合は尚更だったと思います。今までもManagement ConsoleからクエリやLoadの状態を閲覧することは可能でしたが、cancelはクラスタへのログインが必要でした。

試してみる

まずはManagement ConsoleにログインをしてRedshiftの画面をひらき、対象のクラスタを選択します。クラスタ詳細画面のQueriesかLoadsタブを開いてrunningになっていてcancelをしたいクエリを選択します。
target query

クエリを選択したら、画面上部のTerminate Queryを選択すると
terminate screen
確認画面がでるので、よければConfirmをクリックするとcancelが実行されます。クリックしてから実際にクエリがcancelするまで少しラグがありますが、これで操作は完了です。

Terminateが成功すると
terminated query
のようにStatusがterminatedに変更になります。

また、クエリ詳細画面からもTerminate可能です。
Screen Shot 2014-10-29 at 2.30.02 PM.png

Loadsタブ内での操作も同様です。

IAM

AWSのサービスはIAMと呼ばれるアクセス制限の機能によって細かく操作の許可・拒否を選択することが出来ますが、RedshiftもIAMで機能の制限が可能です。
Redshiftクラスタ自体の管理をIAMユーザを作成しオペレーションチームに任せたいという場合などに便利かと思います。
今回のリリースでIAM Policy Actionでredshift:CancelQuerySessionが追加になりました。参考: http://docs.aws.amazon.com/redshift/latest/mgmt/iam-redshift-user-mgmt.html

指定されていないユーザでクエリのTerminateを行おうとすると
restricted by IAM
の様にエラーが出ます。

Redshiftクラスタの状態管理(主にReadonly)とクエリのTerminate権限をつけたIAM Policyは

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "redshift:Describe*",
        "redshift:ViewQueriesInConsole",
        "redshift:CancelQuerySession",
        "ec2:DescribeAccountAttributes",
        "ec2:DescribeAvailabilityZones",
        "ec2:DescribeSecurityGroups",
        "ec2:DescribeSubnets",
        "ec2:DescribeVpcs",
        "ec2:DescribeInternetGateways",
        "sns:Get*",
        "sns:List*",
        "cloudwatch:Describe*",
        "cloudwatch:List*",
        "cloudwatch:Get*"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}

の様になります。

まとめ

今回のリリースでほとんどの操作がManegement Consoleで実行出来るようになり、管理の手間が更に軽減されたと思います。
IAMも追加されていたりするので、新機能のリリースの際は是非一緒に御覧ください。

こちらは個人の意見で会社とは関係ありません。お約束です。

7
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?