1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/openeuler-eggo

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
configuration_file_description.md 14 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 15.03.2025 04:09 01724b9

Описание конфигурационного файла```markdown

cluster-id: k8s-cluster // имя кластера username: root // имя пользователя SSH для всех машин, где будет установлен кластер Kubernetes password: 123456 // пароль для входа в систему SSH для всех машин, где будет установлен кластер Kubernetes private-key-path: ~/.ssh/pri.key // путь к приватному ключу SSH для аутентификации без пароля masters: // список узлов master

  • name: test0 // имя узла, видимое кластером Kubernetes; должно соответствовать RFC 1123 поддомену ip: 192.168.0.1 // IP адрес узла port: 22 // порт SSH arch: arm64 // архитектура машины, x86_64 замените на amd64 workers: // список узлов worker
  • name: test0 // имя узла, видимого кластером Kubernetes ip: 192.168.0.1 // IP адрес узла port: 22 // порт SSH arch: arm64 // архитектура машины, x86_64 замените на amd64
  • name: test1 ip: 192.168.0.3 port: 22 arch: arm64 etcds: // список узлов etcd
  • name: etcd-0 // имя узла, видимого кластером Kubernetes ip: 192.168.0.4 // IP адрес узла port: 22 // порт SSH arch: amd64 // архитектура машины, x86_64 замените на amd64 loadbalance: // конфигурация узла loadbalance name: k8s-loadbalance // имя узла, видимого кластером Kubernetes ip: 192.168.0.5 // IP адрес узла
```markdown
port: 22                        # порт SSH
arch: amd64                     # архитектура машины, x86_64 замените на amd64
bind-port: 8443                 # порт прослушивания балансера нагрузки
external-ca: false              # использовать ли внешний сертификат CA
external-ca-path: /opt/externalca # путь к файлу внешнего сертификата CA
service:                        # конфигурация сервиса Kubernetes
  cidr: 10.32.0.0/16            # сегмент IP-адреса, создаваемый сервисом k8s

dnsaddr: 10.32.0.10 # адрес DNS, создаваемый сервисом k8s gateway: 10.32.0.1 # адрес шлюза, создаваемый сервисом k8s dns: # конфигурация coredns, созданной k8s corednstype: pod # тип развертывания coredns, поддерживает pod и binary imageversion: 1.8.4 # версия образа coredns при развертывании в виде pod replicas: 2 # количество реплик coredns при развертывании в виде pod network: # конфигурация сети k8s-кластера podcidr: 10.244.0.0/16 # сегмент IP-адреса сети k8s-кластера plugin: calico # плагин сети, используемый в k8s-кластере plugin-args: {"NetworkYamlPath": "/etc/kubernetes/addons/calico.yaml"} # параметры конфигурации плагина сети k8s apiserver-endpoint: 192.168.122.222:6443 # внешний адрес или домен APISERVER-сервиса, если используется loadbalancer, то указывается его адрес, иначе - адрес первого master-узла apiserver-cert-sans: # дополнительные IP-адреса и домены, требуемые для сертификата APISERVER dnsnames: [] # список дополнительных доменов, требуемых для сертификата APISERVER ips: [] # список дополнительных IP-адресов, требуемых для сертификата APISERVER apiserver-timeout: 120s # время ожидания ответа от APISERVER etcd-external: false # использование внешнего etcd, эта функция еще не реализована etcd-token: etcd-cluster # имя кластера etcd dns-vip: 10.32.0.10 # виртуальный IP-адрес DNS dns-domain: cluster.local # суффикс домена DNS pause-image: k8s.gcr.io/pause:3.```markdown 2 # имя образа пауза-контейнера для выполнения контейнеров network-plugin: cni # тип плагина сети cni-bin-dir: /usr/libexec/cni,/opt/cni/bin # пути к бинарникам CNI, разделенные запятой runtime: docker # используемый контейнерный runtime, поддерживает docker и iSulad runtime-endpoint: unix:///var/run/docker.sock // endpoint контейнерного runtime, для Docker может быть не указан registry-mirrors: [] # списки зеркал для скачивания образов из реестров insecure-registries: [] # списки реестров, использующих HTTP для скачивания образов enable-kubelet-serving: true // Включить сертификат kubelet serving, по умолчанию false config-extra-args: // Дополнительные аргументы запуска компонентов (kube-apiserver/etcd и т. д.)

  • name: kubelet // Поддерживаемые значения для имени: "etcd", "kube-apiserver", "kube-controller-manager", "kube-scheduler", "kube-proxy", "kubelet" extra-args: "--cgroup-driver": systemd // Обратите внимание на ключевые аргументы, связанные с конкретным компонентом, они должны включать "-" или "--" open-ports: // Конфигурация портов, требуемых для открытия, порты, необходимые k8s, не требуют конфигурирования, порты дополнительных плагинов требуются для дополнительной конфигурации worker: // Указание типа узла, где требуется открытие порта, может быть master/worker/etcd/loadbalance
  • port: 111 // Адрес порта protocol: tcp // Тип протокола порта, tcp/udp
  • port: 179 protocol: tcp

