我正在尝试使用虚拟机来建立OpenShift集群,如here所述。这些VM将托管在VirtualBox上。在本文的DNS下,它表示,
群集中的所有主机都需要通过DNS解析。此外,如果使用控制节点作为ansible安装程序,它也应该能够解析群集中的所有主机。
我已经开始使用BIND9 here设置DNS服务器。我可以对群集应用BIND9安装说明吗? DNS服务器是否应在主节点之一上设置?单独的VM?
对于OpenShift 3.X和4.X,都应在单独的位置(VM,Raspberry Pi等)进行设置,并且应为所有群集主机,公共api端点,私有api端点和HAProxy入口控制器。
注意:如果您要部署Openshift 4.X,则uncontained.io上的文档可能会有些过时,因为Red Hat咨询会赶上他们的文档。 OpenShift 3.X和4.X的安装和管理机制完全不同。
如果部署OpenShift 4.1,则还需要etc的A记录和SRV记录。
OpenShift 4.1裸机DNS要求的文档可以找到here
[我曾用于具有cluster_name: ocp4
和base_domain:example.com
的单个主单工作者OpenShift 4.1裸机群集的dnsmasq设置示例,并且有一个实用程序服务器充当DNS服务器,DHCP服务器,负载均衡器和PXE服务器看起来像:
no-hosts
domain=example.com,10.0.10.0/24,local
auth-zone=example.com,10.0.10.0/24
host-record=ocp4-utility.example.com,10.0.10.10
host-record=ocp4-master.example.com,10.0.10.11
host-record=ocp4-worker,10.0.10.12
host-record=ocp4-bootstrap,10.0.10.13
host-record=api.ocp4.example.com,10.0.10.10
host-record=api-int.ocp4.example.com,10.0.10.10
host-record=etcd-0.ocp4.example.com,10.0.10.11
srv-host=_etcd-server-ssl._tcp.ocp4.example.com,etcd-0.ocp4.example.com,2380,0,10
address=/apps.ocp4.example.com/10.0.10.10
这是在实用程序服务器上运行的“负载均衡器”的HAProxy配置:
global
log 127.0.0.1 local2
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
maxconn 4000
user haproxy
group haproxy
daemon
defaults
mode tcp
log global
option tcplog
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
maxconn 3000
listen stats
bind :9000
mode http
stats enable
stats hide-version
stats realm Haproxy\ Statistics
stats uri /haproxy_stats
stats auth admin:admin
frontend kubernetes_api
bind 0.0.0.0:6443
default_backend kubernetes_api
backend kubernetes_api
balance roundrobin
option ssl-hello-chk
server bootstrap 10.0.10.13:6443 check
server master 10.0.10.11:6443 check
frontend machine_config
bind 0.0.0.0:22623
default_backend machine_config
backend machine_config
balance roundrobin
option ssl-hello-chk
server bootstrap 10.0.10.13:22623 check
server master 10.0.10.11:22623 check
frontend router_https
bind 0.0.0.0:443
default_backend router_https
backend router_https
balance roundrobin
option ssl-hello-chk
server worker 10.0.10.12:443 check
frontend router_http
mode http
option httplog
bind 0.0.0.0:80
default_backend router_http
backend router_http
mode http
balance roundrobin
server worker 10.0.10.12:80 check