内网通过nginx代理进行yum安装
前言
前几天在华为云上部署环境的时候,遇到个问题解决了,这里记录一下
有两台服务器
-
服务器A:内网ip 192.168.0.98,可以访问外网,安装了nginx 服务器B:内网ip 192.168.0.146,不能访问外网
现在需要在服务器B上进行yum安装软件,但是安装失败,因为内网没有安装yum源,外网的yum源又访问不了,刚好服务器A上安装了nginx,于是想办法利用nginx做一个代理, 弄完后终于又可以愉快的使用yum了。
如何操作
在跳板机安装并配置nginx
具体安装nginx的过程就略过了,这里给出nginx相关配置,其作用就是将服务器B作为代理,访问外网的yum源
server{
listen 16666;
server_name 192.168.0.98;
location /centos/ {
proxy_pass http://mirrors.aliyun.com/centos/ ;
}
}
更改yum源
在B服务器上,备份原来的yum源
mkdir -p /etc/yum.repos.d/repo_bak/ mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repo_bak/
设置新yum源
cd /etc/yum.repos.d && vim CentOS-Base-nginx.repo
具体配置如下,其中192.168.0.98:16666就是服务器B的ip及监听端口
[base] name=CentOS-$releasever - Base - 192.168.0.98:16666 failovermethod=priority baseurl=http://192.168.0.98:16666/centos/$releasever/os/$basearch/ http://192.168.0.98:16666/centos/$releasever/os/$basearch/ #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os gpgcheck=1 gpgkey=http://192.168.0.98:16666/centos/RPM-GPG-KEY-CentOS-7 #released updates [updates] name=CentOS-$releasever - Updates - failovermethod=priority baseurl=http://192.168.0.98:16666/centos/$releasever/updates/$basearch/ http://192.168.0.98:16666/centos/$releasever/updates/$basearch/ #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates gpgcheck=1 gpgkey=http://192.168.0.98:16666/centos/RPM-GPG-KEY-CentOS-7 #additional packages that may be useful [extras] name=CentOS-$releasever - Extras - 192.168.0.98:16666 failovermethod=priority baseurl=http://192.168.0.98:16666/centos/$releasever/extras/$basearch/ http://192.168.0.98:16666/centos/$releasever/extras/$basearch/ #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras gpgcheck=1 gpgkey=http://192.168.0.98:16666/centos/RPM-GPG-KEY-CentOS-7 #additional packages that extend functionality of existing packages [centosplus] name=CentOS-$releasever - Plus - 192.168.0.98:16666 failovermethod=priority baseurl=http://192.168.0.98:16666/centos/$releasever/centosplus/$basearch/ http://192.168.0.98:16666/centos/$releasever/centosplus/$basearch/ #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus gpgcheck=1 enabled=0 gpgkey=http://192.168.0.98:16666/centos/RPM-GPG-KEY-CentOS-7 #contrib - packages by Centos Users [contrib] name=CentOS-$releasever - Contrib - 192.168.0.98:16666 failovermethod=priority baseurl=http://192.168.0.98:16666/centos/$releasever/contrib/$basearch/ http://192.168.0.98:16666/centos/$releasever/contrib/$basearch/ #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib gpgcheck=1 enabled=0 gpgkey=http://192.168.0.98:16666/centos/RPM-GPG-KEY-CentOS-7
清除原yum缓存
执行以下命令,清除原yum缓存。
yum clean all
生成缓存
执行以下命令,生成缓存。
yum makecache
