プログラミング初心者がアーキテクトっぽく語る

見苦しい記事も多数あるとは思いますが訂正しつつブログと共に成長していければと思います

インフラ

private networkのEC2インスタンスに踏み台インスタンス経由でアクセスする

Private NetworkはInternet Gatewayがなく、Public IPアドレス割当もない、安全なSubnetです。 外部からのアクセスが必要ないEC2インスタンスはPrivate Networkに構築することが一般的です。 それらEC2インスタンスに管理上の理由で外部からアクセスしたい場…

AWSで安全なEC2インスタンスを立ち上げるための鉄則

EC2インスタンスをハッカーに攻撃されて乗っ取られたりしたら嫌ですよね。 でも不必要に怖がっていたらクラウドなんて使えないですよね。 必要なのは正しい知識です。 AWSからBest Practiceが提示されているので理解しておきましょう。 aws.amazon.com 管理…

Linux EC2インスタンスを起動してRemote Desktop接続する

前回はLinxu EC2インスタンスにSSHで接続する手順を紹介しました。 architecting.hateblo.jp しかしGUIを利用したいときもあるかと思います。 今回はAmazon LinuxのMATEというデスクトップ環境へRemote Desktopでアクセスする方法を紹介します。 この公式マ…

Linux EC2インスタンスを起動してSSH接続する

LinuxのEC2インスタンスを作成してSSH接続しましょう。 Step1 Security Groupを作成します 悪意のある攻撃を避けるため、EC2インスタンスに通信できるアドレスを制限します Outbound Ruleは最初から入力されているので必要に応じて変更してください Inbound …

AWSで管理作業用IAMユーザを作成する

AWSアカウントを作成したら最初に実施しておきたいことを紹介しています。 前回はBilling Alarmの有効化について取り上げました。 architecting.hateblo.jp 今回は管理用IAMユーザの作成について紹介します。 管理用IAMユーザの作成 AWSではRootユーザで作業…

AWSでBilling Alarmを有効にする

AWSアカウントを作成したら最初に実施しておきたいことを紹介しています。 前回はRootアカウントのMulti Factor Authentication(MFA)の有効化について取り上げました。 architecting.hateblo.jp 今回はBiling Alarmの設定について紹介します。 Billing Ala…

AWSのRootアカウントのMFAを有効にする

クラウドの勉強のためにAWSのFree Tierでアカウントを作成しました。 アカウントを作成した後、最初にやっておいた方がよいことをまとめます。 まずはRootアカウントのMulti Factor Authentication(MFA)の有効化です。 RootアカウントのMFA有効化 Rootアカ…

Ansibleの基礎

歴史 概要 基本設計理念 製品(OSS) 製品(有償) Dry-run機能 Orchestration機能 機器、ベンダごとのモジュールが必要 構成 module task play playbook inventory 基本的な使い方 実行方法 ansibleコマンド ansible-playbookコマンド 変数 変数(外部ファ…

SSH接続の近代化 - 公開鍵認証 + コマンド入力簡略化 + 踏み台サーバ対応

目的 自分のPCからSSH接続する機会自体少ないので困ってることはありませんが、環境が旧世代的な感じがしたので改善することにしました。 まず最近、廃れ気味なパスワード認証をやめて公開鍵認証方式に統一します。 踏み台サーバを経由した多段接続では今ま…

Terraformの特性を知る

Terraformは優れたツールだ。 Ansibleにはない、純粋な宣言型の振る舞いを経験するとある種の感動を覚える。 しかし使い込んでいくとわかるが癖がある。 ツールを使いこなすにはそのツールの背景にある思想、設計、そして癖を理解することが重要だ。 ここで…

Terraformの基礎

TerraformはInfrastrcuture As Codeを支えるオーケストレーションツールの1つである。 クラウド/非クラウドに関わらずデータセンタ全体のインフラを横断的にコード管理できることから最近、注目度が高まっているようである。抑えておいて損はない。 このよ…

Ansbileは宣言型か?手続き型か?

Ansibleは宣言型だろうか?手続き型だろうか? ドキュメントによって見解が異なるので混乱しやすいポイントだ。 Ansible寄りのドキュメントでは宣言型と言われることが多い。 一方、Terraform、Puppet、Kuberenetesなど純粋な宣言型ツールの視点からはAnsibl…

nginxコンテナを自己署名認証局でHTTPS化する

前回の記事では自己署名証明書を使ってリバースプロキシとして動作するnginxコンテナをHTTPS化しました。 architecting.hateblo.jp しかしブラウザがエラーや警告を色々出すのでHTTPS化した実感がありませんでした。 今回は自己署名認証局が署名した証明書を…

nginxコンテナを自己署名証明書でHTTPS化する

前回、Dockerでnginxを入れて基本的なことを試して以下の記事を書きました。 architecting.hateblo.jp このときHTTPS化も試していたのですが話が長くなるので別の記事にすることにしました。 はじめに 今やサービスの入り口は全てHTTPS化するのが常識となり…

DockerでMySQLを試してみる

先日、nginxのDockerを試しました。その勢いでデータベースのDockerも試してみます。 まずは一番有名なMySQLからです。MySQLは大昔に触ったことがありますが、Dockerでセットアップするのは始めてです。Docker固有のポイントがあると思うので勉強していきた…

dockerでnginxを試してみる

nginxをよく見かけます。 1度くらい触ってみようと思って数年。ようやく重い腰を上げたいと思います。 とりあえず試して削除したいときに便利なのがdockerです。 dockerを利用してローカルPCで基本機能を試してみました。 コンテナ実行 docker run -it --na…

NoSQLデータベースの種類

以前、データベースの大半はRDBMSと言われているが、NoSQLデータベースを適材適所に配置する流れは続いている。NoSQLの種類とそれぞれの特徴、そして代表的な実装を知っておくことは重要である。 ここでは代表的なNoSQLデータベースを紹介する。 Key-Value D…

Puppetの基礎

Configuration Management Toolと言えばAnsibleが持て囃されている。 少し適用範囲が狭いことがネックだが実はPuppetも優れたツールだ。Ansibleよりも宣言的な使い方ができる点に特徴がある。宣言的なインフラ管理を志向する人、既にAnsibleを使っているが他…

オーケストレーションツールと構成管理ツール

オーケストレーションツール 構成管理ツール 連携 Chef Puppet Ansible SaltStack Terraform エージェント型とエージェントレス型 エージェント型 エージェントレス型 宣言型と手続き型 宣言型 手続き型 システムの実行を支えるインフラ。サーバ、OS、ミドル…