Все изменения были сделаны согласно правилам перевода и сохранены исходное форматирование.```markdown
install:                                      # Конфигурация деталей установки пакетов или двоичных файлов различных типов узлов, обратите внимание на то, чтобы соответствующие файлы были помещены в tar.gz пакет установки
   package-source:                                # Конфигурация подробностей пакета установки
     type: tar.gz                              # Тип сжатия пакета установки, в настоящее время поддерживаются только tar.gz пакеты установки
     dstpath: ""                               # Путь пакета установки на целевой машине, должен быть допустимым абсолютным путём
     srcpath:                                  # Пути хранения пакетов установки для разных архитектур, архитектура должна соответствовать архитектуре машины, должен быть допустимым абсолютным путём
       arm64: /root/rpms/packages-arm64.tar.gz    # Путь пакета установки для архитектуры arm64, требуется при наличии машин с архитектурой arm64, должен быть допустимым абсолютным путём
       amd64: /root/rpms/packages-x86.tar.gz      # Путь пакета установки для архитектуры amd64, требуется при наличии машин с архитектурой amd64, должен быть допустимым абсолютным путём
   etcd:                                       # Список пакетов или двоичных файлов, требуемых для установки на узлах etcd
   - name: etcd                                # Название пакета или двоичного файла, если это пакет установки, указывайте только имя, не указывайте версию, установка будет использовать `$name*` для идентификации

Все необходимые изменения выполнены, сохранена структура и форматирование исходного текста. type: pkg # package type, seven possible types: pkg/repo/bin/file/dir/image/yaml. If the configuration is set to repo, then the source repo must be specified in the corresponding node _dst: "" # path to target directory, required for bin/file/dir types. Specifies where files/directories will be placed on the node. To prevent accidental configuration paths that may lead to important file deletion during cleanup, this parameter should correspond to a whitelist, see next section kubernetes-master: # list of packages or binaries for nodes of type k8s master - name: kubernetes-client,kubernetes-master type: pkg kubernetes-worker: # list of packages or binaries for nodes of type k8s worker - name: docker-engine,kubernetes-client,kubernetes-node,kubernetes-kubelet type: pkg _dst: "" - name: conntrack-tools,socat type: pkg _dst: "" network: # list of packages or binaries for network - name: containernetworking-plugins type: pkg _dst: "" loadbalancing: # list of packages or binaries for nodes of type loadbalance - name: gd,gperftools-libs,libunwind,libwebp,libxslt type: pkg _dst: "" - name: nginx,nginx-all-modules,nginx-filesystem,nginx-mod-http-image-filter,nginx-mod-http-perl,nginx-mod-http-xslt-filter,nginx-mod-mail,nginx-mod-stream type: pkg _dst: "" container: # list of packages or binaries for container - name: emacs-filesystem,gflags,gpm-libs,re2,rsync,vim-filesystem,vim-common,vim-enhanced,zlib-devel type: pkg _dst: "" - name: libwebsockets,protobuf,protobuf-devel,grpc,libcgroup type: pkg _dst: "" тип: pkg _dst: "" - имя: yajl, lxc, lxc-libs, lcr, clibcni, iSulad тип: pkg _dst: "" образ: # контейнерный образ tar-пакет - имя: pause.tar тип: image _dst: "" dns: # пакет установки k8s coredns. Если coredns-type конфигурирован как pod, здесь конфигурация не требуется - имя: coredns тип: pkg _dst: "" дополнительные: # дополнительные пакеты или двоичные файлы мастер: - имя: prejoin.sh тип: shell # shell скрипт расписание: "prejoin" # время выполнения: перед тем как мастер-узел присоединится к кластеру

TimeOut: "30s"                              # Время выполнения сценария, если за это время выполнение не завершено, процесс будет принудительно завершен, по умолчанию — 30 секунд
- name: calico.yaml
 type: yaml
 dst: ""
worker:
- name: postjoin.sh
 type: shell                               # Shell-скрипт
 schedule: "postjoin"                      # Время выполнения после присоединения рабочего узла к кластеру

белый список dst

dst может быть конфигурирован как директория из белого списка или её поддиректория

"/usr/bin", "/usr/local/bin", "/opt/cni/bin", "/usr/libexec/cni",
"/etc/kubernetes",
"/usr/lib/systemd/system", "/etc/systemd/system",
"/tmp",

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/openeuler-eggo.git
git@api.gitlife.ru:oschina-mirror/openeuler-eggo.git
oschina-mirror
openeuler-eggo
openeuler-eggo
master