This is automatic translation. If you do not like it, switch to English or another language. Thank you for understanding. OK Show original
함유량

Kubernetes의 Redmine – 2 부 : Redmine 설치

이것은 시리즈의 두 번째 부분입니다. Kubernetes에 Redmine 배포. 이 기사에서는 안정적인 Redmine 설치를 배포하는 방법에 대한 지침을 제공합니다.

1 부 계산

이제 Kubernetes에 Redmine을 설치해야합니다. 결국, 그것이 당신이 온 것입니다. 맞습니까?

In Kubernetes의 레드 마인-1 부 : 환경 준비클러스터 내부의 인터넷 요청을 리디렉션하는 구성 요소 인 Ingress Controller를 설치하고 dns 도메인 redminek8s.ddns.net을 만들었습니다. 이제 HTTPS 만 구성하면 Redmine을 배포 할 준비가되었습니다.

인증 관리자가있는 HTTPS

Redmine을 HTTP로 유지할 수는 있지만 HTTPS는 웹 사이트의 표준이되었으므로 웹 사이트에서 HTTPS를 사용하지 않을 때 대부분의 브라우저에서 보안 문제를 경고합니다.

인증서를 구입하여 사이트에 업로드하여 특정 시간 후에 갱신하고 프로세스를 반복해야하기 때문에 일반적으로 HTTPS를 활성화하는 것은 쉬운 일이 아닙니다. 인증서 관리자는 인증서 갱신을 포함하여이 모든 것을 자동화하고 무료 인증서를 얻습니다. 당신은 더 많은 정보를 볼 수 있습니다 자신의 사이트하지만 다음에 알아야 할 모든 내용을 설명하겠습니다.

인증서 관리자 설치

다음 단계를 실행하여 클러스터에 cert-manager를 설치하십시오.

투구 레포 제트 스택 추가 https://charts.jetstack.io && helm repo 업데이트

헬멧 설치 인증서 관리자 jetstack / cert-manager --set installCRDs = true

먼저 cert-manager가있는 저장소를 추가 한 다음 최신 버전을 설치하십시오.

인증 기관에 연결

이제 인증서 관리자에게 선택한 인증서 공급자에 연결하도록 지시해야합니다. 무료 인증 기관인 LetsEncrypt를 사용합니다. 이 파일을 먼저 작성하고 (<your-email-address>를 실제 이메일 주소로 바꾸어야 함) cluster-issuer.yaml로 이름을 지정하십시오.

api 버전 : cert-manager.io/v1alpha2

종류 : ClusterIssuer

메타 데이터 :

이름 : letsencrypt

투기:

절정:

섬기는 사람: https://acme-v02.api.letsencrypt.org/directory

이메일 : <이메일 주소>

privateKeySecretRef :

이름 : letsencrypt

솔버 :

-http01 :

입구:

클래스 : nginx

그런 다음 클러스터에 적용하십시오.

kubectl apply -f cluster-issuer.yaml

축하합니다! 위의 파일은 클러스터에 쓰고 적용하는 첫 번째 kubernetes 구성입니다. LetsEncrypt에 연결하는 방법을 보여 주었지만 Part 1에서 작성한 Ingress Controller에 대해서도 설명합니다. (클래스 : nginx 끝에)이 유형의 구성에는 일부 특성의 종속성을 나타내는 공백이있는 행이 있습니다. 다른 사람. 파일을 읽고 올바르게 적용 할 수 있도록 표시된대로 공백을 유지하십시오.

이제 클러스터에서 HTTPS를 사용할 수 있습니다. 애플리케이션을 설치할 때마다 HTTPS 및 짜잔! 인증서를 얻는 전체 과정은 뒤에서 자동으로 수행됩니다.

Redmine 설치

이것이 우리 모두를 기다리는 것입니다. Redmine을 몇 가지 방법으로 설치할 수 있지만, 가장 편리한 방법은 Helm을 사용하는 것입니다. 이전에 이미했던 것처럼 먼저 Redmine은

조타 repo bitnami 추가 https://charts.bitnami.com/bitnami && helm repo 업데이트

그러나 이번에는 바로 설치하는 대신 Redmine이 원하는 사용자 지정 동작을 나타내는 구성 파일을 만듭니다.

우리는 모든 구성을 자체 섹션으로 분리하지만 모두 동일한 파일에 하나씩 배치합니다. 파일 values.yaml을 호출하십시오.

모든 Helm 응용 프로그램에는 응용 프로그램에 대해 가능한 모든 구성이 가능한 values.yaml 파일이 있습니다. 우리는 우리 자신의 값을 만들 때 원하는 변경을 정의합니다. 파일에 포함되지 않은 값은 기본 파일에 그대로 유지됩니다.

