お勉強用CentOS構築とSSHとスナップショット
この記事ではCentOS 7.6のインストールとSSH接続のやり方を記載しています。
LPICとかOSS-DBの資格試験で実機を触った方が勉強進むかなあと思うので、自分のメモがてら仮想化環境でCentOS構築とSSH接続設定をnote初投稿してみます。
あとLPICの勉強中に
「コマンド実行でミスってOS環境が壊れちゃった」とか
「パッケージの選択ミスって削除がめんどい」とか
いろいろトラブルあるかと思います。
勉強用の環境はスナップショットを利用すれば環境を戻せるのでとっても便利です。本番環境では他のサーバとの通信状況やデータの整合性とかで簡単にスナップショットで元に戻せないと思いますのでバックアップには利用できないですね。
最後に実際にあったスナップショットの事件をちょこっと記載してみます。
ちなみにOSS-DB シルバーを受験しようと思って、公式の教科書的なものを見たらCentOS 7前提で記載されていました。CentOSの最新版は7ではりませんが、この記事ではCentOS 7で記載します。
※あと勉強用のCentOSなのでセキュリティがガバガバです。
■環境
インストールするOS:CentOS 7.6(x86_64)
仮想化環境:VMware Fusion 11.5.5
7.6は特に理由はないです。CentOS7.6のISOファイルを持っていたのでそのまま利用です。MacOSのためVMware Fusionを利用しています。(Windowsに乗り換えたい)
■CentOSのスペック
メモリ:1GB、CPU1コア、ディスク容量25GB
お勉強用なのでこんなもんで十分でしょう。スペック足りなかったら適当に追加すりゃいいし。
#1 CentOSインストール
CentOSのインストールをおっぱじめます。
VMware Fusionを起動して、新規マシンを作成します。いろいろ設定をいじるので「カスタム仮想マシンを選択」をクリックします。
ウィザードを進めて、「CentOS 7」を選択。
ファームウェアは「レガシーBOIS」でいいんじゃないですかね。かるーく調べたらUEFIはCentOS 7でパーティションのトラブルが発生した的な記事を見つけました。パーティションいじったりはする予定ないので影響はないと思いますが「レガシーBOIS」をチョイス。
仮想ディスクは「新しい仮想ディスクを作成」です。
最後に「設定のカスタマイズ」で設定をいじります。
いじる箇所は↓画像の通り「プロセッサとメモリ」「ハードディスク」「CD/DVD」です。
メモリとCPUはこんな感じ。最初に書いたスペックと同じです。
ディスクは5GB増設します。5GBで何が変わるの?ってのはなしです。「適用」をクリックするのを忘れずに。
CDは起動イメージのISOファイルを指定します。「CD/DVDドライブを接続」にチェックを入れるのを忘れずに。チェック入れないとCentOS起動時に起動ディスクを見つけてくれないです。
全部の設定を入れたら仮想マシンをパワーオンします。起動するとこんな画面が出てきてインストールが進みます。
最初は言語設定。ワイ、日本人。日本語をチョイス。
インストールの概要では「!」ってなってる項目の設定を行えばインストールが開始できす。(「!」の画像採取を忘れました)
「パーティション」と「ネットワーク」の設定を行えばインストールが開始できます。他は基本的にディフォルトのままでインストールしますが、ダンプ吐かれたら容量喰うのでKDUMPはオフにします。
パーティションは「パーティションを自動構成する」にチェックが入っていればOK。(自分でパーティション設計するのめんどい)
次はKdumpをオフにします。画像はオンになってますが、オフにします。チェックを外します。
ネットワークとホスト名の設定です。
Ethernetを「オン」にすれば自動でIPアドレスが割り当たります。VMware Fusion上のNIC設定は”Macと共有”です。ホスト名は適当に「supercentos7」ですw
最初は「super_centos7」にしようとしましたが、”_”は使用できないので諦めました。最下部の黄色いとこで怒られました。
インストールの概要の「インストールの開始」をクリックすると、インストールが始まります。インストール中に「root」ユーザのパスワード設定とユーザ作成ができます。
「superuser」っていう安直なユーザを作成しました。
ということで、CentOSインストール完了。
#2 SSHログインの道のり
CentOSのインストールも終わりました。このままだとコンソール画面での操作となります。コピペとかできなくて非常に使い勝手が悪いのでSSH接続できるようにします。
SSH設定の変更とFireWall、selinuxの無効化をすれば、SSH接続できるようになります。(たぶん)
yumコマンドで“openssh-server”がインストールされてるか確認します。
↓のように“openssh-server”がいればOK。次はviコマンドで設定ファイルをいじります。
[root@ supercentos7 ~]# yum list installed | grep ssh
libssh2.x86_64 1.4.3-12.el7 @anaconda
openssh.x86_64 7.4p1-16.el7 @anaconda
openssh-clients.x86_64 7.4p1-16.el7 @anaconda
openssh-server.x86_64 7.4p1-16.el7 @anaconda
[root@ supercentos7 ~]#
「vi /etc/ssh/sshd_config」コマンドで以下設定をいじります。
Port 22 ←コメントアウトをとる。
PasswordAuthentication yes ←コメントアウトをとって”yes”にする。
vi画面を閉じたらfirewallを無効化しちゃいます。セキュリティはガバガバです。
ローカル環境だしお勉強の時にだけCentOSを起動させるのでいいかなあと。
↓でfirewallが止まります。
[root@supercentos7 ~]# systemctl stop firewalld
しかしながらOSの再起動後はfirewallが復活してくるので、
↓でfirewallの恒久的な無効化をします。
[root@supercentos7 ~]# systemctl disable firewalld.service
Firewallがとまったら次はselinuxの無効化です。
「vi /etc/selinux/config」コマンドで↓パラメータをいじります。
SELINUX=disabled ←コメントを外します。
編集画面を閉じたらOSの再起動をします。
[root@supercentos7 ~]#reboot
再起動が完了したらSSH接続ができるようになります。
できなかったら何かがおかしいけど、ワイはこの手順でSSH接続できてしまった。
私のPCはMacOSなのでターミナルで↓コマンドでSSH接続します。
初回はなんかエラーみたいなのが出ますが、”yes”って言えばいいです。認証とか暗号化のキーがなんちゃらって内容だと思います。(たぶん)
$ ssh root@IPアドレス
root@ IPアドレス's password:
Last login: 最後にログインした日付と曜日
ログインできればSSH接続が完了です!
#3 スナップショット事件
私が参画した案件で発生したスナップショットの事件です。
事件内容:スナップショットが130GBまで肥大化した
とある仮想サーバの作業前に切り戻し用のスナップショットをとりしまた。作業終了後にスナップショットの削除を忘れて1ヶ月ほど経過、、、
ある日、他のメンバーの方が肥大化したスナップショットを発見して問題が発覚しました。
すぐに問題が出るわけではありませんでしたが、無駄にストレージ容量を減らす理由もないためすぐにスナップショット削除に着手しました。
「スナップショットの削除」をクリックして、1時間経過。ぜーんぜん削除が終わる気配がない、、、削除の進捗が38%でずーっと止まってる。
2時間後。同じくぜーんぜん削除が終わらない。
さらに40分後、ようやく削除が完了。100GBのスナップショットの削除に2時間40分ほどかかりました、、、
こんな感じでスナップショットの消し忘れで時間を無駄にしてしまいました。
このあと、スナップショット削除を忘れたのはなぜかみたいな原因と対策を考えないといけなくて大変でした。
ということで、スナップショットは便利なんですけど、積極的には利用したくはないですね。ちゃんとスナップショット管理の運用を整理しているところであれば有効でしょうけど、私が参画した案件はそんな感じじゃなかったのです。
っていう感じで以上です。初めてnoteの記事を書いてみました。今後も試験対策の記事とか書いてみたいと思いますー
この記事が気に入ったらサポートをしてみませんか?