Nexus RM — OSS — Tips

от автора

Проблема

В настройках registry каким-то чудом прописали два одинаковых порта на http и https — они должны быть разные.После рестарта nexus не запускается из-за этого:

attributes.docker.httpsPort: HTTP and HTTPs ports must be different

Как я это лечил в кубере

Важно: запускать докер от пользователя кому принадлежит БД, если этого не сделать — некоторые таблицы потом становятся не читаемые — приходится потом делать chown на нужного пользователя.

Зайти на ноду, куда зацепился pv/pvc

docker run --rm -ti -v /var/lib/kubelet/plugins/kubernetes.io/csi/pv/pv-nexus-dev/globalmount:/tmp1 sonatype/nexus3:3.39.0 /bin/bash java -jar /opt/sonatype/nexus/lib/support/nexus-orient-console.jar

Просмотр репозиториев:

connect plocal:/tmp1/db/config admin admin orientdb {db=config}> select * from repository limit 100 +----+------+---------+------+---------+---------+---------+---------------------------------------------------------------------------------------------+ |#   |@RID  |@CLASS   |online|recipe_na|routingRu|repositor|attributes                                                                                   | +----+------+---------+------+---------+---------+---------+---------------------------------------------------------------------------------------------+ |0   |#37:0 |reposi...|true  |nuget-...|         |nuget-...|{storage={writePolicy=ALLOW, blobStoreName=default}}                                         | |1   |#37:1 |reposi...|true  |nuget-...|         |nuget-...|{group={memberNames=[nuget-hosted, nuget.org-proxy]}, storage={blobStoreName=default}}       | |2   |#37:2 |reposi...|true  |maven2...|         |maven-...|{maven={versionPolicy=SNAPSHOT, layoutPolicy=STRICT}, storage={writePolicy=ALLOW, strictCo...| |3   |#37:3 |reposi...|true  |maven2...|         |maven-...|{maven={versionPolicy=MIXED}, group={memberNames=[maven-releases, maven-snapshots, maven-c...| |4   |#37:4 |reposi...|true  |maven2...|         |maven-...|{proxy={contentMaxAge=-1.0, remoteUrl=https://repo1.maven.org/maven2/, metadataMaxAge=1440...| |5   |#37:5 |reposi...|true  |maven2...|         |web-ma...|{maven={versionPolicy=RELEASE, layoutPolicy=STRICT}, storage={strictContentTypeValidation=...| |6   |#37:6 |reposi...|true  |maven2...|         |web-ma...|{cleanup={policyName=[None]}, maven={versionPolicy=RELEASE, layoutPolicy=STRICT}, storage=...| |7   |#37:7 |reposi...|true  |pypi-h...|         |kkryuc...|{cleanup={policyName=[None]}, component={proprietaryComponents=false}, storage={strictCont...| |8   |#37:8 |reposi...|true  |npm-ho...|         |npm-pr...|{storage={strictContentTypeValidation=true, writePolicy=ALLOW_ONCE, blobStoreName=default}}  |

Вывести нужную строку:

select * from repository where @RID = "#38:3" +----+-----+---------+------+---------+---------+---------+---------------------------------------------------------------------------------------------+ |#   |@RID |@CLASS   |online|recipe_na|routingRu|repositor|attributes                                                                                   | +----+-----+---------+------+---------+---------+---------+---------------------------------------------------------------------------------------------+ |0   |#38:3|reposi...|true  |docker...|         |docker...|{component={proprietaryComponents=false}, docker={v1Enabled=true, forceBasicAuth=true, htt...| +----+-----+---------+------+---------+---------+---------+---------------------------------------------------------------------------------------------+

Показать полное значение полей:

