Redmine и Kubernetes - Дел 2: Инсталирайте Redmine
Återberättelse Del 1
Vid det här laget ser du formodligen fram emot installationen av Redmine på Kubernetes. Det är ju trots allt det du kom hit for, eller hur?
I Redmine на Kubernetes - Дел 1: Предварителен милион инсталирайте vi Ingress Controller, en компонент за omdirigera internetförfrågningar innuti ditt kluster, och vi skapade en DNS-domän, redminek8s.ddns.net. Не трябва да конфигурирате HTTPS и да възстановите разпространението на Redmine.
HTTPS мед мениджър на сертификати
Även om vi kan behålla Redmine som HTTP har HTTPS blivit standarden för webbplatser, så mycket att de flesta webbläsare varnar dig för en säkerhetsrisk när HTTPS inte används av en webbplats.
Att aktivera HTTPS är vanligtvis inte en trivial uppgift, eftersom du behöver köpa ett certifikat och ladda upp det till din webbplats, förnya det after en viss tid or prepa processen. Мениджърът на сертификати автоматизира всичко това, включващо предварителни сертификати и до други безплатни сертификати. Du kan se mer информация på deras webbplats, men jag kommer att förklara allt du behöver veta härnäst.
Мениджър на сертификати за инсталиране
Извеждане на стъпка за инсталиране на cert-manager в този клъстер:
helm repo добави jetstack https://charts.jetstack.io && helm repo update
helm install cert-manager jetstack / cert-manager --set installCRDs = true
Först lägger du till registret där cert-manager finns och sedan installerar du den senaste versionen.
Anslut till certifikatmyndigheten
Nu behöver vi instruera cert-manager att ansluta till den certifikatleverantör vi väljer. Когато използвате LetsEncrypt, можете да използвате безплатен сертификат. Skapa först denna fil (kom ihåg att ersätta med en riktig e-postadress) och döp den till cluster-issuer.yaml
apiВерсия: cert-manager.io/v1alpha2
вид: ClusterIssuer
метаданни:
име: letsencrypt
спец:
Acme:
сървър: https://acme-v02.api.letsencrypt.org/directory
електронна поща:
privateKeySecretRef:
име: letsencrypt
решават:
- http01:
проникване:
клас: nginx
Tillämpa sedan den på ditt kluster med
kubectl прилагам -f cluster-issue.yaml
Гратис! Файлът ovan е първата конфигурация на Kubernetes на скрийвъра и е включен в групата. Du kanske hart markt att den Visar hur man sluter till LetsEncrypt, men den beskriver också Ingress Controller som vi skapad in Del 1 (classen: nginx i slutet). Den här typen av konfiguration har några rader med mellanslag för att ange beroende av vissa egenskaper till andra. Behåll dessa mellanslag som visas for att säkerställa att filen läses och tillämpas korrekt.
Този клъстер не е активиран за HTTPS. När vi installerar en aplikation kan vi instruera den att fungera med HTTPS och готово! Hela processen med att få certifikatet kommer att göras automatiskt i bakgrunden.
Инсталиране на Redmine
Detta är vad vi alla har väntat på. Ако можете да инсталирате Redmine на друго място, мъжете, които най-често са инсталирани, са насочени към Helm. Precis som vi gjorde tidigare, först lägger vi till lagret där Redmine finns
helm repo добавете битнами https://charts.bitnami.com/bitnami && helm repo update
Men den här gången kommer vi inte att installera директно, vi kommer att skapa en konfigurationsfil för att ange några anpassade beteenden som vill att Redmine ska ha.
Vi kommer att separera alla konfigurationer i egna avsnitt men du lägger dem alla i samma fil, en efter den andra. Изтеглете файла до values.yaml.
Всички приложения на Helm имат value.yaml-fil с всички möjliga конфигуратори, които могат да бъдат намерени за приложения. När vi skapar vår egen values.yaml definierar vi de ändringar vi vill ha. Alla värden som vi inte inkluderar i vår fil kommer att vara oförändrade i standardfilen.
Alla standardvärden kan också hittas på Helm-applikationens sida, https://hub.helm.sh/charts/bitnami/redmine. Gå vidare och kolla alla konfigurationer.
Första administratörsanvändaren
Redmine Användarmn: adminUser
RedmineLösenord:
Detta steg är lika nödvändigt som lätt att förstå. Det är vår första användare på Redmine, den som vi kommer att använda för att logga in för första gången.
Близо до Redmine се инсталира коммер, ако не можете да конфигурирате тази инсталация.
PostgreSQL-бази данни
Som standard kommer vår Helm-installation att kräva att en mariadb-databas skapas. Извеждане на съобщение чрез конфигуриране или инсталиране при използване на PostgreSQL. Du behöver också lägga till minst ett lösenord for att komma åt denna databas, som du kan se nedan
Тип на базата данни: postgresql
mariadb:
активиран: false
PostgreSQL:
активиран: вярно
postgresql База данни: Redmine
postgresqlИме на потребителя: Redmine
postgresqlПарола:
Vi måste tydligt tala om for för installation att vi inte ll att MariaDB ska installeras tillsammans med configurationen för PostgreSQL-база данни.
Конфигурация на DNS име
Конфигурацията не е друга страница на DNS конфигурация в джорда в Del 1. Така можете да се активирате чрез TLS, HTTPS протокол, както и да се задържите във версията, когато използвате скапад в DNS-пост:
проникване:
активиран: вярно
certManager: вярно
име на хост: redminek8s.ddns.net
tls: вярно
анотации:
kubernetes.io/ingress.class: nginx
cert-manager.io/cluster-issuer: letsencrypt
Också på de två sista raderna länkar vi vår aplikation med Ingress Controller och med Cluster Issuer som vi skapade tidigare.
Не можете да разпространявате Redmine с различна конфигурация за преминаване:
helm инсталатор Redmine -f values.yaml bitnami/redmine
Den raden liknar andra helm installera rader vi använde tidigare, men den här gången tillhandahåller vi en anpassad values.yaml. Detta är sättet att anpassa vilken Helm-приложение som helst.
Vi behöver lite mer tålamod ändå, eftersom skapandet av aplikationen tar lite tid. Du kan köra det här commandot för att status kontrollera för dina aplikationscontainrar:
kubectl få pods --гледайте
Commandot kommer att returnera något liknande detta:
NAMN KLAR СТАТУТ OMSTART ÅLDER
. . .
redmine-999c68dd9-x7h2k 1/1 Kör 0 6m40s
redmine-postgresql-0 1/1 Kör 0 6m40s
Du måste vänta tills statusen för båda containrarna är Kör och alla är redo 1/1, vilket i mitt fall tog cirka 6 minute.
Nu är allt klart för att öppna webbläsaren och gå till vår nya distribution:
Redmine е повторен
резюме
Kubernetes е още един комплекс, използван за приложението за разпространение, вие можете да навигирате в генома на комплекса с помощта на Helm (не е добавен ордлек) и да разпространявате pålitlig инсталация от Redmine.
Вие можете да се справите с това ръководство и следното git-repo: https://github.com/lcofre/redmine-on-k8s. Känn dig fri att jämföra med dina filer om du fastnar.
Vi lämnade några begrepp utanför diskussionen eftersom de var kompleksa или förklaringen var molnspecifik. Bland dem finns Liveness och Readiness for din aplikation, konfiguration av inkommande e-post och skalning för att hantera mer belastning. Låt oss veta nedan vad som intresserar dig mest så kan vi diskutera det i en framtida guide.
Последно надграждане на Redmine? Enkel.
Få alla kraftfulla verktyg för perfekt projektplanering, -hantering och -kontroll i en enda programvara.