모든 기본값은 키 응용 프로그램 페이지에서 찾을 수 있습니다. https://hub.helm.sh/charts/bitnami/redmine. 계속해서 모든 구성을 확인하십시오.

최초 관리자

RedmineUsername : adminUser

RedminePassword : <my-password>

이 단계는 이해하기 쉬운만큼 필요합니다. Redmine을 처음 사용하는 사용자이며 처음으로 로그인하는 데 사용합니다.

Redmine이 설치되면이 사용자로 액세스하여 새 설치를 구성 할 수 있습니다.

PostgreSQL 데이터베이스

기본적으로 Helm 설치에는 mariadb 데이터베이스가 작성되어야합니다. 대신 PostgreSQL을 사용하도록 설치를 구성합니다. 아래에서 볼 수 있듯이이 데이터베이스에 액세스하려면 최소한 암호를 추가해야합니다

데이터베이스 유형 : postgresql

mariadb :

사용 : 거짓

postgresql :

사용 : true

postgresql 데이터베이스 : Redmine

postgresqlUsername : 레드 마인

postgresqlPassword : <some-safe-password>

우리는 PostgreSQL 데이터베이스의 구성과 함께 mariadb를 설치하지 않기를 명시 적으로 설치해야합니다.

DNS 이름 구성

아래 구성은 1 부에서 수행 한 DNS 구성의 다른 측면입니다. 보시다시피 HTTPS 기반 프로토콜 인 TLS를 활성화하고 DNS 레코드를 만들 때 사용한 호스트 이름을 설정합니다.

입구:

사용 : true

certManager : true

호스트 이름 : redminek8s.ddns.net

tls : 사실

주석 :

kubernetes.io/ingress.class : nginx

cert-manager.io/cluster-issuer : letsencrypt

또한 마지막 두 줄에서 응용 프로그램을 Ingress 컨트롤러 및 이전에 만든 클러스터 발급자와 연결합니다.

이제 사용자 정의 구성으로 Redmine을 배포 할 수 있습니다.

helm install Redmine -f values.yaml bitnami / redmine

이 줄은 이전에 사용했던 다른 Helm 설치 줄과 비슷하지만 이번에는 사용자 지정 값을 제공합니다 .yaml. 이것은 Helm 응용 프로그램을 사용자 정의하는 방법입니다.

응용 프로그램을 만드는 데 시간이 걸리므로 인내심이 좀 더 필요합니다. 이 명령을 실행하여 응용 프로그램 컨테이너의 상태를 확인할 수 있습니다.

kubectl 광고 모음-시계

이 명령은 다음과 비슷한 것을 반환합니다.

이름 준비 상태가 연령을 다시 시작 함

. . .

redmine-999c68dd9-x7h2k 1/1 달리기 0 6m40s

redmine-postgresql-0 1/1 달리기 0 6m40s

두 컨테이너의 상태가 실행 중이고 모두 준비가 될 때까지 기다려야합니다. 제 경우에는 약 1 분이 걸렸습니다.

이제 모두 브라우저를 열고 새로운 배포로 이동할 준비가되었습니다.

레드 마인 준비

최대 포장

Kubernetes는 응용 프로그램을 배포하기위한 복잡한 도구이지만 Helm의 도움을 받아 그 복잡성을 탐색하고 신뢰할 수있는 Redmine 설치를 배포했습니다.

이 방법의 요약은 다음 git repo에서 찾을 수 있습니다. https://github.com/lcofre/redmine-on-k8s. 붙어 있으면 파일과 자유롭게 비교하십시오.

복잡하거나 설명이 클라우드에 따라 다르기 때문에 일부 개념은 토론에서 제외했습니다. 그중에는 응용 프로그램의 활기와 준비성, 수신 메일 구성 및 더 많은 부하를 처리하기위한 확장이 있습니다. 향후 가장 유용한 방법에 대해 논의 할 수 있도록 가장 관심있는 사항을 아래에 알려주십시오.

저자: 리안드로 코 프레, 루카 슈 베나

추가 정보
무료 시험판

쉬운 Redmine 10 업그레이드
인기 플러그인 및 기능
신규 및 모바일 디자인
서버 업그레이드
글로벌 클라우드

무료 평가판 시작

30 일 무료 평가판에서 Easy Redmine을 사용해보십시오

모든 기능을 갖춘 30 일, SSL로 보호 된 일일 백업, 지리적 위치에서

or