Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ipv6 CIDR to be used for kubernetes Pods and Services networks #2318

Closed
kmabda opened this issue Sep 5, 2019 · 5 comments
Closed

ipv6 CIDR to be used for kubernetes Pods and Services networks #2318

kmabda opened this issue Sep 5, 2019 · 5 comments

Comments

@kmabda
Copy link

kmabda commented Sep 5, 2019

Version

$ openshift-install version
openshift-install v4.1.9-201907311355-dirty
built from commit d67b11e14c2c7f4a997100784a54fdba35e5ee74
release image quay.io/openshift-release-dev/ocp-release@sha256:27fd24c705d1107cc73cb7dda8257fe97900e130b68afc314d0ef0e31bcf9b8e

Platform:

none (UPI)

What happened?

the openshift installer refuse to generate the ignition files with a ipv6 cird for the clusterNetworks and serviceNetwork

FATAL failed to fetch Kubeconfig Admin Client: failed to load asset "Install Config": invalid "install-config.yaml" file: [networking.serviceNetwork[0]: Invalid value: "fd03:aabb::/64": must use IPv4, networking.clusterNetwork[0].cidr: Invalid value: "fd02:aabb::/64": must use IPv4]

What you expected to happen?

ignitions files for the bootstrap, master and worker nodes generated

How to reproduce it (as minimally and precisely as possible)?

The install-config.yaml used looks like this:

apiVersion: v1
baseDomain: ocp.lab
compute:
- hyperthreading: Enabled
  name: worker
  replicas: 1
controlPlane:
  hyperthreading: Enabled
  name: master
  replicas: 3
metadata:
  name: cl1
networking:
  clusterNetworks:
  - cidr: fd02:aabb::/64
    hostPrefix: 96
  networkType: OpenShiftSDN
  serviceNetwork:
  - fd03:aabb::/64
platform:
  none: {}
pullSecret: '{"auths":{"cloud.openshift.com":{"auth":"xxx"}}}'
$ mkdir assets
$ cp install-config-ipv6.yaml assets/install-config.yaml
$ openshift-install --dir=./assets create ignition-configs

Anything else we need to know?

Part of the validation of the install-config.yaml file content provided to openshift installer there is an explicit check for IPv4 only subnets [1]

Is this use case supported?

Noticed also that all the registries used to pull images needed to install OpenShift have no AAAA records [2], [3]: cloud.openshift.com, quay.io, registry.connect.redhat.com, registry.redhat.io

Which means the master, worker and the bootstrap nodes must have right now ipv4 connectivity over the internet.

References

[1] https://github.com/openshift/installer/blob/master/pkg/validate/validate.go#L110
[2] /var/lib/kubelet/config.json from a master/worker node
[3] /etc/containers/registries.con from a bootstrap node

@dcbw
Copy link
Contributor

dcbw commented Sep 6, 2019

A v6 cluster will require Kubernetes v1.16 and will be subject to the limitations described in kubernetes/enhancements#808.

@morvencao
Copy link
Member

morvencao commented Jan 2, 2020

Same issue!

@dcbw OCP 4.2 introduced OVN as TP feature, which should support IPV6, isn't it?

So I thought the following install-config.yaml should work for IPv6:

apiVersion: v1
baseDomain: myk8s.io
compute:
- hyperthreading: Enabled
  name: worker
  platform: {}
  replicas: 3
controlPlane:
  hyperthreading: Enabled
  name: master
  platform: {}
  replicas: 3
metadata:
  creationTimestamp: null
  name: mycluster
networking:
  clusterNetwork:
  - cidr: fd01::/48
    hostPrefix: 64
  machineCIDR: 10.0.0.0/16
  networkType: OVNKubernetes
  serviceNetwork:
  - fd02::/112
platform:
...

@morvencao
Copy link
Member

IPV6 support PR for OCP has not been merged, see: #2555

@abhinavdahiya
Copy link
Contributor

#2829 merged that allows ipv6 CIDRs.

/close

@openshift-ci-robot
Copy link
Contributor

@abhinavdahiya: Closing this issue.

In response to this:

#2829 merged that allows ipv6 CIDRs.

/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants