Error deploying with ipv6 using ceph-public-network

Bug #1671861 reported by Jorge Niedbalski
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Charm Helpers
Fix Released
Medium
Jorge Niedbalski
OpenStack Ceph-FS Charm
Fix Released
High
Jorge Niedbalski

Bug Description

The following traceback while deploying from ($ juju deploy cs:~openstack-charmers/ceph-fs)

unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.juju-log server.go:268 ceph-mds:73: Invoking reactive handler: reactive/ceph_fs.py:80:config_changed
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 Traceback (most recent call last):
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/netaddr/strategy/ipv4.py", line 125, in str_to_int
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 return _struct.unpack('>I', _inet_pton(AF_INET, addr))[0]
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 OSError: illegal IP address string passed to inet_pton
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 During handling of the above exception, another exception occurred:
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 Traceback (most recent call last):
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/netaddr/ip/__init__.py", line 311, in __init__
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 self._value = self._module.str_to_int(addr, flags)
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/netaddr/strategy/ipv4.py", line 129, in str_to_int
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 raise AddrFormatError('%r is not a valid IPv4 address string!' % addr)
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 netaddr.core.AddrFormatError: '::1' is not a valid IPv4 address string!
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 During handling of the above exception, another exception occurred:
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 Traceback (most recent call last):
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/netaddr/ip/__init__.py", line 791, in parse_ip_network
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 ip = IPAddress(val1, module.version, flags=INET_PTON)
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/netaddr/ip/__init__.py", line 314, in __init__
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 % (addr, self._module.version))
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 netaddr.core.AddrFormatError: base address '::1' is not IPv4
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 During handling of the above exception, another exception occurred:
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 Traceback (most recent call last):
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/netaddr/ip/__init__.py", line 928, in __init__
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 implicit_prefix, flags)
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/netaddr/ip/__init__.py", line 795, in parse_ip_network
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 expanded_addr = _ipv4.expand_partial_address(val1)
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/netaddr/strategy/ipv4.py", line 259, in expand_partial_address
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 raise error
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 netaddr.core.AddrFormatError: invalid partial IPv4 address: '::1'!
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 During handling of the above exception, another exception occurred:
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 Traceback (most recent call last):
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/netaddr/ip/__init__.py", line 803, in parse_ip_network
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 prefixlen = int(val2)
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 ValueError: invalid literal for int() with base 10: 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff/128'
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 During handling of the above exception, another exception occurred:
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 Traceback (most recent call last):
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/var/lib/juju/agents/unit-ceph-fs-4/charm/hooks/ceph-mds-relation-changed", line 19, in <module>
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 main()
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/charms/reactive/__init__.py", line 78, in main
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 bus.dispatch()
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/charms/reactive/bus.py", line 434, in dispatch
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 _invoke(other_handlers)
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/charms/reactive/bus.py", line 417, in _invoke
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 handler.invoke()
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/charms/reactive/bus.py", line 291, in invoke
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 self._action(*args)
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/var/lib/juju/agents/unit-ceph-fs-4/charm/reactive/ceph_fs.py", line 108, in config_changed
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 networks = get_networks('ceph-public-network')
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/var/lib/juju/agents/unit-ceph-fs-4/charm/reactive/ceph_fs.py", line 143, in get_networks
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 return [n for n in networks if get_address_in_network(n)]
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/var/lib/juju/agents/unit-ceph-fs-4/charm/reactive/ceph_fs.py", line 143, in <listcomp>
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 return [n for n in networks if get_address_in_network(n)]
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/charmhelpers/contrib/network/ip.py", line 93, in get_address_in_network
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 addr['netmask']))
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/netaddr/ip/__init__.py", line 933, in __init__
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 implicit_prefix, flags)
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/netaddr/ip/__init__.py", line 810, in parse_ip_network
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 mask = IPAddress(val2, module.version, flags=INET_PTON)
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 File "/usr/local/lib/python3.5/dist-packages/netaddr/ip/__init__.py", line 280, in __init__
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 % self.__class__.__name__)
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 INFO unit.ceph-fs/4.ceph-mds-relation-changed logger.go:40 ValueError: IPAddress() does not support netmasks or subnet prefixes! See documentation for details.
unit-ceph-fs-4[2718]: 2017-03-06 20:32:16 ERROR juju.worker.uniter.operation runhook.go:107 hook "ceph-mds-relation-changed" failed: exit status 1

Using the following configuration

ubuntu@niedbalski-xenial-bastion:~$ juju get ceph-fs | grep prefer-ipv6 -A 15
  prefer-ipv6:
    description: |
      If True enables IPv6 support. The charm will expect network interfaces
      to be configured with an IPv6 address. If set to False (default) IPv4
      is expected.

      NOTE: these charms do not currently support IPv6 privacy extension. In
      order for this charm to function correctly, the privacy extension must be
      disabled and a non-temporary address must be configured/available on
      your network interface.
    type: boolean
    value: true

ubuntu@niedbalski-xenial-bastion:~$ juju get ceph-fs | grep ceph-public- -A 15
  ceph-public-network:
    description: |
      The IP address and netmask of the public (front-side) network (e.g.,
      192.168.0.0/24).
      If multiple networks are to be used, a space-delimited list of a.b.c.d/x
      can be provided.
    type: string
    value: fd2d:dec4:cf59:3c16::/64

Deployed using:

$ juju deploy -n 3 ceph-osd
$ juju deploy -n 3 ceph-mon
$ juju deploy cs:~openstack-charmers/ceph-fs
$ juju add-relation ceph-mon ceph-osd
$ juju add-relation ceph-fs ceph-mon

Tags: sts

Related branches

Changed in charm-ceph-fs:
status: New → Confirmed
assignee: nobody → Jorge Niedbalski (niedbalski)
importance: Undecided → High
status: Confirmed → In Progress
tags: added: sts
Changed in charm-helpers:
status: New → In Progress
importance: Undecided → Medium
assignee: nobody → Jorge Niedbalski (niedbalski)
description: updated
Changed in charm-helpers:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to charm-ceph-fs (master)

Fix proposed to branch: master
Review: https://review.openstack.org/446722

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to charm-ceph-fs (master)

Reviewed: https://review.openstack.org/446722
Committed: https://git.openstack.org/cgit/openstack/charm-ceph-fs/commit/?id=73e6e31a89a5e4ada58f9be073341b4e7f2d3d76
Submitter: Jenkins
Branch: master

commit 73e6e31a89a5e4ada58f9be073341b4e7f2d3d76
Author: Jorge Niedbalski <email address hidden>
Date: Thu Mar 16 17:07:41 2017 -0300

    Force a charmhelpers sync to 0.14.0.

    This is a partial fix required for fixing
    LP: #1671861, this change is intended to
    retrigger the build using the latest charmhelpers
    release available at https://pypi.python.org/pypi/charmhelpers/0.14.0
    that includes the changes introduced on the public bug.

    Change-Id: Icf36ff6efe60313c305f292c9a7dadaf079eb8ae
    Closes-Bug: #1671861
    Signed-off-by: Jorge Niedbalski <email address hidden>

Changed in charm-ceph-fs:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to charm-ceph-fs (stable/17.02)

Fix proposed to branch: stable/17.02
Review: https://review.openstack.org/446747

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to charm-ceph-fs (stable/17.02)

Reviewed: https://review.openstack.org/446747
Committed: https://git.openstack.org/cgit/openstack/charm-ceph-fs/commit/?id=c9b4131e0c62937b4eb223aa2d768a482beb2f9d
Submitter: Jenkins
Branch: stable/17.02

commit c9b4131e0c62937b4eb223aa2d768a482beb2f9d
Author: Jorge Niedbalski <email address hidden>
Date: Thu Mar 16 17:07:41 2017 -0300

    Force a charmhelpers sync to 0.14.0.

    This is a partial fix required for fixing
    LP: #1671861, this change is intended to
    retrigger the build using the latest charmhelpers
    release available at https://pypi.python.org/pypi/charmhelpers/0.14.0
    that includes the changes introduced on the public bug.

    Change-Id: Icf36ff6efe60313c305f292c9a7dadaf079eb8ae
    Closes-Bug: #1671861
    Signed-off-by: Jorge Niedbalski <email address hidden>
    (cherry picked from commit 73e6e31a89a5e4ada58f9be073341b4e7f2d3d76)

Changed in charm-helpers:
status: Fix Committed → Fix Released
James Page (james-page)
Changed in charm-ceph-fs:
milestone: none → 17.08
James Page (james-page)
Changed in charm-ceph-fs:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.