ablog

不器用で落着きのない技術者のメモ

2021-01-01から1年間の記事一覧

Recovery time will vary with the amount of data to be recovered

AWS

2016年4月19日 8:49:39 UTC+9 Recovery of the DB instance has started. Recovery time will vary with the amount of data to be recovered.(中略)RDS では、内部でDB ノードのモニタリングを行っておりますが、DB ノード等に問題が検知された場合は復旧…

S3 アクセスポイント経由と特定のIAMロールのみのアクセスを許可するバケットポリシー

AWS

S3 アクセスポイント経由と特定のIAMロールのみのアクセスを許可するバケットポリシーをメモ。 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "*", "Resource": [ "arn:aws:s3:::s3-bucket-name"…

CloudFormation で ElastiCache(Redis) をクラスターモード有効で作成する

AWS

Resources: # https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html RedisCluster: Type: AWS::ElastiCache::ReplicationGroup Properties: AutoMinorVersionUpgrade: true # enable Cluster Mo…

postgresql.conf で設定可能なパラメータ一覧を確認する方法

PostgreSQLの設定は多くの異なる方法で設定することができます。 しかし普通はpostgresql.confファイルで設定することになるでしょう。 固有のオプションはリリースごとに異なります。 使用中のPostgreSQLのsrc/backend/utils/misc/guc.cというソースコード…

Aurora PostgreSQL のリストア時間の計測

AWS

あくまで参考値ですが、ちょっと計測してみた。 準備 pgbench でデータを投入する $ pgbench -i -s 1000 -U awsuser -h aurora-postgres124.cluster-********.ap-northeast-1.rds.amazonaws.com -d postgres dropping old tables... creating tables... gene…

Aurora PostgreSQL の DR 対策

AWS

Aurora PostgreSQL–based DB clusters don't support Aurora Replicas in different AWS Regions. That means you can't configure your Aurora PostgreSQL DB cluster for cross-region replication. However, you can scale reads and achieve high availa…

Apache ab で Web サイトに負荷をかける

インストール $ sudo yum -y install httpd 負荷をかける $ ab -k -n 9000000 -c 1000 http://internal-alb-***-az5-app-********.ap-northeast-1.elb.amazonaws.com/

セキュリティグループ変更時に "ou may not specify a referenced group id for an existing IPv4 CIDR rule" と怒られる

AWS

エラーが出るケース セキュリティーグループのソースを変更するようなケースで、エラーが出ます。 例えば、ソースの設定を 0.0.0.0/0 のように設定していたセキュリティーグループで、ソースをセキュリティグループID(sg-xxxxxxxx)に変更するケースです。(E…

bash のヒアドキュメントで変数が展開されないようにする

ヒアドキュメントの中でも""で括った文字列リテラルと同様、 変数展開やコマンド置換が行われます。つまり$MY_VARや$(date)と書くといつもと同じように展開されます。これを抑止する(=''で括ったときのように扱う)にはEOSの部分を下記のようにクォートします…

Docker イメージを作成して、ECR に push する

AWS

EC2インスタンス(Amazon Linux 2)を作成して、Docker Image を作成して、ECR に push したメモ。 Docker をインストール/起動する $ sudo yum -y update $ sudo yum -y install docker $ sudo systemctl start docker Docker イメージを作成する $ mkdir …

MX ERGO MXTB1s の充電・Bluetooth接続・操作方法

新型トラックボールマウス・MX ERGO(MXTB1s)を購入したのでレビューします!使い心地最高!買って間違いナシ! | すまおじ.com

GitHub でコミットハッシュからコミットを探す

AWS

https://github.com/{owner}/{project}/commit/{hash} の {hash} にコミットハッシュを指定すればよい。例えば、 antirez in commit 2810de9f: Cluster: abort loading nodes data if vars arguments are unbalanced. 1 file changed, 1 insertion(+) https:…

ElastiCache(Redis)のフェイルオーバー時間

AWS

ElastiCache(Redis)を手動フェイルオーバーしたときの時間を計測してみたメモ。 構成 クラスターモード有効 1シャード x 2レプリカ = 3ノード ノードタイプ: r5.large 手順 EC2 で以下のスクリプトを実行する $ ruby redis-rb_sample.rb マネジメントコンソ…

ElastiCache(Redis) クラスターのシャード数とレプリカ数のベストプラクティス

AWS

2. Three-shard minimum Redis Cluster: Having a minimum of three shards provides improved availability by providing faster recovery during both planned and unplanned failovers. Amazon ElastiCache for Redis supports up to 500 total nodes in …

Glue Spark で出力ファイルサイズのサイズを大きくする

AWS

Glue Spark で出力ファイルサイズのサイズを大きくしたメモ。 サマリ 以下の2つの方法がある。 Glue カタログでデータソースの Table Properties で以下を指定する groupFiles: inPartition 入力ファイル数が 50,000 以下でもグループ化を有効にする groupSi…

Amazon Linux 2 に redis-rb をインストールして使ってみた

Amazon Linux 2 に redis-rb をインストールし、クラスターモードが有効な ElastiCache(Redis) に対して、Configuration エンドポイントを使ってアクセスしてみた。 インストール Amazon Linux 2 に rbenv をインストールする - ablog redis-rb をインストー…

Amazon Linux 2 に rbenv をインストールする

必要なパッケージをインストールする sudo yum install -y git gcc openssl-devel zlib-devel rbenv をダウンロードする git clone https://github.com/sstephenson/rbenv.git ~/.rbenv git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/p…

Redis の Ruby Client

AWS

Black Belt Online Seminar ElastiCache P.20 redis-rb ソースコード: GitHub - redis/redis-rb: A Ruby client library for Redis ElastiCache(Redis) クラスターの configuration エンドポイントに対応している。 そして、以下試した所いけた!嬉しかった…

ElastiCache(Redis) のレプリケーションラグを計測してみた

AWS

ドキュメントの説明 Q: アクティブなリードレプリカの状態はどのように把握できますか? デプロイ済みのすべてのキャッシュクラスター (リードレプリカを含む) のリストを取得するには、標準の DescribeCacheClusters API を使用するか、Amazon ElastiCache …

psql から Redshift に接続する際にメッセージを英語で出力する

AWS

以下の環境変数をセット後に、psql を実行するよとい。 export LC_ALL=C 実行例 $ psql "host=redshift-cluster-4.********.ap-northeast-1.redshift.amazonaws.com user=awsuser dbname=dev port=5439" psql (13.4、サーバ 8.0.2) SSL 接続 (プロトコル: TL…

Redshift で列レベルのアクセス制御を行う

AWS

Redshift で列レベルのアクセス制御を検証してみた。 Redshift に接続する psql "host=redshift-cluster-4.********.ap-northeast-1.redshift.amazonaws.com user=awsuser dbname=dev port=5439" テーブルを作成する CREATE TABLE customer ( c_custkey INTE…

bash で環境変数にセットせずにコマンドに渡す

bash で環境変数にセット(export)せずにコマンドに渡したメモ。 PG_CONCURRENCY=1 PG_TRAN=1 SQL_SCRIPT=sql/pg_database.sql ./redshift_exec_query.sh & 参考 bashで環境変数をexportせずにシェルスクリプトを実行したい場合はコマンドの前に記述するこ…

bash でシェル変数のデフォルト値をセッツ

bash でシェル変数のデフォルト値をセッツしたメモ。 PG_USER=${PG_USER:-awsuser} PG_DB=${PG_DB:-dev} PG_PORT=${PG_PORT:-5439} 参考 Bash: 変数のデフォルト値の定義は`${変数名:-初期値}`でやる - Qiita

ElastiCache(Redis) クラスターで手動フェイルオーバーを実行する

AWS

マネジメントコンソールでリストからクラスターを選択する リストからプライマリノードを選択し、[アクション]-[プライマリをフェイルオーバー]を選択する イベントで確認すると、フェイルオーバーに6分ほど要している 参考 ElastiCacheの手動フェイルオーバ…

Aurora PostgreSQL でインスタンスのクラッシュを発生させる

AWS

Aurora PostgreSQL で aurora_inject_crash() を使ってインスタンスをクラッシュさせてみたメモ。 障害挿入クエリ関数 aurora_inject_crash() を使用して、Aurora PostgreSQL インスタンスのクラッシュを強制的に発生させることができます。 この障害挿入ク…

Aurora PostgreSQL で Read Replica の Auto Scaling を設定する

AWS

Aurora PostgreSQL で Read Replica の Auto Scaling を設定したメモ。 設定 マネジメントコンソールで [RDS]-[データベース] でクラスターを選択する。 [ログとイベント]-[Auto Scaling ポリシー]-[追加] をクリックする。 Auto Scaling ポリシーの設定を入…

CloudFormation で ECS 作成時に " Please verify that the ECS service linked role exists." エラー

AWS

事象 CloudFormation で ECS クラスター作成時に以下のエラーが出る Unable to assume the service linked role. Please verify that the ECS service linked role exists. status code: 400, 原因 ECS Cluster 作成時に、自動的に AWSServiceRoleForECS ロ…

ELB のアクセスログ出力先の S3 バケットポリシー

AWS

Enable access logs for your Classic Load Balancer - Elastic Load Balancing

ElastiCache(Redis)のエンドポイント

AWS

クラスターモードが有効の場合は、ConfigurationEndpointを使う クラスターモードが無効の場合は、書き込みにはPrimaryEndpointを、読み込みにはReaderEndpointを使う 参考 Amazon ElastiCache for Redisのエンドポイントを確認してみる - Qiita

ElastiCache(Redis) のスケールアップ/アウト

AWS

スケールアップ/ダウン クラスターを選択して、[アクション]-[変更] から [ノードのタイプ] で変更する。 参考 単一ノードクラスターのスケーリングRedis (クラスターモードが無効) - Amazon ElastiCache for Redis オンライン垂直スケーリングを使用してAma…