ブックマーク / qiita.com (30)

  • Terraform について、やっていることをすべて話そう - Qiita

    ※ 2020-12-22 追記あり はじめに この記事は GLOBIS Advent Calendar 2020 - Qiita 17日目の記事です。 GLOBIS SRE チームでは2020年初頭より、 Kubernetes (Amazon EKS) を用いたインフラ環境の全面的な刷新に取り組んでいます。この新たな環境では Infrastructure as Code で環境の9割はコード化するという目標を立てており、 Terraform を積極的に活用しています。 この記事では、そんな弊チームでの Terraform の使い方についてまとめていきます。書き始めたら書きたいことが湯水のように湧いてきてしまったので、FAQ形式でまとめてみました。気になるところを拾い読みしてみてください。 Terraform 全般 Q. Terraform で何を管理していますか AWS がメインの環境なの

    Terraform について、やっていることをすべて話そう - Qiita
  • 使っていないRaspberry PiをWebページやTwitterを表示して活用しよう【簡単に試せるOSイメージあり】 - Qiita

    こんにちは! わみです。 RaspberryPiを買ってちょっと触って満足して引き出しに寝かせている人は多いのでは?と勝手に思っております。 そんなRaspberryPiを活用しませんか?! 今回は簡単にWebページを表示できるFullpageOSを紹介していきます。 我が家にRaspberry Piを活用したデジタルサイネージシステムが爆誕! お風呂の空きや時間が見れるようなオリジナルサイトとそれを表示できるハードウエアの組み合わせ! 私は電源に差したら何も操作しなくてもパッとサイトが開くようなオリジナルのOSをつくって サイトは@retoruto_carry さんの作品 pic.twitter.com/2W18pn1KaT — わみ (@wamisnet) October 1, 2020 あとで、私がビルドした日での使用向けにタイムゾーンの設定やキーボード入力の設定を変更したOSイメ

    使っていないRaspberry PiをWebページやTwitterを表示して活用しよう【簡単に試せるOSイメージあり】 - Qiita
  • Terraform職人再入門2020 - Qiita

    data "aws_caller_identity" "current" {} output "account_id" { value = data.aws_caller_identity.current.account_id } 若干補足しておくと、 "${}" 自体が廃止されたわけではなく、今でも文字列の中に変数を埋め込む場合には必要ですが、式が変数の参照しか含まない場合は不要で、v0.13.4以降は冗長な書き方は警告が出ます。ちなみにv0.14のfmtはもう一歩踏み込んで、この書き方を自動で修正するようになりました。古いサンプルコードを雑にコピペできるようになってべんり。 Terraformではなく汎用的なHCLそのものの仕様を調べたいときは、 hashicorp/hcl にありますが、稿執筆時点ではデフォルトのmasterブランチはまだHCL1であることに注意して下さい。 HCL

    Terraform職人再入門2020 - Qiita
  • Terraformアンチパターン(2019年版) - Qiita

    はじめに Infrastructure as Code(以下IaCと略します)って最近では当たり前のように実践されてますよね。特にterraformはかなりユーザが多く、開発のスピードも速い印象です。 IaCを実現できたインフラエンジニアの皆さんの多くが次に直面する問題はコードの保守運用に関する事柄ではないでしょうか? terraformもコードなので、アプリケーションのコードと同じように保守性(テスト容易性、理解容易性、変更容易性)を意識する必要があります。ただコード化しただけでは属人性を排除したとは言えないと思います。 保守性の高いterraformって具体的にどう書けばいいの?と周りに聞いてみても、巷には「ぼくのかんがえた最強のterraformベストプラクティス」が乱立していて、自転車置き場の議論になりがちです。 また、v0.12前後でterraformの記法が大きく変わったので、

    Terraformアンチパターン(2019年版) - Qiita
  • AWS API GateWay (Labmda)に負荷テスト(ラッシュテスト)を実施したときのTips

    概要 サーバレスアーキテクチャ(今回でいうとサーバレスAPI)を構築した際、負荷テスト(ラッシュテスト)を実施した際にいろいろ試行錯誤した時のTipsです。 アーキテクチャ構成 よくある構成。APIGW->Lambda->DynamoDBと処理しているAPIがほとんどです。 実施内容 どうやってラッシュテストしようか。 下記のパターンがさっと思いつきます。 1. Device Farmを使ってテストケース投入してやってみる。 2. JMeterとかを使ってシナリオテストっぽくしてみる。 3. APIエンドポイントに対して負荷をかけてみる。 JMeterを使おうとも考えましたが、シンプルに想定RPSを耐え切るかを見たかったので、3を選択しました。 ラッシュテスト 前準備 結論から述べると、ApacheBenchもvegetaもうまくいかなかったので、wrk使います。 wrkでEC2を大量に立

    AWS API GateWay (Labmda)に負荷テスト(ラッシュテスト)を実施したときのTips
  • Terraform職人入門: 日々の運用で学んだ知見を淡々とまとめる - Qiita

    はじめに この記事は CrowdWorks Advent Calendar 2017 の8日目の記事です。 Terraform職人の @minamijoyo です。Infrastructure as Codeしてますか? インフラのコード管理に Terraform を使い始めて2年ちょっと、番環境で運用していると日々色んな学びがあるので、Terraformやってみた系の入門記事では語られない、現場の運用ノウハウ的なものを共有してみようかと思います。 Terraformを使い始めた or 使っている人が、こんなときどうするの?っていうときに参考になれば幸いです。 書き始めたら超長文になりました。概要は以下のとおりです。 公式ドキュメントを読もう tfファイルを書く技術 インデントを揃える 組み込み関数に親しむ lifecycleブロックを使う リソースの差分を無視する リソース再生成のとき

    Terraform職人入門: 日々の運用で学んだ知見を淡々とまとめる - Qiita
    mashumalow
    mashumalow 2018/06/25
    “let g:terraform_fmt_on_save = 1”
  • AWS IAM Switch Roleのリストを増やすChrome Extension(Firefox Add-onも)を作った - Qiita

    AWS IAM Switch Roleのリストを増やすChrome Extension(Firefox Add-onも)を作ったAWSIAMChromeExtensionSwitchRole AWS Management Console において、AWSアカウントから他のAWSアカウントにスイッチロールできますが、これの最近の履歴が5つまでしか表示されない。あくまでも最近使ったものという位置付けなんだと思います。 某仕事上、1つのアカウントから多数の他のアカウントに Switch Role にせざる得ないので専用の URL をブックマークしていました。しかし、これでも毎回補完された入力フォームが挟まれて怠い(このページ遷移が結構かかります)。 このような理由で、Switch Role の履歴(リスト)を拡張する Chrome Extension を作りました。Chrome Web Stor

    AWS IAM Switch Roleのリストを増やすChrome Extension(Firefox Add-onも)を作った - Qiita
  • アクセス解析担当が必ずやってるGoogleAnalytics設定のまとめ【2018年版】 - Qiita

    この記事について 「GoogleAnalyticsの設定、どうしたらいいんだっけ...」と迷ったときのためのレファレンスです。 新規のサイトを立ち上げる時・GAの再設計がしたくなった時に参照してください。 のちのちアクセス解析しつつ改善していくために、できるだけ汎用的にデータを拾っておく 可能な限り、非コーダーができる作業で完結させる というのをテーマにまとめました。 STEP 0: GTM・GAのアカウントを取得 Googleのアカウントがあれば、驚くほど簡単に取得できます。 GoogleAnalyticsのアカウントを作る GoogleTagManagerのアカウントを作る 基的には、GoogleTagManager(以下、GTM)経由でGoogleAnalytics(以下、GA)を導入します。GTMの使い勝手がよいのはもちろん、GAをカスタマイズしたくなったときに、コーダーの手を借

    アクセス解析担当が必ずやってるGoogleAnalytics設定のまとめ【2018年版】 - Qiita
  • Web Developer Roadmap 2018が出たので2017年版と比較してみる - Qiita

    のようなイメージではないでしょうか? (灰色と橙色の分け方は作者のおすすめ度(匙加減)な気もしなくないんですが) はい…まさにこの通りですのでこれを参照頂ければなと思います。隅まで目を通していないのがバレますね。 では早速題 🚀Introduction これが2017版 2018版 左の奴らが軒並みチョーヤバいです。雑だな! まあここは導入みたいなもんなんで深くは追及しません。最早OSSや仮想鯖、クラウド環境化での開発は必須なんだってことが言いたいんだと思います。(適当) デザインパターンってのはGoF(Gang of Four)というおじさん4人がソフトウェア開発に取り入れたオブジェクト指向プログラミングにおけるこう書くとオブジェクト指向的にええと思う!っていうパターンの集まりです。全23種、知らず知らずのうちに使っているものも多いです。 なんで今追加されたのか僕にはよくわかりません

    Web Developer Roadmap 2018が出たので2017年版と比較してみる - Qiita
  • HTTP/2における双方向通信とgRPCとこれから - Qiita

    この記事は 第2のドワンゴ Advent Calendar 2017 最終日の記事です。 はじめに ウェブ技術を語る上で欠かすことのできない要素として、HTTPがある。 従来のHTTP/1を無くして、ここまでのウェブの発展はなかったといえるだろう。言うまでもなく、HTTP/1が我々人類に齎した功績は大きい。 しかしその一方で、その規格のシンプルな原理原則に縛られた結果、要件を達成するために非効率なネットワーク使用を前提とするシステムが量産されるなど、HTTP/1がもたらした技術的負債も存在する。 その中の一分野として、双方向通信に着目したときに、HTTP/1からHTTP/2へのアップグレードによってどのような変化がもたらされたか。 稿ではHTTP/2という規格と、それが持つ可能性の一端としてgRPCについての仕組みを紹介し、従来とこれからのWeb開発における双方向通信について述懐する。

    HTTP/2における双方向通信とgRPCとこれから - Qiita
  • Macで簡易httpサーバ立ち上げコマンドスニペット - Qiita

    pythonSimpleHTTPServer Macにはpythonはデフォルトインストールされてるので、すぐ立ち上げられる

    Macで簡易httpサーバ立ち上げコマンドスニペット - Qiita
  • 中国のクラウドで金盾体験 - Qiita

    この記事は DMM.com #2 Advent Calendar 2017 の12日目の記事です。 前日の記事は @ma9to さんの チームで行うReact Componentの設計 でした。 下記がヘイシャのAdvent Calendarです。 https://qiita.com/advent-calendar/2017/dmm https://qiita.com/advent-calendar/2017/dmm2 まえがき はじめまして、佐々木です。 だいぶ前はツチノコブログの中の人をしたり、イベントでDMMかき氷を配ってたりしてましたが、最近はゆるふわにZendeskをいじったりしてます。 DMMの社は六木にあります。 六木は夜もたいへん元気で楽しい街で、IT関連の人達が夜も継続的打ち合わせを行なっております。 Awabarというミッドタウン近くのバーがそういう場所として有名

    中国のクラウドで金盾体験 - Qiita
  • Apache Benchでサクッと性能テスト - Qiita

    使ってみる 例えば、100ユーザが同時にhttp://www.example.co.jp/ に1リクエストを発行した場合を想定。 ab -n 100 -c 100 http://www.example.co.jp/ 同時に100ユーザが、1ユーザーあたり10リクエストを発行した場合を想定。 -nには100 x 10 = 1000を指定します。 ab -n 1000 -c 100 http://www.example.co.jp/ 接続先にベーシック認証がかかっている場合。 -Aの後にベーシック認証ユーザとパスワードを:(コロン)で区切って指定します。 ab -n 100 -c 100 -A hogeuser:hogepass http://www.example.co.jp/ 同時接続数よりTotal発行リクエスト数が少ないとエラーメッセージが表示されます。 同時に100人で合計10リクエ

    Apache Benchでサクッと性能テスト - Qiita
  • Perl で書くクローラのテスト - Qiita

    2017 年の Perl Advent Calendar 1 日目を担当する @codehex です。 とあるカテゴリのサービスを巡回するクローラを書く機会がありました。今回はそのテスト手法について僕が考えたことを書こうと思います。 文章でいっぱいの記事になりそうです... 考えたこと このクローラは巡回するサービス数が少ないことを前提としています。 クローラを開発するにあたって考えることが沢山ありましたが、その中でも特に次のことについて考えなければいけませんでした。 サービス毎で分かれるスクレイピング処理や DB への投入の処理を考慮して、どう処理を分岐させれば各々のデータを集めることが可能か 対応サービスを追加したい場合、難しいことを考えずに追加できるようにするにはどうすれば良いか 結果として、それぞれのサービス毎のパッケージを用意し、それらをプラグインとして扱う形式を取りました。実現

    Perl で書くクローラのテスト - Qiita
  • クラウド破産しないように git-secrets を使う - Qiita

    AWS のクレデンシャルを GitHub に載せてしまう事故 相変わらず続いてますが、以下秘密情報の公開を防ぐ方法。 ( AWS の Glacier とか GCP の BigQuery とか 課金の仕組み系も気をつけないとですね・・) AWS が公開しているツール。パスワードなどの秘密情報を 誤って git リポジトリに commit する ことを防いでくれます。 https://github.com/awslabs/git-secrets 設定手順 1. インストール ツールを置いておくためのフォルダを作り、 あとはそこにソースを落としてきて make install するだけ。

    クラウド破産しないように git-secrets を使う - Qiita
  • あなたが知らないHeroku Private Spacesの機能 - Qiita

    Happy Holiday :) 2016年のHeroku Advent CalendarはHerokuのPrincipal Solutions Architectの相澤がお届けします。 Herokuはサインアップするだけですぐに使えるWebアプリケーションのプラットフォームとして知られていますが、Herokuの真の価値はHeroku Enterpriseという企業向けのパッケージを使って初めて感じることができます。このエントリーではHeroku Enterpriseの目玉機能であるHeroku Private Spacesについて紹介していきます。 東京Regionの利用 PrivateSpacesの大きな特徴であり、日のユーザーにとってインパクトが大きいのが、日のデータセンターでHerokuを運用できるということでしょう。 詳しくは後述しますが、PrivateSpacesはユーザー

    あなたが知らないHeroku Private Spacesの機能 - Qiita
  • シェルの基礎とSSH Tips - Qiita

    第40回勉強会(2015/02/21) - 長岡 IT開発者 勉強会(NDS) @hayajo はじめに Bourne Shell系の内容です。C Shell系ではないので注意してください。 NOTE: 特に明言しない場合は ash(dash) 準拠となります。

    シェルの基礎とSSH Tips - Qiita
  • HTTP2 のフロー制御 - Qiita

    この記事は HTTP2 Advent Calendar の 1 日目の記事です。 初回は、執筆時点での最新ドラフトである HTTP2-draft16 のフロー制御(Flow Control) について解説します。 余談ですが, 現在の仕様では "HTTP2.0" ではなく "HTTP/2" もしくは "HTTP2" が正しい名称です. 更新 @kazu_yamamoto さんに指摘頂いた点を反映しました。 @kiri__n さんに指摘頂いた点を反映しました。 詳細については 更新履歴 をご覧下さい。 HTTP2 では、同じホストへの複数のリクエストを、同一の TCP コネクション上にストリームという単位で多重化することができるようになりました。 フロー制御とは、例えばひとつのストリームがリソースを占有してしまうことで、他のストリームがブロックしてしまうことを防ぐ、といった目的で行われます。

    HTTP2 のフロー制御 - Qiita
  • Terraform Best Practices in 2017 - Qiita

    2019/12/23 更新 記事はベストプラクティスかもしれないけど複雑だったので、2020年度版(0.12対応版)として Terraform 0.12 のコードを黒魔術にしないために心がけたこと ~ 自分への戒めを込めて ~ を書きました。こちらも参照ください。 以下のブログをベースにver0.10の新機能のworkspaceや、backend、remote stateを活用してベストプラクティスを考えた。 細かい話は以下のブログを参照いただき、ver0.10に対応した内容だけ記載します。 Terraformにおけるディレクトリ構造のベストプラクティス | Developers.IO サンプルコード サンプルコードを置きましたので、イメージが付かない場合は以下を見てみて下さい。 (適当に作ったので間違えてたらプルリクください) https://github.com/shogomuran

    Terraform Best Practices in 2017 - Qiita
  • 最強のSSH踏み台設定 - Qiita

    追記:openssh-7.3 以降なら ProxyJump や -J が使えます ホスト名を + で繋げることで多段Proxy接続も簡単に、がコンセプトだったエントリの設定ですが、OpenSSH 7.3 から ProxyJump という設定が使えるようになったので、使えるなら ProxyJump を使う方が健全だし柔軟で使い勝手も良いのでそちらを覚えて帰ることをオススメします。 使い方は簡単で以下のような感じです。多段も行けるし、踏み台ホスト毎にユーザ名やポート番号を変えることも出来ます。 # 1. bastion.example.jp -> internal.example.jp ssh -J bastion.example.jp internal.example.jp # 2. bastion.example.jp -> internal.example.jp -> super-de

    最強のSSH踏み台設定 - Qiita