ランサーズ等のサービスを開発・運用する中で得た知識やノウハウを紹介しています。

Labels:  AWS, DevOps 投稿者:kojima

AWS API とサーバ管理

あけましておめでとうございます。エンジニアの こじま です。

今年もよろしくお願いいたします。

 

今回は,ランサーズの開発・運用を楽にするための

サーバ管理システムのご紹介をします。

弊社プラットフォームでは AWS を利用しています。

 

AWS には AWS マネジメントコンソールが提供されますが,

ランサーズでは,自社製のシステムでサーバ情報を一元管理し

各ツールと連携し開発・運用効率を図っています。

サーバ情報は以下のようなビューを持ち一元管理をしています。

サーバ一覧

 

また,不必要にサーバにログインしなくて済むように

ウェブサーバなどのログの表示も WEB UI から可能としています。

アクセスログ

 

今回は,サーバ管理を実現するために利用した

AWS の Ruby ライブラリによる API 取得についてご紹介します。

あらかじめ aws-sdk のインストールと

Endpoint, Access Key, Secret Key を準備ください。

EC2 インスタンスの Private IPAddress の一覧を表示するサンプルを記述します。

#!/bin/env ruby
require 'aws-sdk'

ec2 = AWS::EC2.new(
:ec2_endpoint = 'ec2.ap-????????.amazonaws.com',
:access_key_id = '??????????',
:secret_access_key = '??????????'
)

p ec2.instances.map{|m| m.private_ip_address}

 

実行結果

$ ./aws_sdk_sample1.rb
["10.0.1.11", "10.0.101.11"]

 

とても簡単に AWS の情報を取得できます。
このようにしてランサーズでは,
ユーザ様に快適なプラットフォームを提供すべく日々努力をしております。

ランサーズではサービスを成長させてくれるエンジニア、デザイナーを募集しています!
ご興味がある方は、以下URLよりご応募ください。

PHPエンジニア
Rubyエンジニア
フロントエンドエンジニア
インフラエンジニア
新卒エンジニア
その他採用情報

関連記事

AWSのスポットインスタンス運用

はじめまして。ランサーズインフラエンジニアの金澤です。 AWSのスポットインスタンスを利用したことはありますか? スポットインスタンスとは、AWSの余剰インスタンスを入札制で提供する仕組みです。 各インスタンスの1時間あたりの料金比較しても、スポットインスタン …

究極のPDCA!その名も「PD鮨A」でプロダクト開発を超速化!

ランサーズのtsuyoshiです。 今回も社内コミュニケーションを活性化させ、プロダクトをよりよくするような【ネタ】です。 サービスやプロダクト開発のPDCAにおいて、日々カイゼン要望を吸収し、高速なPDCAを回すことが必要不可欠です。 ですが、よくよく考える …

thumbnail
Subversionで413レスポンスが返却された場合の対処

ご無沙汰しております。keiです。 Subversionで、大容量ファイルをコミットする際に遭遇した エラーの対処方法について、共有の意味で記事化させて頂きます。 事象 開発が完了したプロジェクトのソースをまとめてコミットしようとした際に、 ステータスコード4 …