CentOS7に稼働中のnginx1.10.2→1.11.9/PHP5.4→7.1/MariaDB 5.5.52→10.1.21/OpenSSL1.0.1e→1.1.0dをアップデート
アップデートいろいろ
CentOS7に対して現状yumではサポートされていないが最新の安定板に更新したい。
* nginx 1.10.2 → 1.11.9
* PHP 5.4.16 → 7.1.1
* MariaDB 5.5.52 → 10.1.21
* OpenSSL 1.0.1e → 1.1.0d
nginx
更新の背景
ちょっと古い記事ですけど公式的に要はmainline版は細かいバグ修正を頻繁にしているので、信頼性が高いですよ~
stable板はメジャーバグのみしか修正しませんよ~ってことみたい。
公式でも推奨してるので、まめにアップデートできるならmainline版でもええんじゃないかなと
NGINXの命名法では、「stable」とは新しい機能が追加されないことを意味します。主要なバグ修正だけがそのバージョンにコミットされます。
新しい機能、パフォーマンスの改善、およびアップデートを維持したい場合は、(皮肉的に)stable板よりも一般に信頼性が高い。mainline版を選択してください
現行バージョン確認
$ nginx -v
nginx version: nginx/1.10.2
$ rpm -qa | grep nginx
nginx-mod-mail-1.10.2-1.el7.x86_64
nginx-1.10.2-1.el7.x86_64
nginx-mod-http-perl-1.10.2-1.el7.x86_64
nginx-mod-stream-1.10.2-1.el7.x86_64
nginx-mod-http-image-filter-1.10.2-1.el7.x86_64
nginx-mod-http-xslt-filter-1.10.2-1.el7.x86_64
nginx-filesystem-1.10.2-1.el7.noarch
nginx-mod-http-geoip-1.10.2-1.el7.x86_64
nginx-all-modules-1.10.2-1.el7.noarch
更新作業
公式を参考に
※旧バージョンを削除するなら実行
$ sudo yum remove nginx
$ sudo vi /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
$ sudo yum install nginx
更新確認
$ nginx -v
nginx version: nginx/1.11.9
$ rpm -qa | grep nginx
nginx-1.11.9-1.el7.ngx.x86_64
nginx起動
$ sudo systemctl start nginx
$ sudo systemctl status nginx
注意
従来「/etc/nginx/nginx.conf」に記載されていた「server」ブロックは
「/etc/nginx/conf.d/default.conf」へと分割されています。
設定が一新されるので更新前にバックアップは必要です。
PHP
更新の背景
PHP 5.4は2015年9月3日にサポート期限が切れているらしいので、最新バージョンにするように案内されてます。
リリースから3年でサポート終了するので現状の最新PHP7.1に合わせておきます。
現行バージョン確認
$ rpm -qa | grep php
php-mbstring-5.4.16-42.el7.x86_64
php-mysql-5.4.16-42.el7.x86_64
php-fpm-5.4.16-42.el7.x86_64
php-pdo-5.4.16-42.el7.x86_64
php-common-5.4.16-42.el7.x86_64
更新作業
$ sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
$ sudo yum install --enablerepo=remi,remi-php71 php-fpm php-mbstring php-mysqli
更新確認
$ rpm -qa | grep php
php-json-7.1.1-2.el7.remi.x86_64
php-fpm-7.1.1-2.el7.remi.x86_64
php-common-7.1.1-2.el7.remi.x86_64
php-pdo-7.1.1-2.el7.remi.x86_64
php-mbstring-7.1.1-2.el7.remi.x86_64
php-mysqlnd-7.1.1-2.el7.remi.x86_64
サービス有効化
$ sudo systemctl start php-fpm
$ sudo systemctl status php-fpm
注意
PHP5→7は下位互換のない点もあるので既存環境のテストを充分に行った方がええでしょう。
ざっくりPHP5で非推奨となってたのはあかんやろうなぁ・・・よう知らんけど
MariaDB
更新の背景
最新のは開発10.2系で行われており、安定板の10.1系の更新も頻繫行われているので、
バグとかもすぐ修正してくれるでしょう。とDB詳しくないので適当に
現行バージョン確認
$ rpm -qa | grep -i mariadb
mariadb-server-5.5.52-1.el7.x86_64
mariadb-libs-5.5.52-1.el7.x86_64
mariadb-5.5.52-1.el7.x86_64
更新作業
公式を参考に
$ sudo vi /etc/yum.repos.d/MariaDB.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
$ sudo yum install mariadb-server
更新確認
$ rpm -qa | grep -i mariadb
MariaDB-common-10.1.21-1.el7.centos.x86_64
MariaDB-client-10.1.21-1.el7.centos.x86_64
MariaDB-shared-10.1.21-1.el7.centos.x86_64
MariaDB-server-10.1.21-1.el7.centos.x86_64
mariadb起動
$ sudo systemctl start mariadb
$ sudo systemctl status mariadb
OpenSSL
更新の背景
2-Jan-2017にOpenSSL 1.0.1シリーズのリリースはサポートを終了の為、1.1.0または1.0.2にアップグレードしてくださいと
公式で案内されたので、安定版は1.1.0シリーズに更新します。
現行バージョン確認
$ rpm -q openssl
openssl-1.0.1e-60.el7.x86_64
$ rpm -qa | grep openssl
openssl-libs-1.0.1e-60.el7.x86_64
openssl-devel-1.0.1e-60.el7.x86_64
openssl-1.0.1e-60.el7.x86_64
更新作業
gccのインストール(コンパイルに必要)
yum install gcc
perlのインストール(コンパイルopensslに必要)
yum install perl-core
手順としては公式からダウンロードしてから適当なディレクトリに展開してインストール
$ cd /usr/local/src
$ wget -
$ sudo tar xvzf openssl-1.1.0d.tar.gz
$ cd openssl-1.1.0d
$ sudo ./config --prefix=/usr --openssldir=/etc/pki/tls shared
$ sudo make
$ sudo make install
更新確認
バージョンは更新された模様
$ openssl version
OpenSSL 1.1.0d 26 Jan 2017
パッケージで入れてないからまぁないのは当然かな
$ rpm -qa | grep openssl
openssl-libs-1.0.1e-60.el7.x86_64
openssl-devel-1.0.1e-60.el7.x86_64
openssl-1.0.1e-60.el7.x86_64
パッケージの削除テストで依存関係がないか確認すると
インストールされても依存関係は移行しないのかな?
$ sudo rpm -e openssl-1.0.1e-60.el7.x86_64 --test
エラー: 依存性の欠如:
openssl >= 1.0.1 は (インストール済み)nginx-1:1.11.9-1.el7.ngx.x86_64 に必要とされています
openssl は (インストール済み)galera-25.3.19-1.rhel7.el7.centos.x86_64 に必要とされています
/usr/bin/openssl は (インストール済み)authconfig-6.2.8-14.el7.x86_64 に 必要とされています
phpinfo()で確認したところ旧バージョンを参照してました。
openssl
OpenSSL support enabled
OpenSSL Library Version OpenSSL 1.0.1e-fips 11 Feb 2013
OpenSSL Header Version OpenSSL 1.0.1e-fips 11 Feb 2013
Openssl default config /etc/pki/tls/openssl.cnf
う~ん
「openssl version」は更新されたけど依存関係は旧バージョンを参照してるので
うまいこといってないんやろうなぁ
いろんなところ参照したのでいろいろ混ざってしまったかも
結果
インストール方法で検索したらやり方がいろいろあっって、
切った張ったでごちゃ混ぜになってまとまりがない感じになりました。
もっとちゃんと調べらんとあかんねやろなぁ。
Author And Source
この問題について(CentOS7に稼働中のnginx1.10.2→1.11.9/PHP5.4→7.1/MariaDB 5.5.52→10.1.21/OpenSSL1.0.1e→1.1.0dをアップデート), 我々は、より多くの情報をここで見つけました https://qiita.com/wynnkengeofu/items/87a14d8283858bdbfc45著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .