Instalez MAAS 3.0 (regiond+rackd) pe un nod de management HPC (Ubuntu 18.04ï¼. Interfețele de rețea infiniband au cauzat imediat unele probleme, deoarece adresa MAC este 20-octet lung, nu 6-octet lung. Dar MAAS DB folosește tip macaddr pentru coloana mac_address din tabelul maasserver_interface, care presupune 6-octeți.
2021-07-21 07:37:31 maasserver.start_up: [eroare] Eroare baza de date la pornire
Traceback (cel mai recent apel ultimul):
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/django/db/backends/utils.py”, linia 84, în _execute
returnează self.cursor.execute(sql, params)
psycopg2.errors.InvalidTextRepresentation: sintaxă de intrare nevalidă pentru tipul macaddr: "20:00:19:07:fe:80:00:00:00:00:00:00:b8:83:03:ff:ff:7f: 31:d5"
LINIA 1: ...15:fe', '00:11:0a:6c:25:4d', '14:02:ec:33:2b:75', '20:00:19:...
^
Excepția de mai sus a fost cauza directă a următoarei excepții:
Traceback (cel mai recent apel ultimul):
Fișierul „/snap/maas/15003/lib/python3.8/site-packages/maasserver/start_up.py”, linia 68, în start_up
randament deferToDatabase(inner_start_up, master=master)
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/twisted/python/threadpool.py”, rândul 250, în inContext
rezultat = inContext.theWork()
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/twisted/python/threadpool.py”, linia 266, în <lambda>
inContext.theWork = lambda: context.call(ctx, func, *args, **kw)
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/twisted/python/context.py”, linia 122, în callWithContext
return self.currentContext().callWithContext(ctx, func, *args, **kw)
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/twisted/python/context.py”, linia 85, în callWithContext
return func(*args,**kw)
Fișierul „/snap/maas/15003/lib/python3.8/site-packages/provisioningserver/utils/twisted.py”, linia 870, în callInContext
return func(*args, **kwargs)
Fișierul „/snap/maas/15003/lib/python3.8/site-packages/provisioningserver/utils/twisted.py”, linia 202, în wrapper
rezultat = func(*args, **kwargs)
Fișierul „/snap/maas/15003/lib/python3.8/site-packages/maasserver/utils/orm.py”, linia 706, în call_with_connection
return func(*args, **kwargs)
Fișierul „/snap/maas/15003/lib/python3.8/site-packages/maasserver/utils/__init__.py”, linia 194, în call_with_lock
return func(*args, **kwargs)
Fișierul „/snap/maas/15003/lib/python3.8/site-packages/maasserver/utils/orm.py”, linia 751, în call_within_transaction
return func_outside_txn(*args, **kwargs)
Fișierul „/snap/maas/15003/lib/python3.8/site-packages/maasserver/utils/orm.py”, linia 554, în retrier
return func(*args, **kwargs)
Fișierul „/usr/lib/python3.8/contextlib.py”, linia 75, în interior
return func(*args, **kwds)
Fișierul „/snap/maas/15003/lib/python3.8/site-packages/maasserver/start_up.py”, linia 121, în inner_start_up
nod = RegionController.objects.get_or_create_running_controller()
Fișierul „/snap/maas/15003/lib/python3.8/site-packages/maasserver/models/node.py”, linia 741, în get_or_create_running_controller
nod = self._find_or_create_running_controller()
Fișierul „/snap/maas/15003/lib/python3.8/site-packages/maasserver/models/node.py”, linia 778, în _find_or_create_running_controller
nod = self._find_running_node()
Fișierul „/snap/maas/15003/lib/python3.8/site-packages/maasserver/models/node.py”, linia 798, în _find_running_node
returnează get_one(noduri.distinct())
Fișierul „/snap/maas/15003/lib/python3.8/site-packages/maasserver/utils/orm.py”, linia 112, în get_one
elemente_recuperate = tuplu(islice(articole, 0, 2))
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/django/db/models/query.py”, linia 274, în __iter__
self._fetch_all()
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/django/db/models/query.py”, linia 1242, în _fetch_all
self._result_cache = list(self._iterable_class(self))
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/django/db/models/query.py”, linia 55, în __iter__
rezultate = compiler.execute_sql(chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size)
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/django/db/models/sql/compiler.py”, linia 1140, în execute_sql
cursor.execute(sql, parametri)
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/django/db/backends/utils.py”, linia 67, în execuție
return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/django/db/backends/utils.py”, linia 76, în _execute_with_wrappers
return executor (sql, params, many, context)
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/django/db/backends/utils.py”, linia 84, în _execute
returnează self.cursor.execute(sql, params)
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/django/db/utils.py”, linia 89, în __exit__
ridicați dj_exc_value.with_traceback(traceback) de la exc_value
Fișierul „/snap/maas/15003/usr/lib/python3/dist-packages/django/db/backends/utils.py”, linia 84, în _execute
return self.cursor.execute(sql, params)
django.db.utils.DataError: sintaxă de intrare nevalidă pentru tipul macaddr: "20:00:19:07:fe:80:00:00:00:00:00:00:b8:83:03:ff:ff: 7f:31:d5"
LINIA 1: ...15:fe', '00:11:0a:6c:25:4d', '14:02:ec:33:2b:75', '20:00:19:...
^
Există vreo modalitate de a restricționa interfețele de rețea pe care maas le va citi? Pentru a exclude interfețele infinite (ib0 și ib1 în cazul meu), de exemplu.
Sau sugerez dezvoltatorilor MAAS să folosească un tip diferit (variabil de caractere) pentru coloana mac_address.
Mulțumiri