美文网首页云计算
IDC通过专线内网访问华为云云服务

IDC通过专线内网访问华为云云服务

作者: 黄华山 | 来源:发表于2019-08-29 15:10 被阅读0次

目录

1.整体架构

2.配置步骤

    2.1 配置dns代理转发

    2.2 配置云服务代理转发

    2.3配置代理ECS系统配置

    2.3 配置ELB转发

    2.4配置内网DNS解析

    2.5配置云下主机

    2.6 配置双region VPN通道(略)

3. 测试验证

2.1 配置dns代理转发

使用root登录待安装代理的ECS机器,确保ECS可以出公网访问,执行如下命令:

•安装yum-utils工具

yum install -y yum-utils

•添加OpenResty仓库

yum-config-manager --add-repo

https://openresty.org/package/centos/openresty.repo

•修改baseurl

若使用的EulerOs,则需手动修改一下/etc/yum.repos.d/openresty.repo中的baseurl

baseurl=https://openresty.org/package/centos/$releasever/$basearch

修改为

baseurl=https://openresty.org/package/centos/7/$basearch

•安装OpenResty

yum install -y openresty

•配置OpenResty自启动

systemctl enable openresty

•代理OpenResty控制命令

systemctl start openresty:启动openresty

systemctl stop openresty:停止openresty

systemctl reload openresty:重载openresty,热重启,不中断业务

•配置文件均位于/usr/local/openresty/nginx/conf/目录下,

nginx.conf:主配置文件

vhosts/ingress.conf:云下连云上,APIG代理配置文件

vhosts/dns.conf:云下连云上,DNS代理配置文件

•nginx.conf:主配置文件

user root;

worker_processes auto;

worker_cpu_affinity auto;

error_log  logs/error.log error;

pid        logs/nginx.pid;

worker_rlimit_nofile 25000;

events {

    use epoll;

    multi_accept on;

    accept_mutex off;

        worker_connections 20000;

}

stream {

    log_format proxy '$remote_addr:$remote_port [$time_local] $connection '

        '$protocol $server_port $status $bytes_sent $bytes_received '

        '$session_time "$upstream_addr" '

        '"$upstream_bytes_sent" "$upstream_bytes_received" '

        '"$upstream_connect_time" "$upstream_first_byte_time" "$upstream_session_time"';

    tcp_nodelay on;

    proxy_buffer_size 64k;

    proxy_connect_timeout 15s;

    proxy_next_upstream on;

    proxy_next_upstream_timeout 0;

    proxy_next_upstream_tries 0;

    proxy_timeout 300s;

    include vhosts/*.conf;

}

配置/usr/local/openresty/nginx/conf/vhosts/dns.conf

upstream dns{

    #server

address:port max_fails=3 fail_timeout=10s;

  server100.125.1.250:53max_fails=3 fail_timeout=10s;

   server 100.125.129.250:53max_fails=3 fail_timeout=10s;

}

server {

    listen 53 udp;

    access_loglogs/access-dns.log proxy;

    error_loglogs/error-dns.log error;

    proxy_pass dns;

}

DNS的地址根据ECS主机(北京4)的/etc/resolv.conf里的地址来配置。

2.2 配置云服务代理转发

配置/usr/local/openresty/nginx/conf/vhosts/ingress.conf

server {

    listen 443

reuseportbacklog=10000;

access_loglogs/access-ingress.logproxy;

error_loglogs/error-ingress.log error;

proxy_pass {APIGW服务POD入口地址}:443;

}

北京4

server {

   listen 443reuseportbacklog=10000;

   access_loglogs/access-ingress.log proxy;

   error_loglogs/error-ingress.log error;

   proxy_pass 100.125.2.39:443;

}

云下连云上代理,后端地址为APIGW服务的POD入口地址。

可以通过在ECS主机上ping ecs.{region-id}.myhuaweicloud.com获得。 北京4region-id 为cn-north-4

2.3 配置ECS系统配置

配置toa

rpm -Uvh--force ipvs-toa-1.0-4.x86_64.rpm

modprobe toalsmod |grep toa

监控toa

function monitor_toa()

{

    process=`

lsmod | awk'{print $1}' | egrep '^toa$'`

    if [ "X${process}" ="X" ]; then

grep -q "2\.0.*SP1" /etc/euleros-release

        if [ $? -

eq0]; then

            if [ -e /opt/

toa/toa.ko];then

insmod/opt/toa/toa.ko

            else

insmod `ls/lib/modules/*/kernel/net/toa/toa.ko|head -n 1`

            fi

        else

modprobe toa

        fi

    else

        echo "module

toaexists"

    fi

}

配置/usr/local/openresty/logrotate.conf

/usr/local/openresty/nginx/logs/*.log {

size 500M

rotate 10

nocopynocopytruncatemissingoknotifempty

compress

delaycompresscompressoptions-1

sharedscriptspostrotate

bash -c 'kill -SIGUSR1 $(cat /

usr/local/openresty/nginx/logs/nginx.pid)'

endscript}

配置/etc/crontab

*/5 * * * *  root /usr/sbin/logrotate /usr/local/openresty/logrotate.conf  >/dev/null 2>&1

修改完/etc/crontab配置文件后,使用systemctl

restart crond重启crond服务

配置/etc/sysctl.conf

net.ipv4.conf.all.rp_filter=1

net.ipv4.tcp_syncookies=0

net.ipv4.tcp_tw_reuse=1

net.ipv4.tcp_tw_recycle=0

net.ipv4.tcp_timestamps=1

net.ipv4.tcp_fin_timeout=5

net.ipv4.tcp_max_tw_buckets=2000

net.ipv4.tcp_mem=1048576 1310720 1572864

net.ipv4.tcp_rmem=4096 87380 16777216

net.ipv4.tcp_wmem=4096 87380 16777216

net.core.rmem_max=16777216

net.core.wmem_max=16777216

net.core.somaxconn=65500

net.core.netdev_max_backlog=262144

net.ipv4.tcp_max_syn_backlog=3240000

net.ipv4.tcp_synack_retries=3

net.ipv4.tcp_syn_retries=3

net.ipv4.ip_local_port_range=102465535

net.ipv4.ip_local_reserved_ports=8000-8100

fs.file-max=210000

fs.nr_open=200000

kernel.hung_task_panic=1

追加到/etc/sysctl.conf配置文件中,并使用sysctl -p命令使其生效

配置/etc/security/limits.conf

* soft nofile200000

* hard

nofile200000

2.4 配置ELB转发


2.5 配置dns代理转发


2.6 配置云下dns解析

[root@ecs-10-10-10-x ~]# cat /etc/resolv.conf

# Generated by NetworkManager

search openstacklocal

nameserver 10.10.2.102

#nameserver 100.125.1.250

#nameserver 100.125.64.250

options single-request-reopen

3. 测试验证

curl -sk -H

"Content-Type:application/json;charset=utf8" -d

'{"auth":{"identity":{"methods":["password"],"password":{"user":{"name":"your_account","password":“{password}","domain":{"name":"your_account"}}}},"scope":{"domain":{"name":"your_account"}}}}' https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens

相关文章

  • IDC通过专线内网访问华为云云服务

    目录 1.整体架构 2.配置步骤 2.1 配置dns代理转发 2.2 配置云服务代理转发 2.3配置代理ECS系统...

  • iptables简单配置DMZ

    要求 内网可以访问外网 内网可以访问DMZ区 外网不能访问内网 外网能访问DMZ区的服务 DMZ区不能访问内网 D...

  • 通过公网访问内网的服务

    sshd 需要修改下服务端的配置 不然外部没法访问 细节参考这个link (how to make ssh tun...

  • FRP

    通过自定义域名访问部署于内网的 web 服务 有时想要让其他人通过域名访问或者测试我们在本地搭建的 web 服务,...

  • (二)frp内网穿透访问内网数据库

    frp的安装介绍 已经在第一节文章有介绍请参考 (一)frp内网穿透ssh登录内网ip服务器 通过内网穿透访问内网...

  • 网络编程之“一切皆socket”

    1:内网访问:通过内网IP直接访问,例:ping ip号 外网访问:通过域名(ip号)+端口号访问例:http:...

  • 内网穿透frp

    内网穿透,不是很好理解。先来看看外网的情况:内网,局域网,通过NAT,能够访问到互联网上的服务。内网穿透,和其相反...

  • 内网访问服务

    1. node 2. python

  • Aws ec2 部署openvpn实现pc访问vpc资源

    此法用于多个客户端通过OpenVPN服务器实现内网访问 OpenVPN服务器操作系统Amazon Linux 2 ...

  • 内网穿透工具

    内网穿透的目的: 为了让本地启动的服务,别人外网也能够进行访问,可以通过内网穿透工具进行解决 工具下载网站 工具1...

网友评论

    本文标题:IDC通过专线内网访问华为云云服务

    本文链接:https://www.haomeiwen.com/subject/xzyiectx.html