Skip to content

zdcourse/Linux

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

Load Balance a web service

Linux 课程作业

项目介绍

搭建一个如下图所示的 web 服务,需要 lb。

./imgs/20171125_203337_39300sYm.png

安装 nginx

机器:ubuntu 14.04

sudo add-apt-repository ppa:nginx/stable
sudo apt-get update
sudo apt-get install nginx

安装完成后,

sudo service nginx restart

下面,我们在浏览器上访问一下上面机器的地址。如果出现 Nginx 界面证明已经安装成功了。

./imgs/20171125_203905_393005is.png

配置 nginx 作为一个 lb

执行下面的命令:

sudo vim /etc/nginx/conf.d/load-balancer.conf

上面的文件需要创建,其中的内容如下:

upstream backend {
    server localhost:8001;
    server localhost:8002;
    server localhost:8003;
}

server {
    listen 80;
    location / {
        proxy_pass http://backend;
    }
}

下一步是删除一些文件:

sudo rm /etc/nginx/sites-enabled/default

重启 nginx 服务:

sudo service nginx restart

启动 web 服务

Nginx 是可以了,但是我们还缺少一个 web 服务。我用 python 写了一个,就是 hello-world.py 这个文件。

执行下面的命令:

python hello-world.py 8001 &
python hello-world.py 8002 &
python hello-world.py 8003 &

下面应该是启动成功了。

我们在浏览器上直接访问虚拟机的地址就可以了。

./imgs/20171125_204640_39300Gty.png

我们刷新一下就会看服务的地址在变化了。默认的 lb 算法是 round robin。

About

Linux 作业之web cluster

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages