APPENDIX15分
用語を種類から引く
用語が機器、ソフトウェア、プロセス、設定、通信の決まりのどれを指すか確認します。
このレッスンのメニュー
名前だけでは用語の種類が分からないときに使う用語集です。 詳しい動作は各レッスンで扱います。
コンピューター上で動くもの
| 用語 | 種類 | 意味 |
|---|---|---|
| ソフトウェア | 命令とデータ | コンピューターへ処理をさせるための命令とデータの集まり |
| OS | ソフトウェア | 機器を管理し、ほかのソフトウェアが動く土台。Linux、Windows、macOSなど |
| カーネル | OSの中心部分 | CPU、メモリ、ファイル、通信、プロセスを管理する |
| プロセス | 実行中のもの | OS上で実行中のソフトウェア |
| サービス | プロセスの使い方 | リクエストの受け付けや定期処理のために長時間動かすプロセス |
| systemd | ソフトウェアとプロセス | Linuxでサービスの起動、停止、再起動を管理する |
systemctl | コマンドで起動するプログラム | systemdへサービスの操作を依頼する |
| シェル | ソフトウェアとプロセス | 入力をコマンドとして解釈し、自身の機能を実行するか、対応するプログラムを起動する |
| ターミナル | アプリ | シェルへの入力と、プログラムからの出力を表示する |
| プロンプト | 画面の表示 | シェルが次の入力を受け付けていることを示す表示 |
| CLI | 操作方法 | ターミナルなどからコマンドを入力し、表示された結果を読みながら操作する方法 |
| 標準入力(stdin) | データの接続先 | プログラムが処理するデータを読み込む |
| 標準出力(stdout) | データの接続先 | プログラムが普通の結果を書き出す |
| 標準エラー出力(stderr) | データの接続先 | プログラムがエラーや診断情報を書き出す |
| ファイルディスクリプター | 番号 | 実行中のプログラムが、開いているファイルや入出力の接続を見分けるための小さな整数 |
| root | ユーザー | Linuxのほぼすべてを変更できる管理者ユーザー |
sudo | コマンドで起動するプログラム | 指定したコマンドを別のユーザーとして実行する |
ソフトウェアへ依頼する方法
| 用語 | 種類 | 意味 |
|---|---|---|
| シェルコマンド | シェルへの指示 | シェルが解釈して実行するもの。プログラムの起動だけでなく、シェル自身の機能、パイプ、入出力の切り替えなども含む |
| コマンド名 | コマンドの一部 | シェルが何を実行するか指定する名前 |
| 引数 | コマンドの一部 | コマンドが処理する対象や、動作を変えるために渡す値 |
| API | ソフトウェア間の窓口 | ソフトウェア同士が依頼と結果をやり取りする方法 |
| 設定 | データ | ソフトウェアへ、どの状態で動くかを伝える情報 |
| IaC | 管理方法 | 仮想マシンやネットワークなど、必要な構成を設定ファイルに書いてAPIへ反映する方法 |
通信で使うもの
| 用語 | 種類 | 意味 |
|---|---|---|
| プロトコル | 通信の決まり | 通信する双方が従うデータ形式と手順 |
| URL | 接続先と要求の指定 | 通信方法、ホスト名、ポート番号、Webサーバーへ要求する場所などを表す |
| DNS | プロトコルと仕組み | ホスト名に対応するIPアドレスを問い合わせ、答える |
| IP | プロトコル | IPアドレスを使い、ネットワークを越えてパケットを運ぶ |
| パケット | 通信中のデータ | ネットワークで運べる大きさに分け、宛先などの情報を付けたデータ |
| IPアドレス | 通信先を示す情報 | ネットワーク上のインターフェースを指定する |
| TCP | プロトコル | プロセス間に接続を作り、順序を保ってデータを渡す |
| TLS | プロトコル | 証明書で通信相手を確かめ、データを暗号化する |
| HTTP | プロトコル | Webのリクエストとレスポンスの形式を決める |
| ポート番号 | 通信先を示す情報 | 一台のホスト内で通信を受け取るプロセスを指定する |
| ルーター | 機器またはソフトウェア | 異なるネットワークの間で、パケットを次へ渡す |
| NAT、NAPT | ルーターなどの機能 | パケットのIPアドレスやポート番号を置き換える |
| ACL | 設定 | 条件に合う通信を許可するか拒否するかを並べた規則 |
仮想化とコンテナ
| 用語 | 種類 | 意味 |
|---|---|---|
| 仮想マシン(VM) | 実行環境 | 物理サーバーの中にソフトウェアで作る、一台のコンピューターとして扱える環境 |
| ハイパーバイザー | ソフトウェア | 物理資源を仮想マシンへ割り当て、実行を管理する |
| イメージ | 起動前のデータ | OSやアプリなど、同じ環境を作るためのひな型 |
| コンテナ | 実行環境 | ホストのLinuxカーネルを共有しながら、プロセスから見える範囲と資源を分けた環境 |
| namespace | Linuxカーネルの機能 | プロセスID、ファイル、ネットワーク機器など、プロセスから見える範囲を分ける |
| cgroup | Linuxカーネルの機能 | プロセスをまとめ、CPUやメモリの使用量を記録したり制限したりする |
| Docker | ソフトウェア | イメージを作り、そこからコンテナを起動して管理する |
| ソケット | 通信の接続口 | 同じコンピューター内またはネットワーク越しにプロセス同士が通信するための接続口 |
変更を記録して届けるもの
| 用語 | 種類 | 意味 |
|---|---|---|
| Git | ソフトウェア | ファイルの変更をコミットとして記録し、履歴を管理する |
| GitHub | 外部サービス | Gitのリポジトリを置き、変更の共有やレビューなどを行う |
| CI | 自動化の方法と仕組み | Gitのリポジトリへ変更が共有されるたびに、テストやビルドを実行する |
| CD | 自動化の考え方と仕組み | テストした成果物を、本番へ出せる状態または本番環境まで届ける |
| パイプライン | 一連の処理 | CIやCDで順番に実行する作業のまとまり |
同じ名前が複数の種類を指す場合は、表の「種類」と、文章の主語と動詞を確認します。
このレッスンは完了
このページで扱った流れを確認したら、次の内容へ進みます。