1000台同時SSHオペレーション環境を構築するにあたって、手元のローカル環境の性能限界の問題を解決するために、オペレーションサーバをSSHクライアントとすることによりSSH実行を高速化した。実行環境としてDocker、レジストリとしてAmazon ECR(EC2 Container Registry)を用いて、ローカル環境とオペレーションサーバ環境を統一することにより、オペレーションサーバの構成管理の手間を削減した。 はじめに システム構成 実装上の工夫 オペレーションサーバ越しのroot権限実行 rawモジュールとscriptモジュールのみの利用 Ansibleの実行ログのGit保存 まとめと今後の課題 はじめに 3年前に Ansible + Mackerel APIによる1000台規模のサーバオペレーション - ゆううきブログ という記事を書いた。 この記事では、ホストインベントリと
私はかつて、 ssh-chat というプログラムを書きました。 ssh http://t.co/E7Ilc0B0BC pic.twitter.com/CqYBR1WYO4 — Andrey ???? Petrov (@shazow) December 13, 2014 アイデアは単純なもので、ターミナルを開いてこのようにタイプするだけのことです。 $ ssh chat.shazow.net たいていの人はこの後に続けてlsコマンドをタイプするのでしょうが、ちょっと待って。よく見てください。そこにあるのはシェルではなく、なんとチャットルームですよ! 詳しいことはわからないけど、何かすごいことが起こっているようですね。 SSHはユーザー名を認識する sshでサーバーに接続するときに、sshクライアントはいくつかの環境変数をサーバーへの入力として渡します。その中のひとつが環境変数$USERです。
以上の特徴を踏まえた上で、それでは実際に秘密鍵、公開鍵の鍵ペアを作りましょう。 Macの場合の公開鍵認証のやり方 ターミナルを開いた状態では、現在のパスはユーザーのホームディレクトリ( /Users/(ユーザーID) )になっていると思います。 ls -a コマンドでファイルのリストを表示し、もし .ssh ディレクトリが無ければ作成してください。 ディレクトリのアクセス権限は本人しか読み書きできない権限(700)にします。 $ mkdir .ssh $ chmod 700 .ssh .ssh ディレクトリに移動し、ssh-keygenコマンドを実行して秘密鍵と公開鍵のペアを作ります。 パスフレーズは自分が決めた適当な文字列を使用してください。 $ cd .ssh $ ssh-keygen Generating public/private rsa key pair. Enter file
そういえば、githubに頼りっぱなしで、共有リポジトリを作ってどうのこうのというのは試してなかったなと思いこんな感じでやってみた。 $ sudo useradd -d /home/git -s /bin/rbash -c "" -m -k '' git $ cd /home/git/ $ sudo cat > .bash_profile export PATH=/home/git/bin ^C $ sudo mkdir bin $ sudo ln -s /usr/bin/git /home/git/bin して、gitコマンドしか使えない制限のかかったgitユーザーを作る レポジトリを作るときは、 $ cd /home/git $ sudo -u git mkdir repos $ sudo -u git mkdir repos/project.git $ cd repos/projec
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く