В соединении с сервером master.ctwifi.cn:8443 было отказано - вы указали правильный хост или порт?\ N "

Описание
  • CentOS 7.4

  • Я использовал Ansible для установки OpenShift, и я должен использовать HTTP_PROXY.

  • У меня такая проблема: "stderr": "Было отказано в соединении с сервером master.ctwifi.cn:8443 - вы указали правильный хост или порт?\ N",

  • И на главном хосте нет 8443 портов. Количество запущенных контейнеров на главном хосте составляет всего 5. Я думаю, что мастер kubernetes не начался, но я не знаю почему.

    Но я использую ту же конфигурацию для установки в публичном облаке. В дополнение к настройке прокси не возникает никаких проблем. Так что я думаю, что эта проблема связана с моей конфигурацией прокси. Но я не нашел решения.

    ansible-playbook ~ / openshift-ansible / playbooks / prerequisites.yml -vvv в порядке

образ

проблема

ansible-playbook ~/openshift-ansible/playbooks/deploy_cluster.yml -vvv

FAILED - RETRYING: Wait for control plane pods to appear (57 retries left).Result was: {
    "attempts": 4,
    "changed": false,
    "invocation": {
        "module_args": {
            "all_namespaces": null,
            "content": null,
            "debug": false,
            "delete_after": false,
            "field_selector": null,
            "files": null,
            "force": false,
            "kind": "pod",
            "kubeconfig": "/etc/origin/master/admin.kubeconfig",
            "name": "master-etcd-master.ctwifi.cn",
            "namespace": "kube-system",
            "selector": null,
            "state": "list"
        }
    },
    "msg": {
        "cmd": "/usr/bin/oc get pod master-etcd-master.ctwifi.cn -o json -n kube-system",
        "results": [
            {}
        ],
        "returncode": 1,
        **"stderr": "The connection to the server master.ctwifi.cn:8443 was refused - did you specify the right host or port?\n",**
        "stdout": ""
    },
    "retries": 61
```
Версия
ansible 2.6.4
#git describe
openshift-ansible-3.10.51-1-16-g1a911c5
#rpm -q openshift-ansible
openshift-ansible-3.10.51-1.git.0.44a646c.el7.noarch

Файл моего хоста (нет проблем между хостами):

10.199.27.49 master.ctwifi.cn
10.199.27.48 node01.ctwifi.cn
10.199.27.46 node02.ctwifi.cn
10.199.27.28 infra-node1.ctwifi.cn

Мой файл /etc/sysconfig/docker:

HTTP_PROXY='http://'username:password'@proxy.ctwifi.cn:8080'
HTTPS_PROXY='http://'username:password'@proxy.ctwifi.cn:8080'  NO_PROXY=10.199.27.49,10.199.27.46,10.199.27.48,10.199.27.28,master.ctwifi.com,node01.ctwifi.cn,node02.ctwifi.cn,infra-node1.ctwifi.cn,.cluster.local,.svc,localhost,127.0.0.1,172.30.0.1
export HTTP_PROXY HTTPS_PROXY  NO_PROXY
OPTIONS=' --selinux-enabled    --signature-verification=False'
if [ -z "${DOCKER_CERT_PATH}" ]; then
     DOCKER_CERT_PATH=/etc/docker
fi
  • Моя операционная система и версия: CentOS 7.4

Мой файл инвентаря

#Create an OSEv3 group that contains the masters and nodes groups
[OSEv3:children]
masters
nodes
etcd
#Set variables common for all OSEv3 hosts
[OSEv3:vars]
#SSH user, this user should allow ssh based auth without requiring a password
ansible_ssh_user=root

#If ansible_ssh_user is not root, ansible_become must be set to true
#ansible_become=true

openshift_deployment_type=origin

#uncomment the following to enable htpasswd authentication; defaults to AllowAllPasswordIdentityProvider
#openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', 'challenge': 'true', 'kind': 'HTPasswdPasswordIdentityProvider'}] 
#openshift_release=3.10


openshift_disable_check=memory_availability,docker_image_availability,package_availability,package_version

#host group for masters
[masters]
master.ctwifi.cn

#host group for etcd
[etcd]
master.ctwifi.cn

#host group for nodes, includes region info
[nodes]
master.ctwifi.cn openshift_node_group_name='node-config-master'
#node01.ctwifi.cn openshift_node_group_name='node-config-compute'
node02.ctwifi.cn openshift_node_group_name='node-config-compute'
infra-node1.ctwifi.cn openshift_node_group_name='node-config-infra'

1 ответ

FAILED - RETRYING: Wait for control plane pods... означает, что есть проблема с сервером API. Сама проблема различна. Мне не хватает комментариев, но я постараюсь ответить на них.

Иногда openshift не может найти маршрут к стручкам, если есть такое условие, то добавьте openshift_set_node_ip=true в [OSEv3:vars] и положи osnode1 openshift_ip=xxx.xxx.xxx.xxx .... к каждому узлу.

Иногда возникает проблема, если нет созданных пользователей, то вы должны добавить openshift_master_htpasswd_users={'admin': '$apr1$RbOvaj8r$LEqJqG6V/O/i7Pf...'}

Кроме того, лучше, чтобы API и ETCD были в разных местах.

Ниже файл инвентаризации, я немного отредактировал, пожалуйста, посмотрите:

#Create an OSEv3 group that contains the masters and nodes groups
[OSEv3:children]
masters
nodes
etcd
#Set variables common for all OSEv3 hosts
[OSEv3:vars]
#SSH user, this user should allow ssh based auth without requiring a password
ansible_ssh_user=root

#If ansible_ssh_user is not root, ansible_become must be set to true
#ansible_become=true

openshift_deployment_type=origin
openshift_set_node_ip=true

#uncomment the following to enable htpasswd authentication; defaults to AllowAllPasswordIdentityProvider
#openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', 'challenge': 'true', 'kind': 'HTPasswdPasswordIdentityProvider'}]
openshift_master_htpasswd_users={'admin': '$apr1$RbOvaj8r$LEqJqG6V/O/i7Pf...'}
#openshift_release=3.10

openshift_check_min_host_memory_gb=8
openshift_check_min_host_disk_gb=10
openshift_disable_check=docker_image_availability

#host group for masters
[masters]
master.ctwifi.cn

#host group for etcd
[etcd]
node02.ctwifi.cn

#host group for nodes, includes region info
[nodes]
master.ctwifi.cn openshift_ip=10.10.0.231 openshift_schedulable=true openshift_node_group_name='node-config-master'
#node01.ctwifi.cn openshift_ip=10.10.0.232 openshift_schedulable=true openshift_node_group_name='node-config-compute'
node02.ctwifi.cn openshift_ip=10.10.0.233 openshift_schedulable=true openshift_node_group_name='node-config-compute'
infra-node1.ctwifi.cn openshift_ip=10.10.0.234 openshift_schedulable=true openshift_node_group_name='node-config-infra'

Я использую centos7.5 и релизную версию openshift-ansiblehttps://github.com/openshift/openshift-ansible/archive/openshift-ansible-3.10.52-1.tar.gz, На моей виртуальной машине он работает без проблем. И это мой минимальный файл инвентаря, если вы хотите сравнить его:

[OSEv3:children]
masters
nodes
etcd

[masters]
osnode1

[etcd]
osnode3

[nodes]
osnode1 openshift_ip=10.10.0.231 openshift_schedulable=true openshift_node_group_name='node-config-master'
osnode2 openshift_ip=10.10.0.232 openshift_schedulable=true openshift_node_group_name='node-config-infra'
osnode3 openshift_ip=10.10.0.233 openshift_schedulable=true openshift_node_group_name='node-config-compute'

[OSEv3:vars]
ansible_ssh_user=root
openshift_deployment_type=origin
openshift_release="3.10"
openshift_image_tag="v3.10"
openshift_set_node_ip=true
openshift_master_default_subdomain=apps.k8s.labs
openshift_docker_selinux_enabled=True
openshift_check_min_host_memory_gb=16
openshift_check_min_host_disk_gb=50
openshift_disable_check=docker_image_availability
os_sdn_network_plugin_name='redhat/openshift-ovs-multitenant'
openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true','challenge':'true', 'kind': 'HTPasswdPasswordIdentityProvider'}]
openshift_master_htpasswd_users={'admin': '$apr1$RbOvaj8r$LEqJqG6V/O/i7Pfyyyyyy.', 'user': '$apr1$MfsFK97I$enQjqHCh2LL8w4EBwNrrrr'}
Другие вопросы по тегам