Tagbangers Blog

Blog

EKS クラスターのバージョンアップに失敗した(1.15 → 1.17)

はじめに Kubernetes はおよそ 3 か月ごとにリリースされており、各マイナーバージョンは最初にリリースされてから約 9 か月間サポートされます。 また、現在(2020/08/13) Amazon EKS で新しいクラスターで利用する際には以下のバージョンで作成できます。 1.17.6 1.16.8 1.15.11 AWSとしても、クラスターをタイムリーに更新することをお勧めしているのでバージョンアップしようと思います。 Kubernetes 1.16 にアップグレードにするための前提条件 を確認し特に問題なさそうなので、1.15 → 1.17 でバージョンアップします。(といっても飛...

Amazon Aurora MySQL でのフェイルオーバーを利用したインスタンスの切り替え

こんにちは!山﨑です! Amazon Aurora MySQL を利用されている場合に、自発的にフェイルオーバーを行う事で、 RDSに接続できない時間を抑えつつインスタンスの切り替えをする方法を試したのでメモです! まずは、インスタンスではなくクラスター側の DB 識別子 を選択し、「アクション」→「リーダーの追加」 追加する リードレプリカの仕様を入力していきます。 リードレプリカが作成されたら、プライマリに設定されているインスタンスを選択し、 「アクション」→「フェイルオーバー」を選択すると、「ステータス」欄が「Failing-over」という青字表記になります。 今回は、体感で 20 秒...

awsp を使って awscli で使用する profile を手軽に切り替える

今日はコマンドラインでの作業効率をあげるための便利ツール、awsp の紹介です。 タグバンではこの頃、AWSのログイン方法を、AWS Single Sign-On に統一しました。 ログイン先としては、AWS Organizations で管理しているお客さんのアカウントや各社員に配布している検証用(sandbox)アカウントです。 管理者目線では、認証の有効期限の設定や、ユーザーの権限の制御を一元管理できて便利です。 一方で利用者目線としては SSO で認証後に、以下のような方法で複数のアカウントを切り替えて作業する際には手間に感じることもありました。 作業シェルごとに使用するアカウントの環...

Elasticsearch Service へのリクエストがタイムアウトする問題を特定する

概要 この記事では、Elasticsearch Service を使用している Webアプリケーションにて発生した、Elasticsearch へのリクエストを完了できずタイムアウトする問題の原因を特定するために、CloudWatch Logs へスローログをパブリッシュするよう設定したことを紹介します。 問題 Web アプリケーションにて、データ照会画面や検索機能など、Elasticsearch Service へリクエストが発生する機能において、HTTP 502: Bad Gateway が発生しました。 Web アプリケーションログには、Elasticsearch への POST、または...

Rustを始めるための準備

Rust ツールチェインのインストール curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh rustupがインストールされます。rustupはRustのインストーラというだけでなく、一連のツールの管理も行ってくれるものです。 % source ~/.cargo/env % rustc --version rustc 1.44.0 (49cae5576 2020-06-01) rustup show を実行すると以下のようにインストールされているツールチェインを確認できます。 % rustup show Defaul...

Chrome 83 安定版について気になった事

みなさんこんにちはこんばんはおはようございます。 最近自宅勤務が板についてきた方の山﨑です。 コロナの影響で Chrome 82 が スキップされた世の中ですが、 5月19日に Chrome 83 がリリースされました。 というわけで今回は 83 で追加された機能から面白そうなものをいくつかピックアップしようと思います。 | 視覚障がいをエミュレート 視覚障がいというと、結構稀なケースに対応したもんだと思われるかもしれません。 でもでも、目薬で有名な参天製薬さんのサイトによると男性の 5% はなにかしらの色覚異常を持っているようです。 20人に1人ぐらいの割合だと、案外無視できない数字かなと思...

Atatus を試してみる

Atatus とは? Atatus はフロントエンド、バックエンド、インフラで起きている出来事をモニタリングするためのサービスです。 APM だと New Relic や Elastic APM などがありますが、今回はフロントで起きている出来事を監視するための `Browser Monitoring` を試してみました。 とりあえず試したいので、Free trial でアカウントを作成すると、歓迎されました。 冒頭でも触れた通り、 Browser、APM、 Infrastructure のメニューが表示されます。 今回は フロント の監視を行いたいので、 Browser を選択します。 次に...

Terraformで管理するリソースを手動で変更してしまった時の対処(terraform import)

本日は、Terraformを使っていて、tfstateと実際のリソースに差分が生じてしまった際の修正方法を紹介します。 稼働中で作り直しができないリソースなので、tfstateに手動で変更した状態を取り込むことにしました。 起きたことと、解決までの流れは以下のようになります。 terraform plan を実行すると予期せぬ差分(.tf に記述していない)が発生 Manegement Consoleと .tf ファイルを比較し、terraformで管理するリソースに手動で変更が加わっていることを特定 Management Console側のリソースを、 terraform import で ...

AWS Cloud9 が使えるものなのか試したい

なぜ Cloud IDE を使いたいのか。 コロナによる自粛のため、タグバンガーズでもリモートワークを行っています。 リモートワークでの問題の一つにコミュニケーションの取りづらさがあります。 隣にいるのとはやはり違いますよね。。 そこじゃなくて”ここ”みたいなことを画面越しにやるのは結構面倒です。 共同編集が出来る Cloud IDE であればその問題も多少軽減されるのでは? ということで触ってみて使えるのかどうか見てみましょう。 AWS Cloud9 Cloud9 は東京リージョンにも対応しています。 2019年4月には対応していたので1年以上前ですね。 Getting Started があ...

aws-auth(configmap)にSSOのrolearnを足す際の注意点!

今回は、EKSクラスターを操作する権限を付与する際に編集するConfigMapである、 aws-authの設定に関する注意点を共有したいと思います! 本題に入る前に、いくつか前提となる知識の説明です。 ※EKSのversion $ aws eks describe-cluster --name cluster-name --region ap-northeast-1 | jq '.cluster["version"]' -r 1.15 ConfigMapについて A ConfigMap is an API object used to store non-confidential data ...