以下に挙げたAWS公式ドキュメントを読んでチュートリアルを実施していればAWSをいじった経験がなくてもアソシエイト試験は軽々突破できるぜよ!!
そう信じて頑張っていこうぜよ!!
以下に挙げたAWS公式ドキュメントを読んでチュートリアルを実施していればAWSをいじった経験がなくてもアソシエイト試験は軽々突破できるぜよ!!
そう信じて頑張っていこうぜよ!!
例えば以下のようなリストを
[5, 4, 3, 5, 5, 5, 4, 4, 3, 2]
こうしたい場合のTipsです
[5, 5, 5, 5, 4, 4, 4, 3, 3, 2]
from collections import Counter a = [5, 4, 3, 5, 5, 5, 4, 4, 3, 2] counter = Counter(a) result = [k for k, v in counter.most_common() for _ in range(v)] print(result) # [5, 5, 5, 5, 4, 4, 4, 3, 3, 2]
色々やりかたはあると思うけど、とりあえずリストを手っ取り早く要素毎に辞書形式でカウントアップしてくれるCounter
と要素数毎に返してくれるmost_common()
を使って実装してみた。
まず、対象のリストをCounter()
メソッドを使って要素: 要素数
の辞書型で返すようにする
a = [5, 4, 3, 5, 5, 5, 4, 4, 3, 2] counter = Counter(a) print(counter) # Counter({5: 4, 4: 3, 3: 2, 2: 1})
ちなみにtype
関数で型を見るとcollection
型になっている
>>> type(counter) <class 'collections.Counter'>
これをさらにmost_common()
を使って値の昇順で返すようにして、
>>> counter.most_common() [(5, 4), (4, 3), (3, 2), (2, 1)]
あとは以下のようなイメージのfor
ループを内包表記で記載すればリストの要素を頻出順でソートすることができた!
このfor
ループを
reuslt = [] for k, v in counter.most_common(): for _ in range(v): result.append(k)
こんな感じで内包表記!
result = [k for k, v in counter.most_common() for _ in range(v)]
もっと良い方法等あれば教えてつかーさい^^
Sphinx + @gitlab でGitLab Pagesに公開するのCIも簡単に導入できるし最強すぎる!!
— としゆき@インフラエンジニア (@Tocyuki) 2019年1月23日
最近、仕事で運用しているサービスのドキュメントをもうWordで作りたくないという思いがすごくてSphinxがよさそうなのでいろいろいじってたらGitLab CI + GitLab Pages + Sphinxが最強のドキュメントビルド環境すぎたのでやり方を説明します。
.gitlab.yml
を作成し、GitLabへPush後、CI結果を確認なんか適当にREADMEだけあるようなリポジトリを作成してクローンしておく
$ sphinx-quickstart -q -p sphinx-handson -a Tocyuki -v 1.0 sphinx-handson
状態の確認
$ git status On branch master Your branch is up-to-date with 'origin/master'. Untracked files: (use "git add <file>..." to include in what will be committed) Makefile conf.py index.rst make.bat
GitLabへPushしておく
$ git add . $ git commit -m 'Create sphinx-handson project' $ git push
.gitlab.yml
を作成し、GitLabへPush後、CI結果を確認以下のページを参考にして.gitlab.yml
を作成する
image: alpine pages: script: - apk --no-cache add py2-pip python-dev - pip install sphinx - apk --no-cache add make - make html - mv _build/html/ public/ artifacts: paths: - public only: - master
GitLabへPush
$ git add . $ git commit -m 'Create .gitlab-ci.yml' $ git push
CI結果がパスしていることを確認
以下のページからGitLab PagesのURLを確認する
画面が正常に表示されることを確認
GitLabでCI環境作ってしまえばGitLab Pagesへテスト後自動でデプロイされるしめちゃ便利!
GitHubはデファクトスタンダードだけど、GitLabですべて完結できるのは大きいなぁと感じました!
今後はGitLabを中心に使っていこうかなー。
今回使用したリポジトリです。 gitlab.com
Sphinxユーザーの会 sphinx-users.jp
タイムスタンプやアルファベット順などの連続するプレフィックスを使用すると、Amazon S3 の特定のパーティションに大量のキーが集中し、そのパーティションの I/O 容量がひっ迫する場合があります。
上記が原因で以下のような問題が発生することがある。
Amazon Simple Storage Service (Amazon S3) のワークロードが急増する (「リクエスト率およびリクエストパフォーマンスに関する留意事項」で説明されているリクエスト率を超える) と、ワークロードに応じて Amazon S3 のパフォーマンスがスケールされません。これに伴って、HTTP 500 や 503 エラーが発生する場合があります。
上記問題に対応するにはどうするか?
ランダムなキー名にすると、I/O の負荷は複数のインデックスパーティションに分散されます。
各オブジェクト名にランダム文字列をプレフィックスとして付加すればよいってことですねー!
Amazon ECSを使っていて、EC2にIAMロールを適用してしまうと全部のコンテナに適用されてしまうのでコンテナ毎にIAMロールを適用できないのかな〜っと思っていたら2年も前にできるようになってる〜!
タイトルは釣りですが、業務でちょこちょこAWSいじるようになった(仕向けた)ので、とりあえず資格も取得するぞと意気込んでおりまして、すでに合格したという体でお送りいたします!!
1月はAWSソリューションアーキテクトの資格を取得するぞ!
— としゆき@インフラエンジニア (@Tocyuki) 2018年12月30日
というのも、実はすでに有料のバウチャー付きトレーニングを受けているので取らなければならないのです/(^o^)\
追記
スコアはイマイチだったけどとりあえず合格ぅ! pic.twitter.com/f3jYUW9fTq
— としゆき@インフラエンジニア (@Tocyuki) 2019年2月16日
とりあえず以下の流れで大丈夫かな?
試験ガイドを確認し、どんな試験なのかなぁ〜、というのをなんとなく把握しておく。
分野 | 試験における比重 |
---|---|
分野 1: 回復性の高いアーキテクチャを設計する | 34% |
分野 2: パフォーマンスに優れたアーキテクチャを定義する | 24% |
分野 3: セキュアなアプリケーションおよびアーキテクチャを規定する | 26% |
分野 4: コスト最適化アーキテクチャを設計する | 10% |
分野 5: オペレーショナルエクセレンスを備えたアーキテクチャを定義する | 6% |
合計 | 100% |
分野 1: 回復性の高いアーキテクチャを設計する
分野 2: パフォーマンスに優れたアーキテクチャを定義する
分野 3: セキュアなアプリケーションおよびアーキテクチャを規定する
分野 4: コスト最適化アーキテクチャを設計する
分野 5: オペレーショナルエクセレンスを備えたアーキテクチャを定義する
AWS Well-Architected フレームワークのホワイトペーパーを確認し、特定のアーキテクチャがクラウドのベストプラクティスに沿っているかどうかの指標を理解する。
いわゆるブラックベルトですね!主要サービスのものは一通り確認しておくべし!
併せてホワイトペーパー、ガイドと API リファレンスも見ておくとなおよし!
AWSではさまざまなチュートリアルが用意されているので、チュートリアルに沿って実際に手を動かしてみると理解もめちゃくちゃ深まります!というかサービスをまったく使ってなくて試験受けるとなるとほんと暗記だけで終わってしまうので実際のサービスは一通りいじっておくことをオススメします。
サンプル問題が公開されているので問題内容の確認と分析を行う。
一通りのインプットが完了したら、模擬試験を受験し、現在の実力の確認と、問題内容のスクリーンショット取得を行い、問題の分析を行いましょう!
あと年末更新されたこの参考書もおすすめです!
徹底攻略 AWS認定 ソリューションアーキテクト ? アソシエイト教科書
だいたいこのぐらいやれば、きっと大丈夫でしょう!
AWSってすごく便利だけど、従量課金で結局いくらぐらいかかるのかがわからないから見積もりを行う方法を調べてみたよ。
このツールで基本的な要件は満たせそう!
これは主にオンプレミス環境との比較で使うツールかな?
提案とかには使えそう。
AWS Simple Monthly Calculator(簡易見積ツール)を使えばやりたいことやれそうな感じなのでした!
仕事で使ってるtmuxを動かしているサーバーがあるのですが、タワー型のやっすいの使っててそこにCentOS7突っ込んでオフィスに直置きしてます。法定停電でもあった日にゃ育てたtmuxのセッションが死滅し、その明けの出勤は気が重くなること請け合いな感じになっていたので、CentOSからの脱却もかねてAWS上にUbuntuサーバーを立てて俺色に染めてやろうと思ったわけですはい。とりあえず手動でガシガシと構築していって最終的にAnsibleのPlaybookを作るとこまでやっております。
基本的にこの子たちがいればどこにいてもやっていけると思う。
弊社はほとんどがCentOSでgitやtmuxが最初から入ってなくてしかもyum
でインストールできるのはバージョンが古いものになってしまうけど、Ubuntuの18.04.1 LTSはさいしょからtmux 2.6
とgit 2.17.1
が入っているのでとっても良いぞってなったのでこれからUbuntuを愛していこうとおもいます。
AWSでのインスタンス作成は割愛します。
自分が使い倒すだけのサーバーなのでrootアカウントのパスワードを設定しパスワードログインができるようにします。
# passwd Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully
/etc/ssh/sshd_config
を以下のように編集
- PasswordAuthentication no + PasswordAuthentication yes + PermitRootLogin yes
sshdの再起動
# systemctl restart sshd
まずはzshを以下のようにインストール
# apt install zsh
お次に公式手順に従いzplugをインストール
# curl -sL --proto-redir -all,https https://raw.githubusercontent.com/zplug/installer/master/installer.zsh | zsh
pecoのインストール
cd /usr/src wget https://github.com/peco/peco/releases/download/v0.5.3/peco_linux_amd64.tar.gz tar zxvf peco_linux_amd64.tar.gz cd peco_linux_amd64 cp -p peco /usr/local/bin peco --version peco version v0.5.3 (built with go1.10)
ghqを使うためにgoをインストール
apt-get install gcc make apt-get install golang go version go version go1.10.4 linux/amd64
.zshrcの配布
ghqのインストール
go get github.com/motemen/ghq
※ちなみにghqコマンドにパスを通すために.zshrc
または.zshenv
にに以下を追記する必要があります。
## golang export GOPATH=$HOME export PATH=$PATH:$GOPATH/bin
zshをデフォルトのログインシェルにする
chsh -s /usr/bin/zsh
公式手順にのっとり以下のようにインストールを実施
Installation Guide — Ansible Documentation
apt-get update apt install software-properties-common apt-add-repository ppa:ansible/ansible apt update apt install ansible
以下手順にのっとり以下のようにスクリプトでインストールを実施
curl -fsSL get.docker.com -o get-docker.sh sh get-docker.sh # Executing docker install script, commit: 46dc063 + sh -c apt-get update -qq >/dev/null + sh -c apt-get install -y -qq apt-transport-https ca-certificates curl >/dev/null + sh -c curl -fsSL "https://download.docker.com/linux/ubuntu/gpg" | apt-key add -qq - >/dev/null Warning: apt-key output should not be parsed (stdout is not a terminal) + sh -c echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic edge" > /etc/apt/sources.list.d/docker.list + [ ubuntu = debian ] + sh -c apt-get update -qq >/dev/null + sh -c apt-get install -y -qq --no-install-recommends docker-ce >/dev/null + sh -c docker version Client: Version: 18.09.0 API version: 1.39 Go version: go1.10.4 Git commit: 4d60db4 Built: Wed Nov 7 00:49:01 2018 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 18.09.0 API version: 1.39 (minimum version 1.12) Go version: go1.10.4 Git commit: 4d60db4 Built: Wed Nov 7 00:16:44 2018 OS/Arch: linux/amd64 Experimental: false If you would like to use Docker as a non-root user, you should now consider adding your user to the "docker" group with something like: sudo usermod -aG docker your-user Remember that you will have to log out and back in for this to take effect! WARNING: Adding a user to the "docker" group will grant the ability to run containers which can be used to obtain root privileges on the docker host. Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface for more information.
まだやってないけど、Ubuntuに変えたのでこれからは普通にTravisCIを使った自動テストも組めるぞ~! github.com
やはりCentOSはちょっと使いづらいなぁと感じつつ、VimからNeoVimへの移行もしないといけないかなぁと思い始めたのでまた別の機会にまとめようかと思いますー!
AnsibleのroleテストはTravisCIが主流だというので試してみようじゃないという趣旨の記事です。
やること 以下のような感じで適当にリポジトリを作成しておく
作成したリポジトリをClone こんな感じのディレクトリ構成となる TravisCIへログインを行う Travis CI - Test and Deploy Your Code with Confidence
右上のアカウントアイコンをクリックし、「Setting」を選択し、対象のリポジトリを有効にする
TravisCI上でテストが走ることを確認
そして正常に完了することを確認
矢印部分をクリックし、Markdownを選択するとなんかでてくるのでそれをコピーして
こんな感じで記載してGitHubへPushする GitHubで以下のように表示されていることを確認
おわりに 超簡単にですがこれでAnsible roleの自動テストができるようになったぞ! ただ、TravisCIはUbuntuかMacにしか対応しておらず、そのほかのディストリビューションでやろうとした場合、Dockerを使ったりする必要があるのでそれはまたの機会に! 今回のリポジトリはこちら!
GitHubにリポジトリを作成
ansible-galaxy
コマンドでrole
のひな型を作成$ git clone https://github.com/Tocyuki/ansible-role-travisci-handson.git
role
のひな型を作成する$ ansible-galaxy init -f ansible-role-travisci-handson
- ansible-role-travisci-handson was created successfully
$ tree ansible-role-travisci-handson
ansible-role-travisci-handson
├── LICENSE
├── README.md
├── defaults
│ └── main.yml
├── files
├── handlers
│ └── main.yml
├── meta
│ └── main.yml
├── tasks
│ └── main.yml
├── templates
├── tests
│ ├── inventory
│ └── test.yml
└── vars
└── main.yml
8 directories, 9 files
.travis.yml
を作成tasks/main.yml
に適当に記述しておく---
# tasks file for ansible-role-travisci-handson
- name: Debug Message
debug:
msg: 'Hello World!!!'
.travis.yml
に以下のように記載---
language: python
python: 2.7
sudo: false
addons:
apt:
packages:
- python
install:
- pip install ansible
- ansible --version
- printf '[defaults]\nroles_path=../' >ansible.cfg
script:
- ansible-playbook tests/test.yml -i tests/inventory --syntax-check
- ansible-playbook tests/test.yml -i tests/inventory -C
- ansible-playbook tests/test.yml -i tests/inventory
TravisCI側で実行対象のリポジトリを設定する
GitHubへプッシュしTravisCIでテストされることを確認
tasks/main.yml
と.travis.yml
をgit add
する$ git add tasks/main.yml .travis.yml
git commit
を行う$ git commit -m "Add tasks/main.yml .travis.yml"
[master c367d3a] Add tasks/main.yml .travis.yml
2 files changed, 23 insertions(+), 1 deletion(-)
create mode 100644 .travis.yml
git push
を実行$ git push
Counting objects: 5, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (4/4), done.
Writing objects: 100% (5/5), 655 bytes | 0 bytes/s, done.
Total 5 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
To https://github.com/Tocyuki/ansible-role-travisci-handson.git
9edd540..c367d3a master -> master
tests/test.yml
にconnection: local
を入れわすれてビルドに失敗したので修正後、再度git push
実行- hosts: localhost
connection: local
remote_user: root
roles:
- ansible-role-travisci-handson
$ gaa ; gcmsg "Fix tests/test.yml"; gp
[master 222b373] Fix tests/test.yml
1 file changed, 2 insertions(+), 1 deletion(-)
Counting objects: 4, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (4/4), done.
Writing objects: 100% (4/4), 452 bytes | 0 bytes/s, done.
Total 4 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
To https://github.com/Tocyuki/ansible-role-travisci-handson.git
c367d3a..222b373 master -> master
READMEにテスト結果のバッチをつける
README.md
に張り付けるgit diff README.md
diff --git a/README.md b/README.md
index 225dd44..044d484 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,8 @@
Role Name
=========
+[![Build Status](https://travis-ci.org/Tocyuki/ansible-role-travisci-handson.svg?branch=master)](https://travis-ci.org/Tocyuki/ansible-role-travisci-handson)
+
A brief description of the role goes here.
Requirements
さっそく社内のZabbixをアップグレード! https://t.co/63WbpOebg0
— としゆき👀🚀 (@Tocyuki) 2018年10月3日
1 Red Hat Enterprise Linux/CentOS [Zabbix Documentation 4.0]
Zabbix4.0 alpha9からのアップグレードだったので楽ちんでした!
Windows10ではDocker for WindowsとVirtualBoxが混在できないので、Docker使ってて、VirtualBox使いたくなると結構めんどうなんですよね。。。
なぜかぼくの端末ではインターネット上に転がっている情報をそのまま試すだけではうまくいかず、ちょいとアレンジが必要だったのでメモしておきます。
bcdedit /set {current} hypervisorlaunchtype off
とりあえず上記コマンドを実行して再起動すれば大丈夫でした!
わけわからんちん!
今日からRedHat主催の「Automation with Ansible」の研修を受けに品川まで行ってまいりました。
↓これ
RHD407 : Automation with Ansible|CTC教育サービス 研修/トレーニング
初日はごくごく基本的なことしかやらなかったので、演習をどんどん進めて最終日に色々と質問しようかなぁと企んでおります。
この研修を参考に社内向けのハンズオン開催しようと思っているのですが、どうやらlightbulbがもとになってるようなので、もうlightbulbをそのまま使うのがなんだかんだ良いかもなぁとか思ったり。
うん、なんだかいけそう。
今日から4日間Redhat主催のAnsible研修スタート!とりあえず初日のお昼はMr.Chickenでシンガポールチキンライスのミックス!注文したら一瞬で出てきて焦ったw
— としゆき (@Tocyuki) 2018年9月10日
美味しゅうございました🙏 pic.twitter.com/ghNgDhI1bt
明日はここへ行ってみよう^^
— としゆき (@Tocyuki) 2018年9月10日
辛さ13,000倍も可能!品川のカレー屋さんのカレーが攻めすぎ! https://t.co/CYuI4mYWNI @tokyo_calendarさんから
ルーティン作れなさすぎてツライ・・・。けんすうさんに癒やされました。
けんすうさん最高。
— としゆき (@Tocyuki) 2018年9月10日
> 僕、イケダハヤトさんやはあちゅうさんが炎上した内容を、パクって表現だけ変えて投稿するっていう実験をたまにやってるんですよ。 https://t.co/BqNF6dC949
最近、phpIPAMを弄り倒しております。
こやつかゆいところに手が届くのか届かないのかなかなか触り始めるといろいろうまくいかなかったり、意外と使いにくい部分があったりでいろいろと発見がある毎日でございます。
とりあえず、ホストの存在確認と、ホストの自動登録は定期実行しておきたいなと思いまして、どうすればよいのかなぁと調べてみるとやはりcronで実行させるようですね。
以下のような感じで、実行ユーザーのcronに記載してあげればOKでした!
$ sudo crontab -l -u apache */15 * * * * /bin/php /var/www/phpipam/functions/scripts/pingCheck.php */15 * * * * /bin/php /var/www/phpipam/functions/scripts/discoveryCheck.php
実戦投入力を上げていこう。何事も運用に乗らなければ意味がない。それは私生活でも仕事でもそう。筋トレも柔術もロードバイクも継続的に運用されて時間経過によるステージアップを積み重ねなければ。仕事でも運用改善に注力して、ひとつづつ確実に導入したものを運用にのせて改善していく。
— としゆき (@Tocyuki) 2018年8月11日
というわけで、監視周りも改善させていくぞ〜!
というのも現在の業務でのZabbixの構成が以下のような感じで各ロケーションにZabbixサーバーを構築し、設定もそれぞれのロケーションに構築しているZabbixサーバーで行っているという状況。
現在、本番運用しているデータセンターが3箇所あり、基本的には同じアプリケーションを運用しているので、各データセンターにZabbix Serverがいると結構めんどくさい。
めんどくさいポイント&デメリットしては以下が挙げられる。
という感じで挙げたらキリがないのですが、そんな感じなのでこういう構成にしようと思います。
構成としてはZabbix Proxy構成に変更するという感じですかね。
AWS環境をもうひとつのデータセンターと見立てて、そこを中心とした運用システムを構築していきたいなぁという目論見であります。
というわけで以下の環境でZabbixサーバーを構築してきます。
$ sudo rpm -i https://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm
$ sudo yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-get mysql
$ mysql -u root -h mysql.xxxxxxxxxxxx.ap-northeast-1.rds.amazonaws.com -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MySQL connection id is 447 Server version: 5.7.22-log Source distribution Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MySQL [(none)]> create database zabbix character set utf8 collate utf8_bin; Query OK, 1 row affected (0.03 sec) MySQL [(none)]> grant all on zabbix.* to zabbix@`%` identified by '<Password>'; Query OK, 0 rows affected, 1 warning (0.06 sec)
$ sudo zcat /usr/share/doc/zabbix-server-mysql-4.0.0/create.sql.gz | mysql -u root -h mysql.xxxxxxxxxxxx.ap-northeast-1.rds.amazonaws.com -p zabbix
zabbix_server.conf
にDB接続情報を記載$ sudo diff /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.org 92d91 < DBHost=mysql.xxxxxxxxxxxx.ap-northeast-1.rds.amazonaws.com 127d125 < DBPassword=<Password>
$ systemctl start zabbix-server $ systemctl status zabbix-server
$ sudo vi /etc/httpd/conf.d/zabbix.conf - # php_value date.timezone Europe/Riga + php_value date.timezone Asia/Tokyo
http:// IPアドレス or サーバー名/zabbix
にアクセスし、初期設定を行う!あとは各ロケーションにZabbix Proxyを配置して実際に監視データを取得していきたいと思います〜!
実戦投入力を上げていこう。何事も運用に乗らなければ意味がない。それは私生活でも仕事でもそう。筋トレも柔術もロードバイクも継続的に運用されて時間経過によるステージアップを積み重ねなければ。仕事でも運用改善に注力して、ひとつづつ確実に導入したものを運用にのせて改善していく。
— としゆき (@Tocyuki) 2018年8月11日
というわけでとりあえず今色々やってしまっているが、IPアドレスやラック構成図、危機管理等全部Excelでやっている状態なのでphpIPAMを導入して運用に乗せるぞ〜!
— としゆき (@Tocyuki) 2018年8月11日
危機管理!!!
というわけでさっそくAWS上にphpIPAMを構築してみる!
$ sudo yum install httpd mysql php php-cli php-gd php-common php-ldap php-pdo php-pear php-snmp php-xml php-mysql php-mbstring git
$ sudo yum install epel-release $ sudo yum install php-mcrypt
$ grep timezone /etc/php.ini ; Defines the default timezone used by the date functions ; http://php.net/date.timezone ;date.timezone = date.timezone = Asia/Tokyo
/var/www/phpipam
にインストールするための設定$ cat /etc/httpd/conf.d/phpipam.conf Alias /phpipam/ /var/www/phpipam/ <Directory "/var/www/phpipam"> require all granted </Directory>
$ sudo systemctl enable httpd $ sudo systemcrl start httpd
git clone
を行い、モジュールをCloneする$ cd /var/www $ sudo git clone https://github.com/phpipam/phpipam.git Cloning into 'phpipam'... remote: Counting objects: 18778, done. remote: Compressing objects: 100% (18/18), done. remote: Total 18778 (delta 8), reused 17 (delta 7), pack-reused 18752 Receiving objects: 100% (18778/18778), 14.13 MiB | 4.82 MiB/s, done. Resolving deltas: 100% (13517/13517), done.
$ sudo chown -R apache:apache /var/www/phpipam $ cd /var/www/phpipam $ find . -type f -exec chmod 0644 {} \; $ find . -type d -exec chmod 0755 {} \;
$ cp config.dist.php config.php $ chown apache:apache config.php $ chmod 640 config.php
$ sudo diff config.dist.php config.php 6c6 < $db['host'] = 'localhost'; --- > $db['host'] = 'mysql.xxxxxxxxxxxxxxxxxxxxxxxxxx.rds.amazonaws.com'; 105c105 < define('BASE', "/"); --- > define('BASE', "/phpipam/");
http://サーバ名 or IP アドレス/phpipam/
にアクセスし、「New phpipam installation」を選択する
config.php
に指定したDBに自動的にデータベースとテーブルの作成が行われる
config.php
に設定した値が表示される
git pull
を実施するだけ!とりあえずインストールできたので、これからどんどん使い倒すぞ〜!