サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
衆院選
iret.media
導入 本記事では以下を記載します。 「VPCとAWSサービス間の接続」や「VPCと外部との接続(PrivateLink使用可能)」において、 VPCエンドポイントを使用するべきか、もしくはNAT Gatewayを使用するべきかを セキュリティ面と費用面から比較してみます。 セキュリティ面 VPCエンドポイント VPCエンドポイントを使用すると、VPCとAWSサービス間の通信をインターネットを経由せずに直接接続することができます。 最近はVPCエンドポイントを用いて接続できるSaaSも増えてきています。 外形監視のNew Relicも一部リージョンでPrivateLinkによるサービスが開始されました(※東京リージョンは対象外)。 https://docs.newrelic.com/jp/docs/data-apis/custom-data/aws-privatelink/ PrivateL
この記事は「もくもく会ブログリレー」 18日目の記事です。 AWS CloudFormation IaC ジェネレーターは、既存のAWSリソースをCloudFormationやCDKのコードにすることができる機能です。 【AWS公式】既存のリソースのテンプレートを生成(IaC ジェネレーター) 既存のリソースをコード化したいというケースはよくあるので、とても便利な機能でありますが、現状では生成されたコードの修正が必要なパターンが多いです。 この記事ではその修正内容に焦点を当てて記述します。そのため、どこをどう直せばデプロイできたのか?という点が把握できるので、IaCジェネレーターの精度をより強く体感できるかと思います。導入前など、実際に使ってみる前の参考にしてください。 検証 デプロイする環境 EC2にパブリックでSSH接続できるだけの単純な環境です。 検証の流れ 検証は以下のような流れで
みなさん、CRUD はご存知でしょうか? Web エンジニアの方なら、学習を始めた最初の頃から聴き馴染みのある言葉だったりするかなと思います。 Create, Read, Update, Delete の頭文字をとったもので、データ操作の 4 つの基本操作です。 例えば RESTful API の場合、下の画像のように HTTP メソッドを対応させて CRUD を表現するのが一般的です。 しかし、CRUD の中で R とそれ以外ではかなり特性が違います。 UI で想像していただければと思うのですが、Read は一覧画面や詳細画面であり、頻繁に呼び出されます。また、多くの場合リクエストごとに挙動が変わるわけではないので、キャッシュが有効です。フィルターや検索もよく使われます。 一方の Create, Update, Delete では、トランザクションが重要視されます。また、アプリケーション
AWS Summit Japan 2024 Day1の「大規模クラウドインフラ設計・構築案件の歩き方」のセッションについてレポートです。 控えめに言っても満足度の高いセッションでした。 大規模なクラウドインフラの設計構築運用に関わる方なら首がもげるくらい頷きが多い内容であり、アーカイブが公開された際はもう一度見たいと思うほど…。 セッションの内容には「設計書の一覧サンプル」や、「アプリ/インフラチームの責任分界」といった界隈でも関心が高い内容に触れられています。 考え方のひとつとして参考にしていきたい内容がモリモリでしたので、シェアさせていただきます。 セッション概要 大規模クラウドインフラ設計・構築案件の歩き方 Level 300: 中級者向け スピーカー: アマゾン ウェブ サービス ジャパン合同会社 仲谷 岳志 様 クラウド技術のコモディティ化により、エンタープライズ分野では近年、A
はじめに AWSをはじめとしたクラウドサービスは基本的には従量制料金となり、使った分だけ料金が発生します。 使い慣れていないサービスなどを利用する際、クラウドという便利な特性上意識外なコストが発生することも。 特に個人で使っているアカウントなどではこのあたりが「不安」という声をよく聞きます。 そんな不安を軽減できるサービスとその使い方を本記事では紹介します。 登場サービス AWS Pricing Calculator AWS Budgets AWS Cost Explorer あると便利 AWS SNS 各サービスの考え方 上記のような形で利用するのが理想ですが、 とりあえず難しいことは置いといてAWS使ってみたいという方はまずBudgetsの設定をしておきましょう。 Budgetsは、利用コストに対してしきい値を設定しておくことができ、想定以上のコスト発生を検知することができます。 任意
この記事について みなさん、ECS利用していますか!? AWSでコンテナを使うのなら、ECSですよね!?(kubernetesわからない勢) ECSはタスクという単位で、アプリケーションを実行させます。 そして、タスクの中にコンテナが1つ以上稼働します。 タスクはタスク定義から作成されます。タスク定義はタスクの金型的な存在です。 また、タスク定義はJSONファイル(以後taskdef.json)として運用することが一般的です。 このtaskdef.jsonを実運用する際に迷うポイントがあります。 それは以下のどちらの方法にするかです。 – 方法① : 各環境ごとにtaskdef.jsonを用意する – 方法② : 各環境でtaskdef.jsonを共用する ①,②について、それぞれの詳細/メリット・デメリットについて洗い出しをして、どちらを採用すべきかについての見解を述べていきます。 あく
はじめに 2022年4月に一般提供が開始されたLambda Function URLsには「APIGatewayやALBなしで、Lambdaを使ったAPIを作成できるだと・・・」と驚かされた方も多いんじゃないでしょうか。かくいう私もその一人です。 簡易なAPIを作成するには便利なLambda Function URLsですが、認証タイプの選択には注意が必要です。 他のAWSサービスからAPIを実行するような場合はAWS_IAMが使えますが、パブリックに公開し、一般ユーザにAPIの実行を許可する場合はNONEを選択する形になります。 NONEを選択した場合、エンドポイントを知っているユーザであれば、誰でもAPI(Lambda)の実行が可能です。 その為、そのままだとL7の攻撃に対して無防備になってしまいます(L4までの攻撃はAWS Shieldが防いでくれる)。Lambdaのコード内で何かし
本日の Google Data Cloud & AI Summit にて BigQuery に対する超有益なアップデートが発表されました! 価格体系の変更について、有効的に活用すればコストの最適化ができるものになります。 ヘビーユーザーは当然のこと、ライトユーザーやこれから検証のために少し触ってみたいような方々に向け、 おさらいも交えながら説明をさせていただきたいと思います。 また、弊社内で実際に利用している BigQuery のデータセットに対し、今回の変更でコストがどのように最適化できるのかも紹介させていただきます。 価格体系の変更 まずは、おさらいとして BigQuery の価格体系を解説します。 BigQuery のアーキテクチャはストレージとコンピューティングに分離されています。伴って、BigQuery の料金は、Storage pricing(ストレージ料金)と呼ばれるストレー
こんにちは。アイレットデザイン事業部のマークアップ/フロントエンドエンジニアの工藤です。アイレットデザイン事業部ではINSIDE UI/UXと題して、所属デザイナーとエンジニアがデザイン・SEO・アクセシビリティ・UI/UXなどそれぞれスペシャリティのある領域に対する知見を幅広く発信しています。 さて、今回は管理が比較的難しく、また軽量化が難しいCSSをリファクタリングする方法について書いていきます。 CSSは技術的負債が発生しやすい言語である CSSはwebサイトの見た目/スタイルを定義するシンプルな言語です。しかし、そのシンプルさゆえに技術的負債が発生しやすい言語であるとも言えます。 なぜでしょうか?それはCSSのCascading(下方階層式)な特性にあります。つまりCSSファイルの一部にレイアウト崩れを引き起こす間違った記述があったとしても、より高い詳細度を設定するか、同一ファイル
最近になって React + TypeScript に入門したので、自分へのメモがてら、基本的なことをまとめてみました。 前提 TypeScript 初心者です。間違いや違和感等々ありましたらコメントで教えていただけると助かります。 JavaScript・React はある程度理解していることが前提です。 TypeScript・React の環境構築やtsconfig.jsonの設定には触れません。 TypeScipt の基礎 「明示的な型定義」と「型推論」 TypeScript の型定義には明示的な型定義と型推論があります。 明示的な型定義は人間が型を指定するのに対し、型推論は TypeScript がいい感じに型を推論してくれます。 実際のコーディングでは型推論を使いつつ、必要な時だけ明示的な型定義をすればいいと思いますが、この記事では型の理解を手助けするために明示的な型定義を使用して
クラウドインテグレーション事業部セキュリティセクションの青池です。 なんやかんやで半年ほど禁酒しています。 健康診断の結果がどう変わっているのか楽しみです。 この記事は、iretスペシャリストによるブログリレーキャンペーン「iretスペシャリストからの挑戦状」の第5弾です。 iretのスペシャリスト認定制度についてはiretスペシャリスト認定制度をご覧ください。 私のインタビュー記事はコチラになります。 はじめに 突然ですが、皆さんは管理しているAWSアカウントの脅威対策をおこなっていますか? クラウド環境は権限があれば誰でも自由に地理的に離れた場所にサーバーを用意したり、設定を変更したりといった操作を簡単に行う事ができます。 しかし、なんとなく行った設定が情報漏えいの危険やアカウントの不正利用に繋がる可能性があることは理解されていても細かく監視していないケースを見かけます。 リスクに気づ
この記事の要約 webページのアクセシビリティを向上する観点とその方法を紹介しています。本稿では特にデザイン段階に注目し、テキストのサイズやコントラスト比の適切な出し方をまとめました。ちょっとした工夫の積み重ねで誰もが使いやすいwebサイトを作れるようになりましょう! 本文 こんにちは。アイレットデザイン事業部のマークアップ/フロントエンドエンジニアの工藤です。アイレットデザイン事業部ではINSIDE UI/UXと題して、所属デザイナーとエンジニアがデザイン・SEO・アクセシビリティ・UI/UXなどそれぞれスペシャリティのある領域に対する知見を幅広く発信しています。 前回記事に引き続き今回は2021年1月に行ったiretコーポレートサイトのリニューアルによって、Lighthouseのアクセシビリティ監査項目で100点を取ることができたので、どのようにアクセシビリティを向上したかを記事にした
シンジです。クラウドサービスに必要な物は、インターネット・アカウント名・パスワードですが、アカウント名とパスワードが漏れたら確実に死ぬと考えて良いです。AWSも例外ではありませんが、AWSのサービスをうまく活用することで回避出来る部分もあります。今回はその設定方法と、設定することでのデメリットを書きます。 その1 多要素認証を設定せよ MFAとも言います。2要素認証とも言います。これには様々な方法があるのですが、オススメはiPod や iPhoneなどのスマホを使った方法です。認証用の専用アプリをダウンロードする必要があるのですが、シンジのオススメは2つ。 二要素認証(二段階認証)用無料アプリ「IIJ SmartKey」 http://www.iij.ad.jp/smartkey/ Google Authenticatorを App Store で https://itunes.apple
はじめに まれにですが、aws-cliはあるのにjqが使えないという環境があります。 jqをいれればよいではないかという指摘はもっともなのですが、そうもいかない場合があるので、そんなときに使えるjp.pyを説明します。 JAWSUG CLI支部 のテキストで知りました。 JMESPathとjp.py について JSON用のクエリ言語 JMESPathのpython実装がjp.pyです。 JMESPathは aws-cliの query オプションでも利用できます。 jp.pyはaws-cliをインストールすると一緒にインストールされ、かつ、単体のコマンドで実行可能な点が嬉しいです。 JMESPathについては チュートリアル(英語)も参考になります。 jqと目的は一緒ですが、言語が違います。 使い方 aws-cliで取得したインスタンス一覧から、jp.pyでインスタンスIDを取得します。
各リージョンの各サービスを個別に確認しなくても、全てのリソースをリストアップすることができます。 AWSアカウント解約時に、不要なアクティブリソースが残っていないかの確認にも役立つかもしれません。 AWS アカウントを解約したときに、アクティブなリソースがすべて自動的に終了されるとは限りません。アカウントを解約する前に、アクティブなリソースがあるかどうかを確認し、それらを終了することがベストプラクティスです。 get-resources.sh for region in `aws ec2 describe-regions --query 'Regions[].RegionName' --region us-west-1 --output text` do echo "region = ${region}" aws resourcegroupstaggingapi get-resources
概要 NRQLアラートで監視し、通知する方法をまとめる。 NRQLとは 以下参照。 https://cloudpack.media/54425 NRQLアラートとは New Relicアラートの種類の一つで、NRQLで対象のメトリクスを定義できる。 https://docs.newrelic.co.jp/docs/alerts-applied-intelligence/new-relic-alerts/alert-conditions/create-nrql-alert-conditions メリット 汎用的なNRQLを使うため、インフラ監視だけでなく、外形監視、APM、使用量などあらゆるアラートをNRQLアラート一つで作成できる。 FACET句を使えば、任意のメタ情報を含めてアラートを飛ばすことができる。 New Relic側としてもNRQLアラートの使用を推奨している デメリット NR
はじめに Qiitaにこんな記事が上がりました 2020年現在のNewSQLについて – Qiita NewSQLについてアーキテクチャから詳しくまとまっていて 理解しやすい素晴らしい記事だと思います。 社内のSlackでも共有したのですが、 この辺の話は 古くからあるモノリシックなRDBMSが生まれて スケールアップの限界との戦い データベースをどうスケールアウトするかの時代が訪れて、 分散コンピューティングの問題にぶち当たる という、 『歴史を理解してはじめてCloud Spannerの凄さを理解できる』 と思ったので もっと補足説明がいるんじゃないかと思い、社内でLTしました。 また、自分はDataBase周りの知識が弱いと思っているので、 補強のためにもまとめてLTを…とおもったら、 前後編で2回に分けて30分語るという発表だったので、 もう講義じゃんって言われたし思いました。 W
API Gateway(プライベート)にVPC Endpointを使った構成を作る時のポイントまとめ 1. 概要 2. API Gatewayをプライベートタイプで使用する時の落とし穴 3. 結論は 4. API GatewayとVPC Endpointの正しい使い方 — 4.1. パターン1:API Gateway(Public) + VPC Endpointなし — 4.2. パターン2:API Gateway(Public) + VPC Endpointあり — 4.3. パターン3:API Gateway(Private) + VPC Endpointあり + Private DNS有効化設定 — 4.4. パターン4:API Gateway(Private) + VPC Endpointあり + Private DNS無効化設定 5. 参考資料 概要 今回、API Gateway
説明 AWSアカウント上で、Route53に登録済みのドメイン全てのレコード情報をテキスト表示させるワンライナーです。 python-botoに含まれるroute53コマンドとAWS CLIで実現させています。 for zoneid in `aws route53 list-hosted-zones|jq -r '.HostedZones[]|.Id'|awk -F"/" '{print $NF}'` do echo ------- domainname=`aws route53 get-hosted-zone --id $zoneid|jq -r '.HostedZone.Name'` echo "<>" route53 get $zoneid done ※route53コマンドはpython-botoをインストールすると含まれています。 実行例 $ for zoneid in `aws
追記 各モジュールの動作確認には以下のようなシェルスクリプトを作って行うと捗る。こちら参考になりました。ありがとうございます。 #!/bin/sh rm -rf /var/lib/cloud/* cloud-init init --local cloud-init init cloud-init modules --mode config cloud-init modules --mode final まず、/var/lib/cloud/ 以下をバサッと消す。その後で… cloud-init init --local cloud-init init cloud-init modules --mode config cloud-init modules --mode final を実行する。これは /etc/rc3.d/ 以下の起動スクリプトの順番に準拠している。 [root@centos-
Nginx+nginx-rtmp-moduleのインストール編 関連パッケージインストール # yum -y install git gcc pcre-devel openssl-devel 任意の作業ディレクトリを作成 今回は、/root/works になります。 # mkdir works Nginxダウンロード & Nginx展開 こちらで環境に合ったバージョンをダウンロード # cd ~/works/ # wget https://nginx.org/download/nginx-1.14.0.tar.gz # tar zxvf nginx-1.14.0.tar.gz nginx-rtmp-moduleをインストール 使用するモジュールは、NGINX-based Media Streaming Server MPEG-DASHとHLS対応のモジュールをクローン # cd nginx
使っていた端末の調子が悪くなって端末交換したので、開発環境構築のお時間です。 できるだけ簡単に旧端末の設定を引き継ぎつつセットアップしたかったので、いろいろと調べてまとめてみたら、1コマンドでできるようになりました。(準備は含めず) 旧端末を環境構築したときとだいぶ変わりました。 5分でできるMacBook Proに最低限の開発環境構築 – Qiita https://cloudpack.media/42029 手順 ターミナルを立ち上げて、 > sh -c "$(curl -fsSL https://gist.githubusercontent.com/<GitHub UserID>/<Gist ID>/raw)" おーかんたん。これで必要なアプリがだいたいインストールされます。 ※コマンド実行中、パスワードを求められることがあります。 何をしているのか? セットアップに必要なコマンドを
10月で入社して半年が経ちました、streampackチームのminsuです。 いきなり寒くなってきて秋を感じますね、春に東京に引っ越してきた私はまだ冬服を揃えてないのでもう少し緩やかに気温が変化して欲しかったです。 今回の記事は先日API Gateway + Lambdaを触ることがあったため、自分用にまとめたものです。 /{foo}/{bar}のようなパスパラメータやGET,POSTパラメータを渡そうとしたところ、 マッピングテンプレートを設定する方法もありますがLambdaプロキシ統合を使うとよしなに設定してくれて楽でした。 Lambda 関数の作成 Lambda関数を作成します。 関数名はparams-testとしました。 アクセス権限は用途に沿って設定してください。 API Gateway 作成 APIの作成から API を作成します、API名はURLに反映されません。 リソース
初心者がハマるNATゲートウェイの落とし穴 1. 概要 2. NATゲートウェイの構築 — 2.1. EIPの作成 — 2.2. NATゲートウェイの作成 — 2.3. NATゲートウェイの冗長構成 — 2.4. ルートテーブルの編集 3. NATゲートウェイの制約 — 3.1. 帯域幅の制限 — 3.2. NATゲートウェイとセキュリティグループ — 3.3. NATゲートウェイとIPv6使用環境 概要 NAT(Network Address Translation)はIPアドレスを変換する技術であり、インターネットにアクセスする際、プライベートからパブリックのIPアドレス変換に使われ、知らぬ間に恩恵を受けていますね。 今回は多くの方が利用するAWSのNATゲートウェイについて、意外と知られていないハマるポイントを(自分の失敗談含めて)ご紹介します。 NATゲートウェイの構築 EIPの作
各部品の接続 接続図 上記接続の通り各部品を接続していきます。 CO2センサー(mh-z19)接続 CO2センサーを接続し動作確認を行います。 uartの有効化 /boot/config.txtに以下を追加してraspberry piを再起動する enable_uart=1 モジュールのインストール pip install getrpimodel 接続確認 以下のプログラムを適当な名前で保存し実行します。 import sys import serial import time import subprocess import getrpimodel import datetime from time import sleep import RPi.GPIO as GPIO if getrpimodel.model() == "3 Model B": serial_dev = '/dev/
1. 概要 — 1.1. はじめに — 1.2. Direct Connect とは 2. Direct Connect を使ったシステムの構成図 3. Direct Connect (DX)の構築方法 — 3.1. 接続の設定 — 3.2. 仮想プライベートゲートウェイ(VGW)の設定 — 3.3. 仮想インターフェイス(VIF)の設定 — 3.4. BGPステータスのUp 4. VPC の設定変更 — 4.1. ルートテーブルの設定 — 4.2. セキュリティグループの設定 5. 疎通確認 6. 参考資料 概要 はじめに 今回、初めてDirect Connect を使ったシステムを担当させて頂きました。これまで名前しか知らなかった製品に触れ、新しいことを覚える機会は喜びです。Direct Connect のナレッジは検索すればいくつも情報は見つかりますが、初見だと用語が分からず、次に自
1. 概要 — 1.1. はじめに — 1.2. 前提条件 2. パケットキャプチャの方法 — 2.1. tcpdumpコマンドによるパケットキャプチャ — 2.2. scp or sftpによるダンプファイルのダウンロード 全文はこちら 概要 はじめに 今回は、サーバーを通過するhttps通信のパケットをキャプチャして調査を開始するまでの流れを説明します。 パケットキャプチャには、メジャーなLinuxのtcpdumpコマンドを使用します。tcpdumpコマンドによって取得したダンプの調査は、WindowsクライアントにインストールしたWiresharkを使用します。 前提条件 ネットワーク上で発生したトラブルシューティングの初心者向けにまとめます。 AWSのVPC内に設置したリバースプロキシ(EC2)→ ALB → ウェブサーバー構成があり、今回はリバースプロキシにてtcpdumpを取得
どうも、若松です。 前回はDockerでLaravelを起動するまでをまとめました。 https://cloudpack.media/48184 しかしながら、現在のコンテナイメージはお世辞にも軽量とは言えません。 コンテナイメージサイズはコンテナ起動時間に直結するため、できるだけ軽量化していきたいと思います。 Dockerfile FROM amazonlinux:2 as vender # PHPインストール RUN amazon-linux-extras install -y php7.3 RUN yum install -y php-pecl-zip php-mbstring php-dom # Composerインストール RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" R
CLIで操作できると捗ります。 CLIとは CLIのススメ – Qiita https://qiita.com/Happa8/items/17957168c3440b55a0cb Twitterが捗る sferik/t: A command-line power tool for Twitter. https://github.com/sferik/t > ruby -v ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-darwin18] > gem install t # Twitterアプリの登録をしてキーを取得する > open https://apps.twitter.com/app/new # アプリキーとか設定 > t authorize > t update "捗る" > t search timeline "捗る" Slac
次のページ
このページを最初にブックマークしてみませんか?
『iret.media | クラウドを使って、もっと世界を楽しくしたい。クラウドの活用方法か...』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く