orientdb {db=config}> DISPLAY RAW RECORD 0   LOW LEVEL CLUSTER INFO status: PRESENT cluster fieldId: 9109013009270833256 cluster name: repository_1 in cluster position: 3 empty: false contentSize: 351 n-pages: 1   +----------PAGE_ID---------------+------IN_PAGE_POSITION----------+---------IN_PAGE_SIZE-----------+----PAGE_CONTENT---->> | 1 | 3 | 360 |ZFoBAAAAFHJlcG9zaXRvcnmDAQAAACufAQAAATydAQAAAUqjAQAAAVmhAQAAAAAABgcSY29tcG9uZW50AAAAVwwHDGRvY2tlcgAAAHUMBw5zdG9yYWdlAAAAzAwCBypwcm9wcmlldGFyeUNvbXBvbmVudHMAAAB0AAAIBxJ2MUVuYWJsZWQAAAC6AAccZm9yY2VCYXNpY0F1dGgAAAC7AAcSaHR0cHNQb3J0AAAAvAUHEGh0dHBQb3J0AAAAxAUBAUC/kwAAAAAAQL+TAAAAAAAIBzZzdHJpY3RDb250ZW50VHlwZVZhbGlkYXRpb24AAAEoAAcWd3JpdGVQb2xpY3kAAAEpBwcYbGF0ZXN0UG9saWN5AAABLwAHGmJsb2JTdG9yZU5hbWUAAAEwBwEKQUxMT1cAFmRvY2tlci1ibG9iGmRvY2tlci1ob3N0ZWQcZG9ja2VyLXByaXZhdGUBAf//////////   RECORD CONTENT INFO  class name: repository  fail on Reading: false  fail position: 0  number of properties : 5    PROPERTIES   property name: attributes   property type: EMBEDDEDMAP   property globalId: 65   fail on reading: false   property value: {component={proprietaryComponents=false}, docker={v1Enabled=true, forceBasicAuth=true, httpsPort=8083.0, httpPort=8083.0}, storage={strictContentTypeValidation=true, writePolicy=ALLOW, latestPolicy=false, blobStoreName=docker-blob}}     property name: recipe_name   property type: STRING   property globalId: 79   fail on reading: false   property value: docker-hosted     property name: repository_name   property type: STRING   property globalId: 78   fail on reading: false   property value: docker-private     property name: online   property type: BOOLEAN   property globalId: 81   fail on reading: false   property value: true     property name: routingRuleId   property type: LINK   property globalId: 80   fail on reading: false   property value: null

Сделать бекап:

export database /tmp1/config.export Exporting current database to: database /tmp1/config.export in GZipped JSON format ...   Started export of database 'config' to /tmp1/config.export.gz... Exporting database info...OK .......

В файле бекапа посмотреть как правильно пишется значение, поправить значение, проапдейтить:

# обновлять каждую компоненту отдельно — тогда будет проставляться знак равно

update repository set attributes.component={"proprietaryComponents":false}  where @RID="#38:3" update repository set attributes.docker={"v1Enabled":true,"forceBasicAuth":true,"httpPort":8083.0} where @RID="#38:3"

PS:

Посмотреть таблицы:

orientdb {db=config}> LIST CLASSES CLASSES +----+------------------------+-------------+-------------------------------------------------------+-----+ |#   |NAME                    |SUPER-CLASSES|CLUSTERS                                               |COUNT| +----+------------------------+-------------+-------------------------------------------------------+-----+ |0   |capability              |             |capability(29),capability_1(30)                        |   13| |1   |change_repo_blobstore   |             |change_repo_blobstore(54),change_repo_blobstore_1(55)  |    0| |2   |cleanup                 |             |cleanup(35),cleanup_1(36)                              |    3| |3   |deploymentidentifier    |             |deploymentidentifier(49)                               |    1| |4   |E                       |             |e(11),e_1(12)                                          |    0| |5   |email                   |             |email(34)                                              |    1| |6   |firewall_ignore_patterns|             |firewall_ignore_patterns(22)                           |    1| |7   |healthcheckconfig       |             |healthcheckconfig(23),healthcheckconfig_1(24)          |   25| |8   |http_client             |             |http_client(33)                                        |    1| |9   |key_store               |             |key_store(27),key_store_1(28)                          |    2| |10  |ldap                    |             |ldap(14),ldap_1(15)                                    |    0| |11  |ldap_connection         |             |ldap_connection(18),ldap_connection_1(19)              |    0| |12  |ldap_host               |             |ldap_host(16),ldap_host_1(17)                          |    0| |13  |ldap_mapping            |             |ldap_mapping(20),ldap_mapping_1(21)                    |    0| |14  |log4j_visualizer        |             |log4j_visualizer(56)                                   |    0| |15  |OFunction               |             |ofunction(6)                                           |    0|


ссылка на оригинал статьи https://habr.com/ru/articles/751970/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *