侧边栏壁纸
博主头像
MicroMatrix博主等级

曲则全,枉则直,洼则盈,敝则新,少则得,多则惑。是以圣人抱一为天下式。不自见,故明;不自是,故彰;不自伐,故有功;不自矜,故长。夫唯不争,故天下莫能与之争。古之所谓“曲则全”者,岂虚言哉!诚全而归之。

  • 累计撰写 80 篇文章
  • 累计创建 21 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Proxmox 搭建K8服务

蜗牛
2022-05-19 / 0 评论 / 0 点赞 / 6 阅读 / 4304 字 / 正在检测是否收录...

前言

最近配了一台服务器,配置清单cpu: e2660、内存: 16*2 ecc。
使用 proxmox 安装了多台虚拟机,使用其中的 3 台 4c 8g 的搭建了一个 3 节点的 k8s 集群。因为没有公网 ip或者说进不了电信光猫改不了配置,不能直接通过公网访问到内网,所以使用 frp 内网穿透,提供公网访问。

预期实现的功能:

内网穿透配置

  • 将域名绑定到具有公网ip的服务器
  • 将80和443端口的流量转发到 fprs http监听的 7080端口。这样流量就会通过 frps -> frpc 到内网宿主机。
  • 将配置的域名的流量都转到本地的 80 端口。
  • 反向代理,将流量代理到 k8s 集群

配置

map $http_upgrade $connection_upgrade {
  default upgrade;
  ''      close;
}
server {
    listen 80;
    server_name *.ltinyho.top ltinyho.top;
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/ltinyho.top/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/ltinyho.top/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
    location / {
        proxy_pass <http://localhost:7080>;
        proxy_set_header Host      $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade; #配置weboscket
        proxy_set_header Connection $connection_upgrade;#配置weboscket
    }
}

frps 配置

bind_addr = 0.0.0.0
bind_port = 7000
bind_udp_port = 7001
kcp_bind_port = 7000
vhost_http_port = 7080

内网宿主机nginx配置

upstream k8s {
    server 192.168.199.111:80;
    server 192.168.199.112:80;
    server 192.168.199.113:80;
}

map $http_upgrade $connection_upgrade {
    default upgrade;
    '' close;
}

server {
listen 80;
server_name *.ltinyho.top ltinyho.top;

    location / {
    proxy_pass http://k8s;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
    }
}

内网 frpc 配置

[common]

server_addr = 47.98.137.255

server_port = 7000

[lt-http]

type = http

local_ip = 127.0.0.1

local_port = 80

custom_domains = *.ltinyho.top,ltinyho.top

remote_port = 7080
0

评论区