设为首页 收藏本站
开启辅助访问 快捷导航
菜单
猿人部落 主页 资讯 查看内容

构建Docker负载均衡实验

2019-8-1 05:14 发布者: superadmin 评论 0 查看 1475
1. 底子环境预备 (1)登录到实训体系,在#后输入service docker restart下令,然后按Enter键,重启docker服务。示例

1. 底子环境预备

(1)登录到实训体系,在#后输入service docker restart下令,然后按Enter键,重启docker服务。示例代码如下:

[root@xxx ~]# service docker restart

重启docker服务截图,如图1所示:

在这里插入图片形貌

(2)修改docker设置文件,在#后输入vi /etc/sysconfig/docker下令,然后按Enter键,编辑docker设置文件。示例代码如下:

[root@xxx ~]# vi /etc/sysconfig/docker

将两行代码解释,如下所示(在下面两行代码前加个“#”号):

#ADD_REGISTRY='--add-registry 127.0.0.1:5000'

#INSECURE_REGISTRY='--insecure-registry 127.0.0.1:5000'

解释代码,如图2所示:
在这里插入图片形貌

生存退出docker设置文件。

(3)在#后输入service docker restart下令,然后按Enter键,重启docker服务。示例代码如下:

[root@xxx ~]# service docker restart

重启docker服务截图,如图3所示:

在这里插入图片形貌

以下步调中需注意,下载镜像前,请设置加速器,具体步调参考实行五。

(4)下载镜像,在#后输入docker pull nginx下令,然后按Enter键,下载nginx镜像。示例代码如下:

[root@xxx ~]# docker pull nginx

下载nginx镜像乐成截,如图4所示:
在这里插入图片形貌

(5)下载镜像,在#后输入docker pull tomcat下令,然后按Enter键,下载tomcat镜像。示例代码如下:

[root@xxx ~]# docker pull tomcat

下载tomcat镜像乐成截图,如图5所示:
在这里插入图片形貌

(6)查询镜像,在#后输入docker images下令,然后按Enter键,检察镜像列表。示例代码如下:

[root@xxx ~]# docker images

镜像列表截图,如图6所示:

在这里插入图片形貌

  1. 创建发布目次
    (1)创建www1、www2目次,并写一个默认接待页面,在#背面输入mkdir www1 www2下令,创建www1和www2目次,示例代码如下:

root@xxx ~]# mkdir www1 www2

(2) 在#后输入cd www1下令,然后按Enter键,进入www1目次,示例代码如下:

[root@xxx ~]# cd www1/

[root@xxx www1]#

(3)创建www1目次下的index.jsp文件,在#后输入vi index.jsp下令,然后按Enter键,创建index.jsp文件,示例代码如下:

[root@xxx www1]# vi index.jsp

index.jsp文件的内容,如下所示:

<html>
    <head>
           <title>Tomcat1title>
    head>
    <body>
           <%
                  out.println("this is Tomcat1");
           %>
    body>
html>

(4) 创建www2目次下的index.jsp文件,在#后输入cd …下令,然后#后输入cd www2下令,接着#后输入vi index.jsp下令,创建index.jsp文件,示例代码如下:

[root@xxx www1]# cd …

[root@xxx ~]# cd www2/

[root@xxx www2]# vi index.jsp

index.jsp文件的内容,如下所示:

<html>
    <head>
           <title>Tomcat2title>
    head>
    <body>
           <%
                  out.println("this is Tomcat2");
           %>
    body>
html>

在#后输入cd下令退回根目次。

3. 创建tomcat容器

(1)启动tomcat1容器,在#背面输入docker run -ti -d -P -h tomcat1 -v /root/www1:/usr/local/tomcat/webapps/ROOT tomcat:latest /bin/bash下令,创建容器,示例代码如下:

[root@xxx ~]# docker run -ti -d -P -h tomcat1 -v /root/www1:/usr/local/tomcat/webapps/ROOT tomcat:latest /bin/bash

启动容器乐成,如图7所示:

在这里插入图片形貌

(2)进入tomcat1容器,启动服务,在#背面输入docker exec -it 41a42d053761 /bin/bash下令(41a42d053761为容器ID,可以通过docker ps -a查询到),然后输入cd bin,接着输入startup.sh,(启动服务必要等候一段时间,约5分钟)示例代码如下:

[root@xxx ~]# docker exec -it 41a42d053761 /bin/bash

root@tomcat1:/usr/local/tomcat# cd bin

root@tomcat1:/usr/local/tomcat/bin# startup.sh

效果代码如图8所示:
在这里插入图片形貌
(3)退出tomcat1容器,在#背面输入exit下令,然后按Enter键,退出容器,示例代码如下:

root@tomcat1:/usr/local/tomcat/bin# exit

exit

[root@xxx ~]#

(4)启动tomcat2容器,在#背面输入docker run -ti -d -P -h tomcat2 -v /root/www2:/usr/local/tomcat/webapps/ROOT tomcat:latest /bin/bash下令,创建容器,示例代码如下:

