目次
nginx支持的负载均衡的策略
使用keepalived 完成 nginx 高可用配置

Linuxのnginxとは何ですか

Mar 09, 2022 pm 02:50 PM
linux nginx

Linux では、nginx は高性能 HTTP およびリバース プロキシ Web サーバーであり、高性能 HTTP サーバー、リバース プロキシ サーバー、および電子メール (IMAP/POP3) プロキシ サーバーです。

Linuxのnginxとは何ですか

#このチュートリアルの動作環境: linux5.9.8 システム、Dell G3 コンピューター。

nginx とは

#Apache 静的リソース サーバー

nginx は、リバース プロキシ静的リソース サーバーです。

nginx は、C 言語を使用して開発された高性能 http サーバーおよびリバース プロキシ サーバーです。 Nginx は、高性能の http サーバー/リバース プロキシ サーバーおよび電子メール (IMAP/POP3) プロキシ サーバーです。ロシアのプログラマー、Igor Sysoev によって開発された nginx の公式テストは、50,000 の同時接続をサポートでき、CPU、メモリ、その他のリソースの消費量が非常に少なく、非常に安定して実行されます。

フォワード プロキシ:


Linuxのnginxとは何ですか リバース プロキシ:

Linuxのnginxとは何ですか リバース プロキシは通常、リクエストを分散し、負荷分散を実現するためにサーバー側で使用されます。

Nginx のアプリケーション シナリオ

1. http サーバー。 Nginx は、http サービスを独自に提供できる http サービスです。静的 Web サーバーとして使用できます。

2. 仮想ホスト。複数の Web サイトを 1 つのサーバー上で仮想化できます。たとえば、個人の Web サイトで使用される仮想ホストなどです。

ポートベース、さまざまな端末

ドメイン名に基づく、さまざまなドメイン名

3. リバース プロキシ、ロード バランシング。 Web サイトへのアクセス数が一定のレベルに達し、単一のサーバーではユーザーのリクエストを満たせない場合は、複数のサーバー クラスターが必要になり、nginx をリバース プロキシとして使用できます。また、複数のサーバーが均等に負荷を分散できるため、特定のサーバーの負荷が高くなってダウンタイムが発生したり、特定のサーバーがアイドル状態になったりすることがなくなります。

nginx のバージョンをクリックしてインストールし、サービスを開始します

1. nginx サービスに必要なプラグインをインストールします

yum install -y yum-utils
ログイン後にコピー

Linuxのnginxとは何ですか

2 nginx のインストール

公式 yum ソースには nginx はありませんが、このマシンに nginx の yam ソースを設定して nginx の yum インストールを実装できます。

Linuxのnginxとは何ですか 次に、nginx.repo ファイルを作成します:

[nginx]
 name=nginx repo
 baseurl=http://nginx.org/packages/centos/7/$basearch/
 gpgcheck=0
 enabled=1
ログイン後にコピー

インストール済み:

Linuxのnginxとは何ですか nginx サービスの管理コマンド :

systemctl start/stop/restart/status nginx


Linuxのnginxとは何ですか

3. Linux オペレーティング システムの selinux サービスを閉じる必要があります

#Selinux は、Linux 用のセキュリティ サービス スイートです。vi /etc/selinux/config ファイルを変更し、次の内容を変更します。


変更後は Linux を再起動する必要があります。 Linuxのnginxとは何ですか nginx 設定ファイル:


Linuxのnginxとは何ですか
Linuxのnginxとは何ですか

今後頻繁に変更する設定ファイルは /etc/nginx/conf.d/default です。 conf:

Linuxのnginxとは何ですか負荷分散に nginx を使用します

圧縮パッケージをダウンロードした後、それを xftp 経由で Linux opt フォルダーに転送し、それを解凍します

最初のステップは、Linux サーバー上で 2 つの Tomcat を起動することです

先配置jdk环境变量:
Linuxのnginxとは何ですか
Linuxのnginxとは何ですか
然后 保存退出 ,在命令行执行 source 命令 编译环境变量文件,让环境变量立刻生效:
Linuxのnginxとは何ですか
tomcat 启动:Linuxのnginxとは何ですか
Linuxのnginxとは何ですか
第二步,准备两个tomcat 一个端口号弄成8000 另外一个9000
Linuxのnginxとは何ですか
Linuxのnginxとは何ですか
Linuxのnginxとは何ですか
第三步,修改nginx的配置文件
没有安装vim,使用vi命令
Linuxのnginxとは何ですか
Linuxのnginxとは何ですか
然后重启nginx服务:
Linuxのnginxとは何ですか

nginx支持的负载均衡的策略

轮询策略

默认nginx支持的策略,来了请求之后 排队把请求一个一个的分发出去。

权重策略
Linuxのnginxとは何ですか
IP_HASH方式

根据 客户端ip地址 固定分配到一台服务器上,以后这个ip来的所有请求 都会只到这一个服务器上。
Linuxのnginxとは何ですか

使用keepalived 完成 nginx 高可用配置

Linuxのnginxとは何ですか
上面我们实现的集群方式 可以解决tomcat 服务器单点故障的问题,但是解决不了 nginx服务器单点故障的问题。

解决nginx 单点故障问题,市场上通用的解决方案就是使用keepalived 这种插件。

先安装keepalived服务:
Linuxのnginxとは何ですか
Linuxのnginxとは何ですか
下面修改keepalived的配置文件: vim /etc/keepalived/keepalived.conf文件:

global_defs { 
	notification_email { 
		#keepalived如果检测到nginx服务不能用会往这个邮件发信心 
		test@163.com 
	}
	#配置邮件服务器的信息 
	notification_email_from keepalived@localhost 
	smtp_server 127.0.0.1 
	smtp_connect_timeout 30 
	router_id LVS_MASTER
}
#声明一个脚本 
vrrp_script chk_http_port { 
	#检测本机nginx的服务是否能用的脚本 这个脚本等下要自己编写 
	script "/usr/local/src/check_nginx_pid.sh" 
	#每隔多长时间自动调用上述脚本 
	interval 2 
	#权重 
	weight 2 
}
vrrp_instance VI_1 { 
	#state MASTER 
	#配置当前的nginx服务器是主机还是备机 
	state BACKUP 
	#配置当前nginx服务是是否非抢占模式 
	#nopreempt 
	#配置心跳网卡的名称 
	interface ens33 
	#所有的keepalived的服务器的虚拟化路由都要一致 
	virtual_router_id 50 
	#nginx服务器的初始化权重 
	priority 100
	#心跳连接发送的间隔 
	advert_int 1 
	#认证方式和认证密码 要保证所有keepalive的服务器的验证方式和密码都一样 
	authentication { 
		auth_type PASS 
		auth_pass 1111 
	}
	#启用上述脚本 
	track_script {
		 chk_http_port 
	}
	virtual_ipaddress { 
		#配置了keeplived服务器之后再访问tomcat集群虚拟的ip地址时多少
		192.168.17.222 
		#虚拟ip 
	} 
}
ログイン後にコピー

下一步,写/usr/local/src/check_nginx_pid.sh这个脚本:

#! /bin/bash 
A=`ps -C nginx --no-header |wc -l` 
if [ $A -eq 0 ];then 
systemctl start nginx 
if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then 
killall keepalived 
fi
fi
ログイン後にコピー

创建好这个脚本之后 不要忘记修改文件的权限:

Linuxのnginxとは何ですか
下面启动keepalived服务:

systemctl start keepalived
ログイン後にコピー

相关推荐:《Linux视频教程

以上がLinuxのnginxとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

VSCODEに必要なコンピューター構成 VSCODEに必要なコンピューター構成 Apr 15, 2025 pm 09:48 PM

VSコードシステムの要件:オペレーティングシステム:オペレーティングシステム:Windows 10以降、MACOS 10.12以上、Linux Distributionプロセッサ:最小1.6 GHz、推奨2.0 GHz以上のメモリ:最小512 MB、推奨4 GB以上のストレージスペース:最低250 MB以上:その他の要件を推奨:安定ネットワーク接続、XORG/WAYLAND(Linux)

Apr 16, 2025 pm 07:39 PM

NotePadはJavaコードを直接実行することはできませんが、他のツールを使用することで実現できます。コマンドラインコンパイラ(Javac)を使用してByteCodeファイル(filename.class)を生成します。 Javaインタープリター(Java)を使用して、バイトコードを解釈し、コードを実行し、結果を出力します。

Linuxアーキテクチャ:5つの基本コンポーネントを発表します Linuxアーキテクチャ:5つの基本コンポーネントを発表します Apr 20, 2025 am 12:04 AM

Linuxシステムの5つの基本コンポーネントは次のとおりです。1。Kernel、2。Systemライブラリ、3。Systemユーティリティ、4。グラフィカルユーザーインターフェイス、5。アプリケーション。カーネルはハードウェアリソースを管理し、システムライブラリは事前コンパイルされた機能を提供し、システムユーティリティはシステム管理に使用され、GUIは視覚的な相互作用を提供し、アプリケーションはこれらのコンポーネントを使用して機能を実装します。

vscodeはMacに使用できますか vscodeはMacに使用できますか Apr 15, 2025 pm 07:36 PM

VSコードはMacで利用できます。強力な拡張機能、GIT統合、ターミナル、デバッガーがあり、豊富なセットアップオプションも提供しています。ただし、特に大規模なプロジェクトまたは非常に専門的な開発の場合、コードと機能的な制限がある場合があります。

vscodeの使用方法 vscodeの使用方法 Apr 15, 2025 pm 11:21 PM

Visual Studio Code(VSCODE)は、Microsoftが開発したクロスプラットフォーム、オープンソース、および無料のコードエディターです。軽量、スケーラビリティ、および幅広いプログラミング言語のサポートで知られています。 VSCODEをインストールするには、公式Webサイトにアクセスして、インストーラーをダウンロードして実行してください。 VSCODEを使用する場合、新しいプロジェクトを作成し、コードを編集し、コードをデバッグし、プロジェクトをナビゲートし、VSCODEを展開し、設定を管理できます。 VSCODEは、Windows、MacOS、Linuxで利用でき、複数のプログラミング言語をサポートし、マーケットプレイスを通じてさまざまな拡張機能を提供します。その利点には、軽量、スケーラビリティ、広範な言語サポート、豊富な機能とバージョンが含まれます

GITの倉庫アドレスを確認する方法 GITの倉庫アドレスを確認する方法 Apr 17, 2025 pm 01:54 PM

gitリポジトリアドレスを表示するには、次の手順を実行します。1。コマンドラインを開き、リポジトリディレクトリに移動します。 2。「git remote -v」コマンドを実行します。 3.出力と対応するアドレスでリポジトリ名を表示します。

Linuxの主な目的は何ですか? Linuxの主な目的は何ですか? Apr 16, 2025 am 12:19 AM

Linuxの主な用途には、1。Serverオペレーティングシステム、2。EmbeddedSystem、3。Desktopオペレーティングシステム、4。開発およびテスト環境。 Linuxはこれらの分野で優れており、安定性、セキュリティ、効率的な開発ツールを提供します。

Laravelインストールコード Laravelインストールコード Apr 18, 2025 pm 12:30 PM

Laravelをインストールするには、これらの手順を順番に進みます。コンポーザー(MacOS/LinuxとWindows用)インストールLaravelインストーラーをインストールします。

See all articles