Cent OS7にDockerのインストール

こんにちは。

今回は、Cent OS7にDockerをインストールしたので、まとめていきたいと思います。

 

□Dockerをなぜ使うか。

Dockerの強みはアプリの環境そのものをイメージとしてパッケージ化することになります。

Dockerを使うことで環境Aで動いていたアプリを環境Bで動かす難易度が下がります。

コンテナを動かす機番とコンテナに搭載されるアプリを断ち切るということがDockerの利点です。

 

□Cent OS7へのインストール

 

・レポジトリの追加

#yum install -y yum-utils device-mapper-persistent-data lvm2
#yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

・関連パッケージのインストール

#yum install -y docker-ce docker-ce-cli containerd.io

・dockerの起動&確認

#systemctl start docker
#systemctl enable docker
#systemctl status docker

□Dockerコマンド

Dcokerコマンドは、以下のように体系化されています。

docker <操作グループ> <操作種類&gt

レジストリの基本

Dockerイメージはレジストリという仕組みを使い管理されています。レジストリ上にはイメージを置くリポジトリが用意され、そこに異なるバージョンの同一イメージが複数管理されているのです。一般的な公開サービスであるパブリックレジストリでもっとも有名なものは「DockerHub」とよばれるレジストリです。
DockerHubにはさまざまなリポジトリが存在していますが、MySQLCentOSといった有名なサービスはあらかじめ「公式レポジトリ」というDocker社公認の特別なリポジトリとして用意されています。
(~4/21)
□コンテナの利用法

IoT✖︎パルダリウム Raspberry Piを用いた湿度管理システムの構築

□はじめに

我が家に新しいペットとして、マダライモリをお迎えしました。

まだ、水槽のレイアウトは行っておらず、簡易的な水槽で飼っているのですが、

後々は自然界を壮大に再現したパルダリウム水槽の中で飼育したいと考えております。

□パルダリウムの手間

パルダリウムでは、水槽内の苔を健康な状態で保つため、適切な湿度・温度を維持する必要があります。しかし、人手による管理は手間がかかるというデメリットも感じられます。

 

f:id:tech_salamander:20210415224415p:plain

我が家のマダライモリ

□IoT×パルダリウム

そこで、今回は水槽内の湿度を自動で管理するIoTシステムを作成したいと思います!

システムの構想は以下です。

SSH接続エラー WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! が出た時に関して

tech_salamanderです。

こんにちは、今回はssh通信時にWARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!で出た時の解決策に関して、記載していきたいと思います。

背景

ssh通信時にWARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!でというエラーが出た場合は、接続先サーバの公開鍵フィンガープリント情報が以前接続した際に保存した情報と異なることが原因です。ssh通信をクライアント、サーバ間で行う際に、クライアントはRSA暗号を用いて、秘密鍵と公開鍵を作成します。

クライアントは作成した公開鍵を接続先サーバに送付し、クライアント側で保存した秘密鍵を使って通信を確立するのですが、初回の接続完了時にクライアント側で接続したサーバの情報を保存する仕組みになっております。以上のような仕組みから、2回目以降の接続で保存した情報が以前の情報と異なる場合にWARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!という警告が出力されます。

RSA暗号に関して

ここで、RSA暗号に関して説明をしていきたいと思います。

ZabbixServer構築手順 備忘録

tech_salamanderです。

大学・大学院と情報技術に関して学び、現在は某IT企業でシステムエンジニアをしております。

今回、自宅にあるvaioにcent os を入れ、監視サーバを立てたので、zabbixソフトのインストール手順をまとめていきたいと思います。

実施環境

・HW:vaio(sony)

・OS:Cent OS 7.8

・MW:

 ・Apache 2.4.6

 ・PHP  7.3.27

   ・MySQL  8.0.23

   ・Zabbix  4.4.10

   ・zabbix_agent 4.4.10

インストール手順

ミドルウェアのインストール

 wgetコマンドを使い、必要なrpmパッケージをインストールしていきます。

インストールしていない場合は、下記のコマンドでインストールしてください。

#yum install -y wget

 ◆phpのインストール

 最新版のphpをインストールするため、まずRemiというリポジトリをインストールします。

# yum -y install epel-release
# yum -y install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
# yum -y install --enablerepo=remi,remi-php73 php php-devel php-pdo php-mysqlnd php-mbstring php-mcrypt php-gd php-pear php-pecl-apc-devel php-bcmath php-ldap zlib-devel httpd-devel

◆Zabbixのインストール

# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
# yum -y install zabbix-agent zabbix-server-mysql
# wget http://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-web-4.4.7-1.el7.noarch.rpm
# wget http://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-web-mysql-4.4.7-1.el7.noarch.rpm
# wget http://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-web-japanese-4.4.7-1.el7.noarch.rpm
# rpm -ivh --nodeps zabbix-web-4.4.7-1.el7.noarch.rpm zabbix-web-mysql-4.4.7-1.el7.noarch.rpm zabbix-web-japanese-4.4.7-1.el7.noarch.rpm  

MySQLのインストール

# rpm -ivh https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
# yum -y install mysql-community-server mysql-community-devel

□インストールしたソフトのバージョン確認

それでは先ほどインストールしたソフトのバージョンを下記のコマンドで確認していきましょう。

#mysql --version
#php -v
#httpd -v

上記のコマンドでそれぞれのソフトが正しくインストールされたことを確認しました。

□My SQLの設定

MySQLに接続する際の認証方式を[mysql_native_password]に変更するため、/etc/my.cnfファイル内の#default-authentication-plugin=mysql_native_password行のコメントアウトを外します。 次に、My SQLのサービスの起動と自動起動設定を行って下さい。

#systemctl start mysqld
#systemctl enable mysqld

My SQLの初回のパスワードを以下のコマンドで確認し、メモを取ってください。

# grep root /var/log/mysqld.log

上記で確認したパスワードを用いてMy SQLにログインし、新しくユーザを作成してください。 今回はZabbixサーバ専用のDBということでzabbixというDBを作成したいと思います。

□Zabbixの設定

以下のコマンドでスキーマとデータをzabbixにインポートしてください。

# cd /usr/share/doc/zabbix-server-mysql-*/ 
# zcat create.sql.gz | mysql -u zabbix -p zabbix

次にZabbixDBにアクセスする際のパスワードを設定しするため、/etc/zabbix/zabbix_server.confファイルのDBPawwword=行にパスワードを入力してください。

また、ZabbixのWebサーバでPHPモジュールとのタイムゾーンの設定変更をするため、/etc/httpd/conf.d/zabbix.confhulairu の# php_value date.timezone Europe/Riga という行をコメントアウトし、Asia/Tokyoに変更してください。

□ZabbixサーバとWebサーバの起動

# systemctl start zabbix-server
# systemctl enable zabbix-server
# systemctl start httpd
# systemctl enable httpd

firewallの設定

ZabbixサーバとWebサーバの起動により、Zabbixサーバは立ち上がりましたが、Firewallが有効になっているため、HTTPプロトコルを用いた通信ができません。 そこでfirewallの設定を変更し、httpプロトコルによるアクセスを許可していきましょう。
 firewall-cmd --zone=public --add-service=http --permanent
    
# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: wlp2s0
  sources:
  services: dhcpv6-client http https ssh
  ports: 10050/tcp 10051/tcp
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

□Zabbixサーバへのログイン

Webブラウザhttp://IPアドレス/zabbixと入力し、Zabbixの画面が表示されれば、設定完了です。

f:id:tech_salamander:20210411224414p:plain



 

□まとめ

今回は、監視サーバであるZabbixのインストール手順をまとめさせていただきました。

その際に以下のサイトを参考にさせていただきました。

https://www.lab-infra.com/monitoring/zabbix/zabbix4-4-install

 

ご精読ありがとうございました!!