'데이터 엔지니어'로 성장하기

정리하는 걸 좋아하고, 남이 읽으면 더 좋아함

Storage/Ceph

Kubernetes) ceph dashboard login error

MightyTedKim 2022. 3. 14. 13:28
728x90
반응형

rook-ceph k8s에 올려서 dashboard 보려고하는데 안됨

1. connection reset by peer

-> ssl 설정 해제

 vi cluster.yaml

dashboard:
    enabled: true
    # serve the dashboard under a subpath (useful when you are accessing the dashboard via a reverse proxy)
    #urlPrefix: /ceph-dashboard
    # serve the dashboard at the given port.
    port: 8443
    # serve the dashboard using SSL
    #ssl: true
    ssl: false

$ k apply -f cluster.yaml

2. url 접근은 지만 로그인 안됨

왜인지 로그인 횟수 오류로 안되는 듯

$ k logs rook-ceph-mgr-a-8594c684c-gt9nn -n rook-ceph --follow

debug 2022-03-14T02:32:52.525+0000 7faf8b87f700  0 [dashboard WARNING root] Maximum number of unsuccessful log-in attempts (10) reached for username "admin" so the account was blocked. An administrator will need to re-enable the account
debug 2022-03-14T02:32:52.525+0000 7faf8b87f700  0 [dashboard ERROR exception] Dashboard Exception
Traceback (most recent call last):
  File "/usr/share/ceph/mgr/dashboard/services/exception.py", line 46, in dashboard_exception_handler
    return handler(*args, **kwargs)
  File "/usr/lib/python3.6/site-packages/cherrypy/_cpdispatch.py", line 54, in __call__
    return self.callable(*self.args, **self.kwargs)
  File "/usr/share/ceph/mgr/dashboard/controllers/__init__.py", line 694, in inner
    ret = func(*args, **kwargs)
  File "/usr/share/ceph/mgr/dashboard/controllers/__init__.py", line 909, in wrapper
    return func(*vpath, **params)
  File "/usr/share/ceph/mgr/dashboard/controllers/auth.py", line 81, in create
    raise InvalidCredentialsError
dashboard.exceptions.InvalidCredentialsError: Invalid credentials
debug 2022-03-14T02:32:52.526+0000 7faf8b87f700  0 [dashboard INFO request] [10.244.5.0:7368] [POST] [400] [0.009s] [80.0B] [969a48bb-6d4b-480f-a23c-b9e2aa6e47ac] /api/auth


접속 횟수 오류 초과 -> ceph들어가서 reset 해주기

$ k exec -it rook-ceph-tools-74bb778c5-qmjhd -n rook-ceph -- /bin/sh
ceph> dashboard reset-account-lockout-attempts
Option ACCOUNT_LOCKOUT_ATTEMPTS reset to default value "10"

다시 로그인, invalidcredential

debug 2022-03-14T03:59:00.182+0000 7faf8b87f700  0 [dashboard ERROR exception] Dashboard Exception
Traceback (most recent call last):
  File "/usr/share/ceph/mgr/dashboard/services/exception.py", line 46, in dashboard_exception_handler
    return handler(*args, **kwargs)
  File "/usr/lib/python3.6/site-packages/cherrypy/_cpdispatch.py", line 54, in __call__
    return self.callable(*self.args, **self.kwargs)
  File "/usr/share/ceph/mgr/dashboard/controllers/__init__.py", line 694, in inner
    ret = func(*args, **kwargs)
  File "/usr/share/ceph/mgr/dashboard/controllers/__init__.py", line 909, in wrapper
    return func(*vpath, **params)
  File "/usr/share/ceph/mgr/dashboard/controllers/auth.py", line 85, in create
    raise InvalidCredentialsError
dashboard.exceptions.InvalidCredentialsError: Invalid credentials


admin 에 아래 비밀번호 넣으면 맞는데. 왜 안되지

$ kubectl -n rook-ceph get secret rook-ceph-dashboard-password -o yaml | grep "password:" | awk '{print $2}' | base64 --decode
{-9PB>BxDC6!tab/BZiY

계속 invalid라고 나옴.. 그럼 새로 계정 만들어야지 

$ k exec -it rook-ceph-tools-74bb778c5-qmjhd -n rook-ceph -- /bin/sh
> cd /home/rook/
> echo -n "p@ssw0rd" > password.txt
> ceph dashboard ac-user-create tedkim-i password.txt administrator
{"username": "tedkim", "password": "$2b$12$yhEPSJevL6eOFPNImpNxtur1gALBonCRr32eB/9pDB81fSaJd/mgK", "roles": ["administrator"], "name": null, "email": null, "lastUpdate": 1647231464, "enabled": true, "pwdExpirationDate": null, "pwdUpdateRequired": false}
> ceph dashboard ac-user-show
["admin", "tedkim"]

다시 UI 들어가서 tedkim/ p@ssw0rd 입력하면 admin 계정으로 로그인

화면에서 기존 admin을 수정하면 끝!

참고

- https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/5/html/dashboard_guide/ceph-dashboard-installation-and-access

- https://da-nika.tistory.com/184

728x90
반응형