iku8log

Webエンジニア、SEO、Web解析等々しております。タダのメモ。

Vagrantで作成した仮想マシンにVirtualHostの設定を行う

ホストOS: MacOSX ゲストOS: CentOS7 192.168.33.10

ゲストOSのApacheにバーチャルホストの設定を行う。バーチャルホスト名をmytestとする。

httpd.confファイルに以下を追記(ゲストOS)

<VirtualHost *:80>
    DocumentRoot "/home/vagrant"
    ServerName mytest
</VirtualHost>

/home/vagrantの権限を755とかにしておく。 Apache リスタート

ホストOS(Mac)でhostsファイルの設定

/etc/hostsに以下を追記(ホストOS)

192.168.33.10 mytest

CentOS7で「Apache2.4」と「PHP7」をソースからインストールしphp-fpm経由で起動する

現在時点で最新のバージョンを使うことにします。

環境・各種バージョン

  • CentOS7
  • Apache2.4.29
  • APR 1.6.3
  • apr-util-1.6.1
  • PHP7.1.10

インストール・ソース置き場所

インストール場所は→/opt/app/local ソースは→/opt/app/local/src

Apacheのインストール

apr, apr-util,pcre等々インストールしておかなくてはなりません。そのうち追記します。

上記インストール後Apacheのソースをダウンロードして回答してインストールを実行します。

PHPのインストール

事前に必要なものをインストール

sudo yum install libxml2-devel

sudo yum install bzip2-devel

sudo yum install curl-devel

sudo yum install libjpeg-devel

sudo yum install libpng-devel

sudo yum install libXpm-devel

sudo yum install -y freetype-devel

sudo yum install gmp-devel -y

yum install epel-release

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm


sudo yum install libmcrypt

sudo yum install libmcrypt-devel

sudo yum install aspell-devel

sudo yum install aspell-devel.x86_64

sudo yum install recode-devel

ソース取得

sudo wget -O php-7.1.10.bz2 http://jp2.php.net/get/php-7.1.10.tar.bz2/from/this/mirror

インストールの準備

./configure \
    --prefix=/opt/app/local/php-7.1.10 \
    --enable-mbstring \
    --enable-zip \
    --enable-bcmath \
    --enable-pcntl \
    --enable-ftp \
    --enable-exif \
    --enable-calendar \
    --enable-sysvmsg \
    --enable-sysvsem \
    --enable-sysvshm \
    --enable-wddx \
    --with-curl \
    --with-mcrypt \
    --with-iconv \
    --with-gmp \
    --with-pspell \
    --with-gd \
    --with-jpeg-dir=/usr \
    --with-png-dir=/usr \
    --with-zlib-dir=/usr \
    --with-xpm-dir=/usr \
    --with-freetype-dir=/usr \
    --enable-gd-native-ttf \
    --enable-gd-jis-conv \
    --with-openssl \
    --with-gettext=/usr \
    --with-zlib=/usr \
    --with-bz2=/usr \
    --with-recode=/usr \
    --with-mysqli=mysqlnd \
    --enable-mysqlnd \
    --with-pdo-mysql=mysqlnd \
    --with-readline \
    --enable-fpm

php.ini設定

/opt/app/local/src/php-7.1.10/php.ini-productionをコピー↓

/opt/app/local/php-7.1.10/lib/php.ini

php-fpm設定

php-fpm.conf.defaultをコピー↓

/opt/app/local/php-7.1.10/etc/php-fpm.conf

[global]
pid = /opt/app/local/php-7.1.10/var/run/php-fpm.pid



include=/opt/app/local/php-7.1.10/etc/php-fpm.d/*.conf

/opt/app/local/php-7.1.10/etc/php-fpm.d/www.conf


user = nobody
group = nobody

listen = 127.0.0.1:9000

listen.allowed_clients = 127.0.0.1
pm = static

pm.max_children = 5

pm.start_servers = 2

pm.min_spare_servers = 1

pm.max_spare_servers = 3

composerインストール

sudo /opt/app/local/php-7.1.10/bin/php php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
sudo /opt/app/local/php-7.1.10/bin/php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
sudo /opt/app/local/php-7.1.10/bin/php composer-setup.php
sudo /opt/app/local/php-7.1.10/bin/php ./composer.phar --version

phpとパスをとうしておくと、sudo /opt/app/local/php-7.1.10/bin/php 指定しなくて良い(最後の行)

Laravelでもインストールしてみる

sudo /opt/app/local/php-7.1.10/bin/php create-project --prefer-dist laravel/laravel=5.5 myApp

バーチャルホスト設定

以下のように設定してみた。php-fpmを使うと*.phpにマッチするまで見てくれないので、index.phpを指定した。

<VirtualHost *:80>
    DocumentRoot "/home/vagrant/myAp/public"
    ServerName myapp
    DirectoryIndex index.php

    <Directory "/home/vagrant/myAp/public">
        AllowOverride All
    </Directory>
</VirtualHost>

プロメテウス、node_exporterの構築メモ

プロメテウス、node_exporter 構築

Screen

screen使うと色々起動する時便利だわ

  • 新規作成

    • ctrl+a c
  • 切り替え

    • ctrl+a n
  • アタッチ(入る)

    • screen -r ID
    • セッション一つならidいらず

Goインストール

/usr/local/srcにファイルを落とす

sudo wget https://storage.googleapis.com/golang/go1.9.1.linux-amd64.tar.gz 

解凍 local以下にgoを配置

sudo tar -C /usr/local -xzf go1.9.1.linux-amd64.tar.gz

パスを通す

export PATH=$PATH:/usr/local/go/bin

以下のページ通りのインストール https://golang.org/doc/install?download=go1.9.1.linux-amd64.tar.gz

プロメテウス

https://prometheus.io/download/ ダウンロードページ

ファイルダウンロード

sudo wget https://github.com/prometheus/prometheus/releases/download/v1.8.0/prometheus-1.8.0.linux-amd64.tar.gz

解凍

sudo tar xvfz prometheus-1.8.0.linux-amd64.tar.gz

usr/localに移動させとく

mv prometheus-1.8.0.linux-amd64 ../prometheus

設定ファイルを指定して、起動

sudo ./prometheus --config.file=prometheus.yml

node exporter

インストール

https://github.com/prometheus/node_exporter/releases

リリースノートからインストールするもんを選択する

ファイルをダウンロード

/usr/local/srcにでも置きますかね

sudo wget https://github.com/prometheus/node_exporter/releases/download/v0.15.0/node_exporter-0.15.0.linux-amd64.tar.gz

解凍

sudo tar -C /usr/local -xvf node_exporter-0.15.0.linux-amd64.tar.gz

ディレクトリの名前適当に変えておく、バージョンあってもみにくいから

シンボリックリングを貼る

sudo ln -s /usr/local/node_exporter/node_exporter /bin/node_expoter

node_expoter起動

node_expoter

プロメテウスにnodeの設定

  - job_name: 'node'
    static_configs:
      - targets: ['localhost:9100']

URL

http://192.168.33.11:9090/consoles/prometheus.html