程序猿进阶之路「内网域名」
企业场景
一般在企业内部,开发、测试以及预生产都会有一套供开发以及测试人员使用的网络环境。运维人员会为每套环境的相关项目配置单独的Tomcat,然后开放一个端口,以 IP+Port 的形式访问。
然而随着项目的增多,对于开发和测试人员记住如此多的内网地址,无疑是一件头疼的事情(当然你也可以使用浏览器书签管理器或者记录在某个地方)。但是你不永远不会确定,那天由于升级突然改了IP,我们可能又要重新撸一遍配置,所以内网域名还是非常有必要的。
内网域名具体有哪些优点:
● 方便记忆● 变更IP,只需要修改DNS即可
服务器环境
192.168.1.170(开发) 192.168.1.180(测试)
192.168.1.190(预生产)
192.168.1.125(DNS+Nginx)
DNS安装
安装容器
为了方便,我们使用docker环境手动搭建一个DNS服务器。
选择andyshinn/dnsmasq的docker镜像,2.75版本,执行命令:
-
docker run -d -p 53:53/tcp -p 53:53/udp --cap-add=NET_ADMIN --name dns-server andyshinn/dnsmasq:2.75
执行完毕以后,通过命令查看是否创建并运行成功:
-
[root@test125 ~]# docker ps
-
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
-
38ae71377ef1 andyshinn/dnsmasq:2.75 "dnsmasq -k" 22 hours ago Up About an hour 0.0.0.0:53->53/tcp, 0.0.0.0:53->53/udp dns-server
配置DNS
进入容器:
-
docker exec -it dns-server /bin/sh
创建代理文件:
-
vi /etc/resolv.dnsmasq
添加内容:
-
nameserver 114.114.114.114
-
nameserver 8.8.8.8
新建本地解析规则配置:
-
vi /etc/dnsmasqhosts
添加解析规则:
-
192.168.1.125 dev.52itstyle.com test.52itstyle.com sit.52itstyle.com
修改dnsmasq配置文件,指定使用上述两个我们自定义的配置文件:
-
vi /etc/dnsmasq.conf
追加下述两个配置
-
resolv-file=/etc/resolv.dnsmasq
-
addn-hosts=/etc/dnsmasqhosts
退出容器:
-
exit
重启容器:
-
docker restart dns-server
Nginx安装
安装OpenResty之前需要下载一些必备的依赖:
-
yum install readline-devel pcre-devel openssl-devel -y
-
yum install wget perl gcc -y
下载最新版本:
-
wget https://openresty.org/download/openresty-1.13.6.1.tar.gz
解压:
-
tar -xvf openresty-1.13.6.1.tar.gz
安装配置:
-
./configure
您可以使用下面的命令来编译安装:
-
make && make install
如果您的电脑支持多核 make 工作的特性, 您可以这样编译安装:
-
make && make install -j2
为了方便启动,建立软连接:
-
ln -s /usr/local/openresty/nginx/sbin/nginx /usr/sbin/nginx
在/usr/local/openresty/nginx/conf文件夹下创建vhosts目录,然后依次创建一下文件(演示文件,正式环境中会有多个项目转发)。
dev.52itstyle.com.conf:
-
server{
-
listen 80;
-
server_name dev.52itstyle.com;
-
proxy_set_header Host $host;
-
location /{
-
proxy_pass http://192.168.1.170:8080;
-
}
-
}
test.52itstyle.com.conf:
-
server{
-
listen 80;
-
server_name test.52itstyle.com;
-
proxy_set_header Host $host;
-
location /{
-
proxy_pass http://192.168.1.180:8080;
-
}
-
}
sit.52itstyle.com.conf:
-
server{
-
listen 80;
-
server_name sit.52itstyle.com;
-
proxy_set_header Host $host;
-
location /{
-
proxy_pass http://192.168.1.190:8080;
-
}
-
}
配置文件:
-
vi /usr/local/openresty/nginx/conf/nginx.conf
-
worker_processes 2;
-
events {
-
worker_connections 1024;
-
}
-
http {
-
include mime.types;
-
default_type application/octet-stream;
-
sendfile on;
-
keepalive_timeout 65;
-
#导入各个环境
-
include vhosts/*.conf;
-
}
启动服务:执行 nginx命令即可。
本机验证
那么如何验证这些域名可以解析到我们的内网项目,只需要修改本机dns服务器地址即可:
配置完成后,我们就可以通过dev.52itstyle.com等相关域名访问我们的内网项目了。
当然,最好是可以直接修改路由器的DNS,这样就不用每个电脑都配置DNS了。
原文发布时间为:2018-10-10
本文作者:小柒2012
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
运维技术之二(3)、docker安装jumpserver
安装dockerroot@jiaxin-ceshi-ceshi ~]#yum -y install docker-io启动dockerroot@jiaxin-ceshi-ceshi ~]# /etc/init.d/docker restart查找jumpserver镜像[root@jiaxin-ceshi-ceshi ~]# docker search jumpserver下载jumpserver:1.0.0 镜像官方文档:http://docs.jumpserver.org/zh/docs/dockerinstall.html[root@jiaxin-ceshi-ceshi ~]# docker pull registry.jumpserver.org/public/jumpserver:1.0.0等待下载完成:
- 下一篇
【实操】云服务器ECS扩充磁盘、磁盘扩容
大家好,本期我们来介绍云服务器ECS如何扩充磁盘。着业务的增长,原有磁盘容量可能无法满足数据存储的需要,这时就需要我们来扩充磁盘。 ECS实例的磁盘分为系统盘和数据盘,系统盘之前已经讲过,需要通过更换系统盘的方式进行扩容。更换系统盘存在弊端和风险,操作时需要注意,这里就不再阐述了。扩充数据盘相对简便。 首先登录管理控制台,点击左侧的云服务器ECS。点击实例,然后点击需要扩充磁盘的实例进入实例详情。然后点击本实例磁盘,进入磁盘列表。可以看到这台ECS只有一个40GB的系统盘,现在我们为它添加一块数据盘。点击右上角的创建云盘。在这里我们需要选择磁盘所在的可用区(1),磁盘类型(2),大小(3),数量(4),勾选服务条款(5)。可用区须和实例所在可用区保持一致,磁盘的类型根据自己的需求选择,SSD云盘最好,也最贵,普通云盘最便宜,具体区别可以点击磁盘类型下面的详细说明查看。最后点击确认订单(6)。确认订单购买之后我们在本实例磁盘中并不能看到这块磁盘,还需要我们将它挂载。点击挂载云盘。点击目标磁盘的下拉框就能看到刚才购买的磁盘,因为是单独购买的磁盘,我们可以选择磁盘随实例释放,自动快照随磁盘释...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker安装Oracle12C,快速搭建Oracle学习环境
- 2048小游戏-低调大师作品
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题