タグ

ブックマーク / dev.classmethod.jp (41)

  • dbt Fundamentalsを受講してみた | DevelopersIO

    はじめに データアナリティクス事業部のおざわ@仙台です。バスケ日本代表で大活躍だった河村選手が11月に仙台にくるそうなので、さっそく試合のチケットを買いました。楽しみです。 今回は、ずっと気になっていたdbtに入門するべく、dbt公式が無料で提供している初心者向けコースの「dbt Fundamentals」を受講してみました。受講に必要なものは、dbt Cloudのアカウント(無料で作れます)とDWH用の環境になります。 コース概要 タイトルのとおり、入門者にとって重要な基礎を学ぶコースになっています。講師の方の話では、dbt入門にはModels, Sources, Tests, Documentation, Deploymentの5つが重要ということで、コースでもこれらを重点的に学びます。 受講に必要な時間は、動画による学習コンテンツが2時間、演習時間におおよそ3時間となっています。

    dbt Fundamentalsを受講してみた | DevelopersIO
    s_mori
    s_mori 2023/10/01
  • 自前でデータパイプラインをサクッと構築できる「Airbyte」を試してみた | DevelopersIO

    記事は、データパイプラインを簡単に構築できるツールAirbyteでロードジョブを試していきます。 アドベントカレンダーでは、日でも海外でもマイナー寄りな製品を取り扱ってきてますが、多分一番知名度があるのがこのAirbyteになるかなと思います。 Airbyteについて Airbyteは2020年にサンフランシスコで創業されたテックカンパニーです。創業からわずか1年でシリーズAに到達し、$26Mの資金調達に成功しているスタートアップで、急激な成長速度で業界から注目を集めています。 Airbyte announces $26M Series A for open-source data connector platform | TechCrunch その最大の特徴は製品をOSSで公開しているという点でしょう。自身のAWSにデプロイすればAirbyteの機能をそのまま使えてしまう導入障壁が

    自前でデータパイプラインをサクッと構築できる「Airbyte」を試してみた | DevelopersIO
    s_mori
    s_mori 2023/10/01
  • 【コードでインフラ定義】CDKという異次元体験をさくっとやるのに便利なAWS公式Workshopの紹介 | DevelopersIO

    CDKを最初に試して見るには非常に便利なCDK Workshopの紹介です。ぜひこれでCDKの奥深い新鮮な世界に入門いただければ。 「俺もそろそろ乗らなくては、この、ビッグウェーブに!!」 皆さん、CDK触っていますか?DevelopersIOにも、CDK | 特集カテゴリー で、既に20以上のブログがあがっていたり、その人気はうなぎのぼりです。 CDKとは一口で言えば「コードでインフラを定義する」ものです。「いやぁ、これ楽。素晴らしい」という声を同僚からよく聞くので、自分も早速試してみようとしたところ、CDK Workshopなるものを発見し、手を動かして学ぶには凄くわかりやすく良い教材だったので、その内容を紹介します。 CDK実行するための環境定義 LambdaAPI Gatewayを利用した簡単なサービスの公開 モジュールの作り方 クラス構造の解説 デバッグ方法 モジュールの利用方

    【コードでインフラ定義】CDKという異次元体験をさくっとやるのに便利なAWS公式Workshopの紹介 | DevelopersIO
    s_mori
    s_mori 2021/01/27
  • AsciiDocの文書をCodePipeline/CodeBuildでHTMLに変換してみた | DevelopersIO

    こんにちは、かたいなかです。 今回はGitHubにpushしたAsciiDocの文書をCodePipeline/CodeBuildでをHTMLに自動で変換する方法をご紹介します。 AsciiDocとは AsciiDocはドキュメントや記事、スライドショーなどを記述するためのテキストドキュメントのフォーマットです。AsciiDocのファイルはHTMLPDF、EPUBなど様々な形式へ変換することができます。 Markdownよりも表現力が高いのも特徴で快適にドキュメントを作成することができます。 また、AsciiDocではPlantUMLなどを文書内に埋め込むことができ、UMLを多用した視覚的にわかりやすいドキュメントを容易に作成できます。 なぜHTMLに変換するのか GitHub上ではそのままでもAsciiDocの形式のファイルをある程度きちんと表示してくれます。しかし、PlantUMLで

    AsciiDocの文書をCodePipeline/CodeBuildでHTMLに変換してみた | DevelopersIO
  • Ansibleのyum_repositoryとrpm_keyを使ったJenkinsインストール | DevelopersIO

    渡辺です。 JenkinsをAmazonLinuxにインストールする場合、次のようなコマンドを実行します( 公式Wiki より)。 sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key sudo yum install jenkins 要は、yumのリポジトリの追加と gpg鍵を登録して、yumでインストールします。 Ansibleのcommandモジュールやshellモジュールを利用すれば簡単に自動化できますが、冪等性を保つためにも標準モジュールを利用する方がベターです。 というわけで、yum_repositoryとrpm_keyを使

    Ansibleのyum_repositoryとrpm_keyを使ったJenkinsインストール | DevelopersIO
  • ECSでごっつ簡単に機密情報を環境変数に展開できるようになりました! | DevelopersIO

    従来アプリケーション側で必須だった機密情報の復号化が、マネージドな仕組みで実現できるようになりました。 これでついにあんな秘密やこんな秘密をコンテナに渡しやすくなりますね — ポジティブな Tori (@toricls) 2018年11月16日 先日のアップデートで、ECSコンテナ内への機密情報の受け渡しが非常に簡単になりました。 従来は機密情報の展開にアプリケーション側での処理が必要だったものが、マネージドな仕組みで実現可能となっているので、既存ECSユーザーには必見のアップデートとなっております。 参考:AWS Launches Secrets Support for Amazon Elastic Container Service あんなことやこんなこと!? ( ゚д゚) ガタッ /   ヾ __L| / ̄ ̄ ̄/_ \/   / 従来の方法の面倒くささ(自前で機密情報を展開していた

    ECSでごっつ簡単に機密情報を環境変数に展開できるようになりました! | DevelopersIO
    s_mori
    s_mori 2018/11/29
  • 【小ネタ】Ansibleでyum updateするときはBackgroundオプションをつけると良いという話 | DevelopersIO

    はじめに こんにちは植木和樹@上越妙高オフィスです。 複数台のサーバーにyum updateする時には、各サーバー1台ずつにsshでログインしてコマンドを実行するのではなく、ansibleを使って実行することが推奨されます。これは実施した作業内容や作業ログをログとして残すのが容易なためです。 ただ、yum updateのように時間がかかる処理をansibleから行ってしまうと、タイムアウトが発生して処理が中断してしまいrpmの不整合が発生するという残念な事態になってしまいます。 今回はそんな残念な事態を回避するための子ネタをお送りしたいと思います。 ansibleでのタイムアウト ansibleはsshを用いてサーバーへコマンドを送り、その処理結果を待って成否を判定します。この際コマンドの実行に時間がかかるとsshがタイムアウトしてしまい、処理途中でコマンドが強制終了してしまうことになりま

    【小ネタ】Ansibleでyum updateするときはBackgroundオプションをつけると良いという話 | DevelopersIO
  • 多段SSHをAnsibleで設定する | DevelopersIO

    渡辺です。 セキュリティを高めるなどの理由で対象インスタンスにEIPを付与しない場合、SSHは踏み台(Bastion)経由となります(参考: Amazon VPC環境にメンテナンス用の踏み台サーバを構築する)。 踏み台サーバのある構成でAnsibleを利用する場合、ansible.cnfのssh_connectionでssh_argsを設定しましょう。 ssh_configの準備 はじめにsshのconfigファイルを作成します。 これは、~/.ssh/configに設定するファイルの一部と考えて良いでしょう。 Ansibleのファイルと一緒にバージョン管理する方が良いと思うので、Ansibleのプロジェクトルートにおくことをおすすめします。 Host bastion HostName 52.52.xxx.xxx User ec2-user IdentityFile ~/.ssh/prd.

    多段SSHをAnsibleで設定する | DevelopersIO
  • include_varsで環境に応じた変数を読み込む | DevelopersIO

    渡辺です。 シェルスクリプトの中では、コマンドは可能な限りフルパスで記述することが望ましくなります。 しかし、環境によってコマンドのパスは異なる事があるため、スクリプトファイルに固定で記述することもできません。 このような場合、環境毎の変数をvarsに用意し、include_varsステートメントを利用します。 awsコマンドのパスを定義する AWS CLIのコマンドはAmazon Linuxでは/usr/bin/awsとなり、Ubuntuでは/usr/local/bin/awsとなります。 はじめにvarsディレクトリの下にそれぞれファイルを用意して定義します。 # RedHat.yml --- path_to_awscli: /usr/bin/aws # Debian.yml --- path_to_awscli: /usr/local/bin/aws これらのファイルを読み込めば、変

    include_varsで環境に応じた変数を読み込む | DevelopersIO
  • AWSでJMeterを使った負荷テスト環境を構築する手順(WindowsありのMaster/Slave構成) | DevelopersIO

    はじめに JMeterで負荷テストをする際に1台の端末から負荷をかけていても負荷が足りない場合があります。そのような場合はJMeterをMaster/Slave構成にし複数台用意する必要があります。今回はAWSでこのような負荷テスト環境を構築する手順をまとめたいと思います。 AWSを使う場合は以下のリンクのページのようにCloudFormationでやる方法が早いのですがAMIやインスタンスタイプ、Java、JMeterのバージョンが古くなるのと、上手く動かなくなった場合にCloudFormationに慣れてないと原因調査に時間をとられることもあるので今回は手作業でやってみたいと思います。 お手軽JMeterクラスター 〜 フルボッコ編|アドカレ2013 : CFn #1 前提条件 今回は以下の前提で構築しています。 Master上でテストシナリオを作成したいのでMasterのOSはWin

    AWSでJMeterを使った負荷テスト環境を構築する手順(WindowsありのMaster/Slave構成) | DevelopersIO
    s_mori
    s_mori 2018/05/28
  • [レポート] LambdaとStepFunctionsを使った新しい負荷試験のカタチ #jawsdays #jd2018_g | DevelopersIO

    3/10 に開催されました JAWS DAYS 2018 にて、こちらのセッションが開催されました。聴講してきましたのでレポートしたいと思います。 LambdaとStepFunctionsを使った新しい負荷試験のカタチ | JAWS DAYS 2018 Dynamic StepFunctions New style of Load TEST スピーカー 内海恵介さん 株式会社HAROiD リードエンジニア LambdaとStepFunctionsを利用したスケーラブルな新しい負荷試験実行環境について。 – Lambdaを利用した攻撃ツール – StepFunctionsのステートを動的に構築 – Fargateへの対応 スマホ×TV連動等での秒間数万reqにもなる負荷や、放送波による大規模同時接続を安全に、より安心して運用するための事例等も交えてお話させていただきます。 資料 ※後日公開が

    [レポート] LambdaとStepFunctionsを使った新しい負荷試験のカタチ #jawsdays #jd2018_g | DevelopersIO
    s_mori
    s_mori 2018/05/28
  • EC2で起動時やterminate時にシェルを実行する | DevelopersIO

    特定のタイミングでシェルを動かしたい EC2インスタンスの起動や停止など、任意のタイミングで何か処理をしたいことがあるとおもいます。 例えば、次のようなケースです。 AutoScallingで起動されたインスタンスが、起動時にアプリケーションを起動したい terminate/stop予定のインスタンスが停止する前にデータのバックアップを行いたい Linux環境であれば、サービスとしてシェルスクリプトを登録することで、インスタンスの起動や停止時に処理を行うことができます。 使用した環境 EC2のOS : Amazon Linux やってみる 起動時/停止時実行されるシェルを作成 まずはインスタンス起動/停止時に実行されるシェルを作成します。 下記のような、起動/停止時にメッセージを特定のファイルに出力するだけの単純なシェルを作成します。 名前は、「mytest」とでもしておきましょう。 なお

    s_mori
    s_mori 2018/05/27
  • SpotInstanceとJMeterを使って400万req/minの負荷試験を行う | DevelopersIO

    Apache JMeterのMaster/Slave構成 シナリオを用いた負荷試験といえばJMeterということで、使ったことがある方も多いかと思います。しかし、ほとんどの方は自分のPCを使ってやっている程度ではないでしょうか。最近は、スマホ連動のシステムが多くなってきていますので、1台のPCから負荷を掛けたとしても大した負荷試験になりません。そこで、今回はJMeterをMaster/Slaveのクラスター構成にしてドカーンと同時アクセスを行いたいと思います。 クラスメソッドの負荷試験の歴史 創業時から業務系のシステム開発が多かったことから、レスポンスは3秒以内でOKとか、ピーク時の同時ユーザは100名といった、緩い条件をクリアすれば良かったことが懐かしく思います。今は、ユーザ数・データ量・トランザクション数・トラフィック等が爆発的に増える可能性のあるプロジェクトも多く、負荷試験は必須項目

    SpotInstanceとJMeterを使って400万req/minの負荷試験を行う | DevelopersIO
    s_mori
    s_mori 2018/05/25
  • Ansible inventoryパターン | DevelopersIO

    Ansibleではinventoryに対象ホストを定義します。 適用したいインフラ構成が複数ある場合、playbook毎にグループ化してください。 グループ化した場合、変数はそれぞれのgroup varsに定義できます。 詳しくは、前回のエントリーを参照してください。 inventoryの構成方法には幾つかのパターンがあります。 対象とするシステムの規模や特徴にあわせて選択しましょう。 なお、パターンを整理するにあたって、Ansibleのインベントリファイルでステージを切り替えるを参考にしました。 ベーシックパターン 開発環境・検証環境・番環境といった目的毎に環境を作る必要がなく、ひとつの環境(番環境)のみの場合は、inventoryファイルもひとつで十分です。 hostsという名前のファイルを作成し、inventoryを定義しましょう。 構成は次のようになります。 . ├── gro

    Ansible inventoryパターン | DevelopersIO
  • Ansibleのinventory入門 | DevelopersIO

    Ansibleは、定義されたインフラ設定を複数のサーバに対し、同時に適用することができます。 この時、どのサーバに対し設定を行うかを定義するのが inventory です。 例えば、hostsというファイルにinventoryを定義します。 基的なinventory inventoryは、一言で言えば「対象サーバの一覧」です。 inventoryファイル(歴史的にhostsというファイル名にすることが多い)は、次のようにホスト名の列挙となります。 10.0.11.121 10.0.11.122 10.0.21.100 名前解決ができてSSHアクセス可能であれば、ホスト名、IPアドレスでもホスト名のどちらでもOKです。 group inventoryでは、次のようにホストをグループ化することができます。 [web] 10.0.11.121 10.0.11.122 [batch] 10.0.

    Ansibleのinventory入門 | DevelopersIO
  • ansible.cnfでssh_configを設定する | DevelopersIO

    渡辺です。 2015年はAnsible盛り上がってますね。 大規模な構成管理ツールとしては疑問の声も聞こえてきたりしますが、弊社のAWS環境構築支援のように、ある程度お決まりの設定をサクっと8分組みしたいようなケースでは当に便利です。 そんなAnsibleが手軽に使える最大の理由は、Ansibleがエージェントレスで、対象サーバにSSH接続が可能ならば利用できるという点であることは言うまでもありません。 この辺りもAWSの環境構築とAnsibleの親和性が高い理由のひとつです。 今回のエントリーでは、そんなAWSの環境構築を行う時に、ssh_confとAnsibleを組み合わせる方法を紹介します。 SSH接続と秘密鍵 Ansibleを実行するマシンから対象のサーバにはSSH接続を行う必要があります。 すなわち、秘密鍵が必要です(鍵認証無しでSSH可能な環境は論外で...)。 秘密鍵は、s

    ansible.cnfでssh_configを設定する | DevelopersIO
  • Ansible実践入門 | DevelopersIO

    渡辺です。 最近、Ansibleに関する書籍が増えてきていますね。 とはいえ、ほとんどは入門的な位置付けで、それはそれで需要があるんですが、実践レベルで使いこなすノウハウは少ないというのが現実かと思います。 この辺り、まだ試行錯誤を繰り返しているところも多いでしょう。 そこで、ノウハウをガンガン流出させるクラスメソッドなので、ベストプラクティスみたいなものをまとめちゃいました。 Ansibleとは? 雑な言い方をすれば、SSH接続したリモートホストでミドルウェアのインストールや設定ファイルの更新を行うツールです。 カテゴリとしては構成管理ツールに分類されます。 SSH接続が可能であれば、リモートホスト側にエージェントのインストールが不要である点は大きな特徴です。 Playbookにサーバの状態を定義する AnsibleのPlaybookは、リモートホストの状態を定義したファイルです。 構成

    Ansible実践入門 | DevelopersIO
  • Hadoop Advent Calendar 2016 の記事一覧 | DevelopersIO

    Hadoop Advent Calendar 2016 の記事一覧です

    Hadoop Advent Calendar 2016 の記事一覧 | DevelopersIO
  • HDFSのデータ構造 | Hadoop Advent Calendar 2016 #03 | DevelopersIO

    こんにちは、小澤です。 この記事はHadoop Advent Calendar 3日目のものとなります。 1人でHadoopの話をする Advent Calendar 2016 - Qiita Hadoop Advent Calendar 2016 | シリーズ | Developers.IO 前回はMapReduce応用編ということで、MapとReduce以外の処理を制御する方法を紹介しました。 今回はHadoopを構成するコンポーネントであるHDFSについて記載させていただきます。 HDFSとは HDFSとはHadoop Distributed File Systemの略で、Hadoop上で利用される分散ファイルシステムとなります。 Hadoopを特徴付ける一つの要素となっており、通常のファイルシステムとは異なる点がいくつかあるためその仕組みと注意点について書かせていただこうかと思いま

    HDFSのデータ構造 | Hadoop Advent Calendar 2016 #03 | DevelopersIO
  • Vagrant 1.8の新機能 Linked CloneとSnapshotを試してみた | DevelopersIO

    ども、大瀧です。 週明けにリリースされたVagrant バージョン1.8の新機能、Linked CloneとSnapshotを試してみたのでレポートします。 先に結論から書いておきますが、どちらもVagrantを日々使っている方には是非常用して欲しい機能です! Linked Cloneとは Linked Cloneはデータセンター仮想化製品ではメジャーな、一つのマスターVMを元にして複数のクローンVMを作り出す機能です。普通にVMをコピーするのではなく、クローンVMはマスターVMの差分データのみを持つことから'Linked'という冠が付いています。VMの初回作成(vagrant up)時の時間が短縮されるのと、仮想ディスクのサイズが差分のみで済むメリットがあります。 設定方法 Virtualbox環境では、以下の設定をVagrantfileのVagrant.configure(2) do

    Vagrant 1.8の新機能 Linked CloneとSnapshotを試してみた | DevelopersIO