Q: Amazon ElastiCache とは何ですか? Amazon ElastiCache は、Memcached または Redis OSS プロトコルに準拠したキャッシュのクラウドへのデプロイと実行を効率化するウェブサービスです。ElastiCache は、低速なディスクベースのシステムに依存する代わりに、高速で管理されたインメモリシステムから情報を取得できるようにすることで、アプリケーションのパフォーマンスを向上させます。このサービスによって、インメモリ環境の管理、監視、操作がシンプルになり、負荷が軽減されるため、エンジニアリングリソースをアプリケーション開発に集中させることができます。ElastiCache を使用することで、ユーザーアクションやクエリの読み込みと応答の時間を改善でき、さらにウェブアプリケーションの縮小や拡張に関連したコストも削減できます。 ElastiCac
こんにちは。大阪の市田です。 今回は、下記のブログの内容を元に、踏み台サーバ経由のSSHセッションを記録する方法をご紹介します。 How to Record SSH Sessions Established Through a Bastion Host | AWS Security Blog 尚、踏み台サーバはAmazon Linuxを想定しています。 ポイント この記事のポイントは下記です。 OpenSSHの設定の修正 scriptコマンドの利用 踏み台サーバユーザの権限制限 ログファイルのS3保管 S3による踏み台サーバユーザの自動管理 SSHのエージェントフォワード利用 CloudFormationで環境構築 それでは順に説明していきたいと思います。 構成 想定の構成は下記の通りです。 ログファイルのディレクトリ作成 まずは、踏み台サーバにログの保存ディレクトリを作成し、アクセス制限
Write Concern レプリカセットに書き込まれたデータの完全性を保証する上で、考慮すべきパラメータにWrite Concern(書き込み保証)があります。プライマリノードに書き込まれたデータはセカンダリに同期されますが、同期が完了するまでの間に障害が発生するとデータが失われるリスクがあります。そこで、書き込まれたデータが何台のノードまで同期した時点でAckを応答するか、クライアント側で指定することが可能になっています。そのパラメータがWrite Concernです。 以下の図のように、何台のノードまで同期したかを指定してデータを書き込みます。 w = 0:クライアントは応答を待ちません。 w = 1:1台のノード(=プライマリ)への書き込みが完了した時点で応答を返します。 w = 2:2台のノードへ書き込みが完了した時点で応答を返します。 w = majority:過半数のノードに
こんにちは、菊池です。 MongoDB の大きな特徴の1つに、スキーマレスで事前に構造を定義せずにデータを投入できるというものがあります。一方で、データ構造を規定できないために意図しないデータが入り込んでしまうというデメリットもあります。 MongoDB 3.2以降のバージョンではDocument Validationの機能により、保存するデータをコレクション毎にある程度制限することが可能になりました。 Document Validation Document Validationでは、コレクション毎に挿入/更新するデータに対し検証することができます。コレクションに対してValidatorオプションを使用して定義します。 Document Validationの指定には、$ near、$ nearSphere、$ text、$ whereを除く、任意のクエリ演算子が利用できます。詳細は公式
プログラマとして身に着けるべきスキルはたくさんありますが、中には、ソフトウェアエンジニアリングの標準カリキュラムに組み込まれていないものもあります。そうしたスキルは少しずつ自然に、あるいは経験豊富な人と一緒に仕事をする中で学ぶ必要があります。1つDavid MacIverが取り上げているのは、 値の型を追跡するスキル です。 他には、コード中のオブジェクト所有権を理解するスキルも必要です。つまり、コードのどの部分がメモリ内の特定オブジェクトを所有し、それがどんなアクセスを予期しているかを知るということです。 その理解なしにコードを書くと、プログラムがクラッシュしたり厄介なバグに悩まされたりすることになるかもしれません。さらに悪いことに、プログラミング言語の中には、この問題に役立つ手段さえ提供してくれないものもあるでしょう。 自然に身に付ける これは、私がこのスキルを学んだ方法です。私は大学
Amazon Web Services ブログ JSONSerDe によるマッピングを使って、入れ子の JSON から Amazon Athena のテーブルを作成する 多くのシステムでは、イベント情報を記録するのに Java Script Object Notation (JSON) を使っています。JSON は効率的かつ柔軟ではありますが、JSON から情報を取り出すのは面倒です。 この投稿では、ログデリバリー手段としての Amazon Kinesis Firehose、ログ保存先としての Amazon S3、データの加工整形やデータベースへの挿入なしに ログに対して JSONSerDe を使って SQL クエリを投げる手段としての Amazon Athena を、緊密に連携させます。これらの処理は、完全にサーバーレスで行われます。コンピューティングリソースを準備する必要はありません。
大栗です。 最近こんなブログが書かれたことで と煽られているので、泣きながらAnsibleのテストをServerspecで書いています。cron設定をAnsibleで書いてServerspecでテストする時に少しハマったので紹介します。 やりたい事 普通にcronの設定をAnsibleで記述してServerspecでcronの内容のテストをする、と単純なことです。 ちなみに『kitchen-ansiblepushを利用したAnsible roleのテスト環境構築』を参考にTest Kitchenの環境を作りました。 ハマった事 まず普通にAnsibleでcronの設定を書いてみます。こんな感じでcronのタスクを書きました。 - name: cron setting cron: name: cron setting minute: "*/5" user: ec2-user job: "ls
[ WITH with_query [, ...] ] SELECT [ ALL | DISTINCT ] select_expr [, ...] [ FROM from_item [, ...] ] [ WHERE condition ] [ GROUP BY [ ALL | DISTINCT ] grouping_element [, ...] ] [ HAVING condition] [ { UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ] select ] [ ORDER BY expression [ ASC | DESC ] [, ...] ] [ OFFSET count [ { ROW | ROWS } ] ] [ { LIMIT [ count | ALL ] } ]
将来的なデータ分析に備えウェブブラウザからPOSTされたデータをそのままファイルやレコードに登録しているケースでは、分析対象のデータのカラムにカンマ区切りデータがそのまま格納されていることがあります。このままではデータ分析用途のデータとして不向きなので、複数レコードに分解する必要があります。 Amazon Athenaでは、split関数と「CROSS JOIN UNNEST」構文を利用して簡単に複数レコードに分解することができます。 サンプルTSVファイル ファイルはタブ区切りで、3つ目のフィールドがカンマ区切りのフィールドです。今回は6種類のレコードを用意しました。1〜3は正常なカンマ区切りデータです。これだけでは面白くないので、4〜6はあえて異常なカンマ区切りデータを用意しました。 1 ok1 1 2 ok2 2,3 3 ok3 4,5,6 4 ng1 7, 5 ng2 ,8 6
.app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads
[新ツール] AWS Serverless Application Model (AWS SAM) を使ってサーバーレスアプリケーションを構築する AWS Serverless Application Model (AWS SAM) とは AWS Serverless Application Model (以降 AWS SAM) は、AWS が公式で提供しているサーバーレスアプリケーションを構築するためのフレームワーク (モデル) です。Lambda, API Gateway, DynamoDB のリソースをひとまとめに管理 (作成 / 更新 / 削除) することができます。 AWS SAM は、元々 Flourish という名前で知られていたものです。今年5月に開催された Serverless Conf にて Tim Wagner から発表されて以来、期待が集まっていました。re:Inv
はじめに こんにちは、中山です。 最近SwaggerをAWS Serverless Application Model(以下AWS SAM)から利用する機会がありました。AWS SAMではAWS::Serverless::ApiまたはAWS::ApiGateway::RestApiリソースを利用することにより、Swagger形式で記述されたファイルを扱うことが可能です。基本的にAWS SAMのみで利用可能な AWS::Serverless::Api リソースを利用することが多いはずです。API Gatewayは複数のリソースに分離されているため、AWS SAMのベースとなっているCloudFromation用のリソースを使うと、テンプレートの行数が長くなってしまうからです。 執筆時点(2017/03/08)では AWS::Serverless::Api リソースはSwaggerファイルを以
こんにちは、菊池です。 AWSで稼働するMongoDBのマネージドサービス、MongoDB Atlasに利用料無料のFreeプランが登場しました! MongoDB Atlasについては過去の記事も参照ください。 MongoDB as a Service:MongoDB Atlasを試してみた MongoDB AtlasにVPC Peeringで接続してみた MongoDB Atlasで3.4アップグレードを試したら一瞬で完了した MongoDB Atlas:Freeプラン これまで、最小のインスタンスでも$0.08/時間の利用料が発生していましたが、Freeプランでは一切のコスト無しで起動することが可能です。 MongoDB Atlas Pricing スペックと機能 Freeプランのスペックと利用可能な機能は以下の通りです。 512MBのストレージ メモリは共有 3ノードのレプリカセット
サイボウズ・ラボの光成です。 今回はMicrosoft Excelに存在する特別なパスワードの仕様を紹介します。 後半はそれがマクロウイルスと関わるとどうなるか、ちょっとした実験をしたのでその紹介をします。 そもそものきっかけ それは海外の人からのメールでした。 私はCODE BLUE 2015で「MS Officeファイル暗号化のマスター鍵を利用したバックドアとその対策」を発表した際、 Windows/LinuxでMicrosoft Officeファイルの暗号化・復号をコマンドラインでできるツールmsofficeを公開しました。 そのメールはツールについての質問で、「知人からもらったファイルをこのツールで確認すると暗号化されているのにファイルを開くときにパスワードを聞かれない。なぜ?」というものでした。 最初質問の意味がわからなかったのですが、確認すると確かにファイルを開くときにパスワー
こんにちは、みかみです。 au 金曜日クーポンで、沖縄だったらブルーシールアイスがもらえるんですって(いいなーv はじめに AWS管理コンソールからCloudWatchのログ確認してたのですが、長くなるとスクロールするたびロードで待たされてつらい。。 S3にエクスポートできるものの、パーミッション設定必要だったり、gzipなのでWindowsだと地味にめんどくさかったり。。 ログデータを一括で Amazon S3 にエクスポートする やりたいこと CloudWatch のログをS3を経由しないでローカルにファイル保存したい boto3 の CloudWatchLogs で取れるものを確認してみたい 前提条件 Python(3.6.0)インストール済み AWS CLIインストール&設定済み(AWS CLI のインストールと設定) boto3 を pip install 済み やってみよう ロ
bashのfor文のまとめです。 ネットで調べたところ、ケース別ですぐに使えそうなサンプルが並んでいるものがなかったので、このエントリーでまとめてみました。 認識違いがありましたどこかでつぶやいてください。 なお、サンプルでは変数のカーリーブレースやダブルクォーテーションは省略しています。適宜付与してください。 1.フォーマット bashのfor文のフォーマットは for 繰り返し条件 do # ... done となっています。 次のフォーマットでも書けます(以降、このフォーマットで解説)。 for 繰り返し条件; do # ... done 2.初期値・ループ条件・ループ時の処理で指定する 繰り返し条件の部分は一般的なfor文のお作法(初期値、ループ条件、ループ時の処理)が利用できます。 for ((初期値; ループ条件; ループ時の処理)); do # ... done サンプル m
シェルスクリプトで文字列を置換したい際、sedを使う手法が紹介されることが多い。が、実はsedなどの外部コマンドを使わなくても、以下のように変数展開をすることでシェル内部で文字列置換をすることができる。 ${変数名#パターン} → 前方一致でのマッチ部分削除(最短マッチ) ${変数名##パターン} → 前方一致でのマッチ部分削除(最長マッチ) ${変数名%パターン} → 後方一致でのマッチ部分削除(最短マッチ) ${変数名%%パターン} → 後方一致でのマッチ部分削除(最長マッチ) ${変数名/置換前文字列/置換後文字列} → 文字列置換(最初にマッチしたもののみ) ${変数名//置換前文字列/置換後文字列} → 文字列置換(マッチしたものすべて)この機能は記号で書かれるため非常にググりにくいことと、素のshでできること・bashでしかできないことが混在して書かれた記述も多いため、あまりネ
はじめに こんにちは植木和樹@上越妙高オフィスです。re:Invent 2016で発表されたフルマネージドテキスト読み上げサービスであるPollyを使って、いろいろとしゃべってもらいました。 先に参考したサイトを紹介しておきます。始めての方はこの辺を読みながらマネージメントコンソールでいろいろ試してみると楽しいです。 Amazon Polly とは? - Amazon Polly [新サービス]テキスト読み上げサービス「Amazon Polly」がリリースされました! #reinvent | Developers.IO Amazon PollyをAWS CLIから使ってみる #reinvent | Developers.IO Amazon Pollyで使えるSSMLまとめ #reinvent | Developers.IO よく使われそうな省略語にも対応 日本語ボイスのMizukiさんに、
Elastic{ON}2017 レポートのまとめはこちら!! こんにちは。 @shin0higuchiです。 昨日はBeatsやElasticsearchの新機能・RoadMapなどが公開されましたが、 今日もMachine LearningやKibana、Logstashに関するセッションなどがあり、盛りだくさんな1日でした。 本日も参加したセッションについてフィードバックします。 参加したセッションは下記の通りです。 参加セッション What's the Latest in Logstash? What's X‑citing in X‑Pack? Machine Learning in the Elastic Stack What's Next for Elastic Cloud Elasticsearch SQL Machine Learning and Statistical Me
「ビットコインのネットワークは世界最大のスーパーコンピュータである」という「ものの言い方」があります。これは正しいのかどうかを検討するため世界最速のスーパーコンピュータの能力と比較してみました。その結果、「2重のSHA-256ハッシュ計算」という特定の計算能力については、ビットコインのP2Pネットワークは世界で最も強力なコンピュータであると考えて良さそうです。 ビットコインのネットワークの計算能力は2011年6月に当時の世界最速コンピュータである日本の「京」の実測性能8.2P(ペタ)FLOPS)を上回りました(注1)。2013年後半以降にはTOP500合計値、つまり世界最速スーパーコンピュータ500台が束になった性能を大きく引き離しています。現時点のビットコインのネットワークは、世界最速スーパーコンピュータに比べておよそ8万倍の計算能力を持っていると考えられます。 以下、その検討過程を説明
ネットワーク調査ツール「Network Watcher」を見る!! 2017/3/9 2019/7/3 Virtual Network 仮想ネットワークのトラブルシューティングツール「Network Watcher」を見ていきます! 今では、仮想ネットワークを作成すると、デフォルトで有効となります。 下記、4つの項目に分類されています。 【監視】 ・トポロジ ・接続モニター ・ネットワークパフォーマンスモニター 【ネットワーク診断】 ・IPフローの確認 ・ネクストホップ ・有効なセキュリティルール ・VPNのトラブルシューティング ・パケットキャプチャ ・接続のトラブルシューティング 【メトリック】 ・使用量+クォータ 【ログ】 ・NSGフローログ ・診断ログ ・トラフィック分析 それでは、やってみよー!! [すべてのサービス]ー[Network Watcher]を選択 ネットワーク ウォ
Node におけるスケールアーキテクチャ考察(Scale 編)というエントリーを読んで、RedisはPub/Sub型通信をサポートしているという事を知りました。エントリーでも言及されているように、Pub/Subを使えば Node.js + WebSocket サーバをスケールする際に、中継サーバの役割を果たす事が出来るはずです。 そんな訳で実際に Node.js と Redis を使って Pub/Sub の実験を行なってみました。ユーザが別々のNode.jsサーバに接続していてもWebSocketを通してメッセージのやり取りを出来るようにします。 イメージとしてはこんな感じです。 下準備# Ubuntuの場合は apt-get で1発でインストールする事が出来ます。 $ sudo apt-get install redis npmでredisモジュールをインストールします。 $ npm i
第456回ではUbuntu 16.04 LTS上にCUDA 8.0をインストールする方法を紹介しました。これをもっと簡単に環境構築できるよう、今回は第458回で紹介したDockerを使ってみましょう。 NVIDIAのDocker 第458回で紹介しているようにDockerはカーネルのコンテナ技術などを利用して、アプリケーションをサンドボックス環境の中で動かす仕組みです。Dockerではカーネルの名前空間機能を用いてプロセスなどのリソースをホストの他のリソースから隔離することで、独立したサンドボックス環境を構築しています。KVMやVirtualBoxといった仮想マシンともっとも異なるのは、「ホストとコンテナのカーネルは共通である」ことでしょう。ホストもコンテナも同じカーネルインスタンスの上で動いています。つまりコンテナの操作によってカーネルがハングアップしてしまったとしたら、当然のことなが
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く