ローカル環境
OS: Windows 11 プロフェッショナル 64ビット CPU: i5-11400H 2.7GHz RAM: 16GB ストレージ: 500GB + 1TB SSD GPU: RTX 3050 Tiクラウドコンピューティングの運用管理を学ぶためには、まずLinuxシステムをインストールすることが重要です。
1. VMware Workstationのインストール
1.1 VMwareのダウンロード
VMware Workstation公式サイトから最新版をダウンロードします。
1.2 VMwareのインストール
注意: 2025年3月以降、BroadcomはVMware Workstation Pro 17.6.3以降のバージョンを完全無料とし、ライセンスキーが不要になります。個人、企業、教育用途で利用可能です。
- ダウンロードしたファイルをダブルクリックして開きます。
- 「次へ」をクリックします。
- 「ライセンス契約に同意する」を選択し、「次へ」をクリックします。
- インストールパスを変更したい場合は、「変更」をクリックします。「次へ」をクリックします。
- ユーザーエクスペリエンス設定オプションのチェックを外すことをお勧めします。「次へ」をクリックします。
- 「インストール」をクリックし、インストールが完了するまで待ちます。
2. UbuntuとRocky Linuxのインストール
2.1 Rocky Linuxイメージのダウンロード
公式サイトからRocky-9.6-x86_64-dvd.isoをダウンロードします。
2.2 Rocky Linuxのインストール
- 新しい仮想マシンを作成します。
- デフォルト設定を選択します。
- Rocky-9.6-x86_64-dvd.isoを選択します。
- 仮想マシンの名前とインストール場所を編集します。
- 仮想ディスクのサイズを100GBに設定し、「単一ファイルとして保存」を選択します。
- メモリを4GBに設定し、CPUの仮想化機能を有効にします。
- ハードウェア設定を確認し、「閉じる」をクリックします。
- 仮想マシンを起動し、「Install Rocky Linux」を選択します。
- 言語を選択し、「続行」をクリックします。
- インストール先を選択し、「完了」をクリックします。
- ソフトウェアを選択し、「完了」をクリックします。
- 日時とタイムゾーンを選択し、「完了」をクリックします。
- ネットワークとホスト名を選択し、ホスト名を設定します。
- IPアドレスを手動で設定し、DNSを設定します。
- ネットワーク設定を保存し、エターネットを再起動します。
- ルートパスワードを設定し、「rootユーザーがパスワードを使用してSSHログインできるようにする」を選択します。
- 新しいユーザーを作成し、管理者権限を付与します。
- インストールを開始し、完了したらシステムを再起動します。
2.3 Ubuntuイメージのダウンロード
公式サイトからubuntu-24.04.2-desktop.isoをダウンロードします。
2.4 Ubuntuのインストール
- 新しい仮想マシンを作成します。
- デフォルト設定を選択します。
- ubuntu-24.04.2-desktop.isoを選択します。
- 簡易インストール情報を入力します。
- 仮想マシンの名前とインストール場所を編集します。
- 仮想ディスクのサイズを100GBに設定し、「単一ファイルとして保存」を選択します。
- ハードウェア設定を確認し、「完了」をクリックします。
- 仮想マシンを起動し、グラフィカルインターフェースのシステム設定を行います。
- 言語を選択し、「次へ」をクリックします。
- キーボードレイアウトを選択し、「次へ」をクリックします。
- インターネット接続を選択し、「次へ」をクリックします。
- Ubuntuのインストールを選択し、「次へ」をクリックします。
- ユーザー情報を入力し、「次へ」をクリックします。
- タイムゾーンを選択し、「次へ」をクリックします。
- インストールを開始し、完了したらシステムを再起動します。
3. リモート端末からのアクセス
3.1 MobaXtermのダウンロード
MobaXterm公式サイトから最新版をダウンロードします。
- ダウンロードしたファイルを解凍して使用します。
- 「Session」を選択し、リモート接続を行います。
- SSHを選択し、「Remote host」に目標ホストのIPアドレスを入力します。
- ユーザー名を指定し、新しいユーザーを作成します。
- ユーザー名とパスワードを設定し、「OK」をクリックします。
- 対応するユーザーを選択し、「OK」をクリックします。
4. Linux基本コマンド
ユーザー: whoami, who, id 情報: pwd, ls, cat, tree ファイル: 作成: mkdir, touch コピー: cp 移動: mv 削除: rm システム: CPU: lscpu メモリ: free プロセス: ps aux, pstree -p システムバージョン: cat /etc/os-release カーネルバージョン: uname -r コマンドヘルプ: -h, --help, help コマンド 日付時間: date, timedatectl 履歴コマンド: history ホスト名: hostname, hostnamectl ネットワーク情報: ss, netstat, ip, ifconfig, route, ip route
5. ネットワーク基礎知識
コンピューターネットワークの構成:
ノード-リンク エッジノード: サーバー、クライアント 中間ノード: コミュニケーションデバイス(ルーター、スイッチ)**スイッチ**: MACアドレスに基づいてデータを転送します(データリンク層)。 **ルーター**: IPアドレスに基づいてデータをルーティングします(ネットワーク層)。
OSI 7層モデル(理論参考):
アプリケーション層 (HTTP/FTPなど) 表現層 セッション層 トランスポート層 (TCP/UDP) ネットワーク層 (IP) データリンク層 (MACフレーム) 物理層 (ビットストリーム)
TCP/IP 4層モデル(実際の適用):
アプリケーション層 トランスポート層 (TCP/UDP) インタネット層 (IP) ネットワークインターフェース層
IP アドレス:
IPアドレスはインターネット上のデバイスの一意の識別子であり、データパケットをルーティングし、正しい宛先に到達させるために使用されます。 IPv4は32ビットの二進数でIPアドレスを表し、通常は4つの点で区切られた10進数整数で表示され、各整数の範囲は0から255です。IPv4アドレスはネットワーク部分とホスト部分に分けることができます。
ネットワーク部分: ネットワークの一意の識別子で、デバイスが存在するネットワークを示します。 ホスト部分: そのネットワーク内の具体的なデバイス(ホスト)を示します。IPv4アドレスはA、B、C、D、Eクラスに分けられます。Aクラスは大規模ネットワーク、Bクラスは中規模ネットワーク、Cクラスは小規模ネットワーク、Dクラスはマルチキャスト、Eクラスは実験用に予約されています。
| IP クラス | 1-8 ビット | 9-16 ビット | 17-24 ビット | 25-32 ビット |
|---|---|---|---|---|
| A クラス | ネットワークID、最上位ビット0、10進数の範囲0-127 | ホストID | ホストID | ホストID |
| B クラス | ネットワークID、最上位ビット10、10進数の範囲128-191 | ネットワークID | ホストID | ホストID |
| C クラス | ネットワークID、最上位ビット110、10進数の範囲192-223 | ネットワークID | ネットワークID | ホストID |
| D クラス | ネットワークID、最上位ビット1110、10進数の範囲224-239 | |||
| E クラス |
公共IPアドレス: インターネット上のデバイスが持つ唯一のアドレス プライベートIPアドレス: インターネットには直接使われず、通常はLANで使用されます
トランスポート層プロトコル TCP/UDP
TCPプロトコル
TCPは伝送制御プロトコルであり、接続指向で信頼性が高く、バイトストリームベースのトランスポート層通信プロトコルです。 接続指向: データ伝送を行う前に接続を確立し、伝送完了後に接続を解放します。 信頼性: 確認メカニズム、再送メカニズム、スライディングウィンドウメカニズムなどを通じてデータの信頼性を確保し、データが無誤差、無損失、重複せず順序どおりに到達することを保証します。 バイトストリーム伝送: TCPはアプリケーション層のデータを構造を持たないバイトストリームとして扱い、ネットワーク状況と受信側のバッファ状況に応じて適切なサイズのパケットに分割して送信します。
UDPプロトコル
UDPはユーザーデータグラムプロトコルであり、接続なしで信頼性の低いトランスポート層通信プロトコルです。 接続なし: データ伝送を行う前に接続を確立する必要なく、直接データを送信します。 信頼性なし: 確認メカニズムや再送メカニズムがないため、データが失われたり、重複したり、順序が乱れることもあります。 データグラム伝送: UDPはアプリケーション層のデータを個別のデータグラムに封入して伝送し、各データグラムにはヘッダーとデータ部分があります。
6. Web基礎知識
HTTPプロトコル
HTTP(HyperText Transfer Protocol)は、分散型、協調型、ハイパーテキスト情報システムのアプリケーション層プロトコルです。ブラウザがウェブサイトにアクセスする過程
- ブラウザのアドレスバーにURLを入力します。
- DNSがドメイン名を解析し、サーバーのIPアドレスを取得します。
- DNSキャッシュの検索
- DNSの再帰検索
- サーバーのIPアドレスを返却
- TCP接続
- 3回の握手
- 4回の握手
- HTTPリクエスト
- サーバーにリクエストパラメータを送信
- サーバーがコンテンツを返却
- クライアントブラウザがページをレンダリング
- HTML、CSS、JSなどの各種リソースを取得
- レンダリングモジュールがCSS、JSなどを処理
- DOMツリーを構築
- スタイル計算とレイアウト
- 効果的なページを生成
- 接続の確立 クライアント(通常はブラウザ)がTCP/IPプロトコルを通じてサーバーとの接続を確立します。
- リクエストの送信 接続が確立されると、クライアントはサーバーにHTTPリクエストを送信します。
- リクエストの処理 サーバーはクライアントからのリクエストを受け取り、リクエストラインとヘッダーフィールドを解析し、要求されたリソースを見つけ、適切なレスポンスを準備します。
- レスポンスの送信 サーバーは処理後のレスポンスをクライアントに送り返します。
- 接続のクローズ リクエストとレスポンスの後、通常は接続がクローズされ、システムリソースが解放されます。
開始行: リクエストに関する基本情報を記述 ヘッダーフィールド集合: key: value形式で詳細な情報を記述 メッセージ本文: リクエストデータ、存在しないこともありますレスポンスメッセージ
開始行: レスポンスに関する基本情報を記述 ヘッダーフィールド集合: key: value形式で詳細な情報を記述 メッセージ本文: レスポンスデータ、存在しないこともありますHTTPリクエストでは複数のリクエストメソッドを使用できます。
主なメソッド: GET, HEAD, POST, PUT, DELETEステータスコード
主なコード: 200 成功, 404 失敗HTTPの重要な特徴
接続なし 各接続は1つのリクエストのみを処理します。 状態なし HTTPプロトコルは状態保持がありません。各リクエストは独立しており、サーバーは前のリクエストの状態情報を保持しません。
Nginxのデプロイ
Ubuntu環境でのNginxのデプロイNginxのインストール apt install nginx nginx-core fcgiwrap nginx-doc サービスの状態確認 systemctl is-active nginx netstat -tnulp | grep nginx宿主マシンで10.0.0.13にアクセスすると、Nginxが正常にインストールされていることが確認できます。 Webの実践
デフォルト設定の削除
rm -f /etc/nginx/sites-enabled/default
カスタムアプリケーションページの作成
mkdir /data/server/nginx/web{1..3} -p
echo "nginx web1" > /data/server/nginx/web1/index.html
echo "nginx web2" > /data/server/nginx/web2/index.html
echo "nginx web3" > /data/server/nginx/web3/index.html
カスタム設定ファイルの作成
cat > /etc/nginx/conf.d/vhost.conf <<-eof
server {
listen 80;
server_name www.web1.com;
root /data/server/nginx/web1;
}
server {
listen 81;
server_name www.web2.com;
root /data/server/nginx/web2;
}
server {
listen 82;
server_name www.web3.com;
root /data/server/nginx/web3;
}
eof
サービスの再起動
systemctl restart nginx
サイトへのアクセス
curl www.web1.com
curl www.web2.com
curl www.web3.com
サーバーのデプロイが成功しました。
7. ファイル操作コマンド
ファイルシステム
一般的なディレクトリ ユーザー: /root, /home デバイス: /dev コマンド: /bin, /sbin, /user/bin, /usr/sbin システム: /var, /usr, /etc, /proc
ファイル管理
ファイル属性情報の確認 簡略化された属性情報: ls -l, ll ファイルの元データ属性情報: file ファイルの状態情報: stat 表示: cat, head, tail, more, less 編集: nano, vim 情報出力: echo