[root@xxx ~]# docker run -ti -d -P -h tomcat2 -v /root/www2:/usr/local/tomcat/webapps/ROOT tomcat:latest /bin/bash

启动容器乐成,如图9所示:

在这里插入图片形貌

(5)进入tomcat2容器,启动服务,在#背面输入docker exec -it 2f7386a4401c /bin/bash下令(2f7386a4401c为容器ID,可以通过docker ps -a查询到),然后输入cd bin,接着输入startup.sh,(启动服务必要等候一段时间,约5分钟)示例代码如下:

[root@xxx ~]# docker exec -it 2f7386a4401c /bin/bash

root@tomcat1:/usr/local/tomcat# cd bin

root@tomcat1:/usr/local/tomcat/bin# startup.sh

效果代码如图10所示:

在这里插入图片形貌

(6)查询tomcat1效果,在#背面输入curl 10.24.2.45:32769下令(ip为宿主机ip,可以通过ip a查询到;端标语为容器的端标语,可以用docker ps -a查询到),然后按Enter键,示例代码如下:

[root@xxx ~]# curl  10.24.2.45:32769


    
           Tomcat1
    
    
           this is Tomcat1
    

curl效果代码如图11所示:
在这里插入图片形貌

(7)查询tomcat2效果,在#背面输入curl 10.24.2.45:32770下令(ip为宿主机ip,可以通过ip a查询到;端标语为容器的端标语,可以用docker ps -a查询到),然后按Enter键,示例代码如下:

[root@xxx ~]# curl  10.24.2.45:32770


    
           Tomcat2
    
    
           this is Tomcat2
    

curl效果代码如图12所示:
在这里插入图片形貌

4. 创建nginx容器,实现负载平衡

(1)创建nginx容器,在#背面输入docker run -itd -p 80:80 --name nginx nginx:latest /bin/bash下令(创建nginx容器的时间注意端口80是不是被占用,如果被占用可以选择使用其他端口。),然后按Enter键,示例代码如下:

[root@xxx ~]# docker run -itd -p 80:80 --name nginx nginx:latest /bin/bash 2abcd7ee80536e4c65366ed59d962603b7c5a7ecd88d0e69046bb07011d65b66

创建nginx如图13所示:
在这里插入图片形貌
(2)编写nginx.conf文件,在#背面输入vi nginx.conf下令,然后按Enter键,示例代码如下:

[root@xxx ~]# vi nginx.conf

nginx.conf的内容,如下所示( 文件内容中的三处ip要修改成自己的当地ip和端口):

user  nginx;

worker_processes  1;
error_log  /var/log/nginx/error.log warn;

pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {

    include       /etc/nginx/mime.types;

    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

                      '$status $body_bytes_sent "$http_referer" '

                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;

    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;
    
    include /etc/nginx/conf.d/*.conf;

upstream wei {
    server 10.24.2.45:32769;
    server 10.24.2.45:32770;
}

server {
    listen       80;
    server_name  10.24.2.45;
    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;
    location / {
        proxy_pass http://wei;
    }
}
}

(3)将nginx.conf设置拷贝到nginx容器中,在#背面输入docker cp /root/nginx.conf 2abcd7ee8053:/etc/nginx/nginx.conf下令(id为nginx容器的id,可以用docker ps -a查询),然后按Enter键,示例代码如下:

[root@xxx ~]# docker cp /root/nginx.conf 2abcd7ee8053:/etc/nginx/nginx.conf

(4)进入容器,启动nginx服务,在#背面输入docker exec -it 2abcd7ee8053 /bin/bash下令(id为nginx容器的id,可以用docker ps -a查询),然后按Enter键;接着在#背面输入/usr/sbin/nginx,按Enter键,示例代码如下:

[root@xxx ~]# docker exec -it 2abcd7ee8053 /bin/bash

root@2abcd7ee8053:# /usr/sbin/nginx

(5)退出nginx容器,在#背面输入exit下令,然后按Enter键,退出容器,示例代码如下(若退出时间较长,可以革新欣赏器页面):

root@2abcd7ee8053:# exit

exit

[root@xxx ~]#

(6)检察实现效果,在#背面输入for i in ``seq 1 4 ` ;do curl 10.24.2.45;done(ip为本机ip,可以用ip a下令查询)下令,然后按Enter键,检察效果,示例代码如下:

 [root@xxx ~]# for i in `seq 1 4`;do curl 10.24.2.45;done

实现效果如图14所示:

在这里插入图片形貌

通过访问的效果可以看出,我们访问nginx署理站点,可以大概访问Tomcat1和Tomcat2的服务,实现的负载平衡的效果。



路过

雷人

握手

鲜花

鸡蛋
收藏 邀请
上一篇:大规模离线计算产品的调研下一篇:什么是正向代理?

相关阅读

一周热门

头条攻略!

日排行榜

相关分类