How to install Redmine on IBM Cloud kubernetes cluster » History » Version 3

Oliver Pinter, 2020-10-26 14:57

1 2 Oliver Pinter
h1. Get Redmine on IBM Cloud
2 2 Oliver Pinter
3 2 Oliver Pinter
You should have an IBM Cloud account, otherwise you can [register here].
4 2 Oliver Pinter
At the end of the tutorial you will have a cluster with  Redmine up and runnning.
5 2 Oliver Pinter
6 2 Oliver Pinter
1. We will provision a new Kubernetes Cluster for you if, you already have one skip to step **2**
7 2 Oliver Pinter
2. We will deploy  the IBM Cloud Block Storage plug-in, if already have it skip to step **3**
8 2 Oliver Pinter
3.  Redmine deployment
9 2 Oliver Pinter
10 2 Oliver Pinter
h2. Step 1 provision Kubernetes Cluster
11 2 Oliver Pinter
12 2 Oliver Pinter
* Click the **Catalog** button on the top 
13 2 Oliver Pinter
* Select **Service** from the catalog
14 2 Oliver Pinter
* Search for **Kubernetes Service** and click on it
15 2 Oliver Pinter
![Kubernetes](/kubernetes-select.png)
16 2 Oliver Pinter
* You are now at the Kubernetes deployment page, you need to specify some details about the cluster 
17 2 Oliver Pinter
* Choose a plan **standard** or **free**, the free plan only has one worker node and no subnet, to provision a standard cluster, you will need to upgrade you account to Pay-As-You-Go 
18 2 Oliver Pinter
  * To upgrade to a Pay-As-You-Go account, complete the following steps:
19 2 Oliver Pinter
20 2 Oliver Pinter
  * In the console, go to Manage > Account.
21 2 Oliver Pinter
  * Select Account settings, and click Add credit card.
22 2 Oliver Pinter
  * Enter your payment information, click Next, and submit your information
23 2 Oliver Pinter
* Choose **classic** or **VPC**, read the [docs] and choose the most suitable type for yourself 
24 2 Oliver Pinter
 ![VPC](/infra-select.png)
25 2 Oliver Pinter
* Now choose your location settings, for more information please visit [Locations]
26 2 Oliver Pinter
  * Choose **Geography** (continent)
27 2 Oliver Pinter
![continent](/location-geo.png)
28 2 Oliver Pinter
  * Choose **Single** or **Multizone**, in single zone your data is only kept in on datacenter, on the other hand with Multizone it is distributed to multiple zones, thus  safer in an unforseen zone failure 
29 2 Oliver Pinter
![avail](/location-avail.png)
30 2 Oliver Pinter
  * Choose a **Worker Zone** if using Single zones or **Metro** if Multizone
31 2 Oliver Pinter
 ![worker](/location-worker.png) 
32 2 Oliver Pinter
    * If you wish to use Multizone please set up your account with [VRF] or [enable Vlan spanning]
33 2 Oliver Pinter
    * If at your current location selection, there is no available Virtual LAN, a new Vlan will be created for you 
34 2 Oliver Pinter
 
35 2 Oliver Pinter
* Choose a **Worker node setup** or use the preselected one, set **Worker node amount per zone**
36 2 Oliver Pinter
![worker-pool](/worker-pool.png)
37 2 Oliver Pinter
* Choose **Master Service Endpoint**,  In VRF-enabled accounts, you can choose private-only to make your master accessible on the private network or via VPN tunnel. Choose public-only to make your master publicly accessible. When you have a VRF-enabled account, your cluster is set up by default to use both private and public endpoints. For more information visit [endpoints].
38 2 Oliver Pinter
![endpoints](/endpoints.png)
39 2 Oliver Pinter
* Give cluster a **name**
40 2 Oliver Pinter
41 2 Oliver Pinter
![name-new](/name-new.png)
42 2 Oliver Pinter
* Give desired **tags** to your cluster, for more information visit [tags]
43 2 Oliver Pinter
44 2 Oliver Pinter
![tags-new](/tasg-new.png)
45 2 Oliver Pinter
* Click **create**
46 2 Oliver Pinter
![create-new](/create-new.png)
47 2 Oliver Pinter
48 2 Oliver Pinter
* Wait for you cluster to be provisioned 
49 2 Oliver Pinter
![cluster-prepare](/cluster-prepare.png)
50 2 Oliver Pinter
* Your cluster is ready for usage 
51 2 Oliver Pinter
52 2 Oliver Pinter
![cluster-ready](/cluster-done.png)
53 2 Oliver Pinter
54 3 Oliver Pinter
h2. Step 2 deploy IBM Cloud Block Storage plug-in
55 2 Oliver Pinter
The Block Storage plug-in is a persistent, high-performance iSCSI storage that you can add to your apps by using Kubernetes Persistent Volumes (PVs).
56 2 Oliver Pinter
 
57 2 Oliver Pinter
* Click the **Catalog** button on the top 
58 2 Oliver Pinter
* Select **Software** from the catalog
59 2 Oliver Pinter
* Search for **IBM Cloud Block Storage plug-in** and click on it
60 2 Oliver Pinter
![Block](/block-search.png)
61 2 Oliver Pinter
62 2 Oliver Pinter
* On the application page Click in the _dot_ next to the cluster, you wish to use
63 2 Oliver Pinter
* Click on  **Enter or Select Namespace** and choose the default Namespace or use a custom one (if you get error please wait 30 minutes for the cluster to finalize)
64 2 Oliver Pinter
![block-c](/block-cluster.png)
65 2 Oliver Pinter
* Give a **name** to this workspace 
66 2 Oliver Pinter
* Click **install** and wait for the deployment
67 2 Oliver Pinter
![block-create](/block-storage-create.png)
68 2 Oliver Pinter
 
69 2 Oliver Pinter
70 3 Oliver Pinter
h2. Step 3 deploy  Redmine
71 2 Oliver Pinter
  
72 2 Oliver Pinter
We will deploy   Redmine on our cluster 
73 2 Oliver Pinter
  
74 2 Oliver Pinter
* Click the **Catalog** button on the top 
75 2 Oliver Pinter
* Select **Software** from the catalog
76 2 Oliver Pinter
* Search for ** Redmine** and click on it
77 2 Oliver Pinter
![postg](/search.png)
78 2 Oliver Pinter
79 2 Oliver Pinter
* Please select IBM Kubernetes Service
80 2 Oliver Pinter
![target](/target-select.png)
81 2 Oliver Pinter
82 2 Oliver Pinter
* On the application page Click in the _dot_ next to the cluster, you wish to use
83 2 Oliver Pinter
![Cluster](/cluster-select.png)
84 2 Oliver Pinter
* Click on  **Enter or Select Namespace** and choose the default Namespace or use a custom one 
85 2 Oliver Pinter
![Namespace](/details-namespace.png)
86 2 Oliver Pinter
* Give a unique **name** to workspace, which you can easily recognize
87 2 Oliver Pinter
![Name](/details-name.png)
88 2 Oliver Pinter
* Select which resource group you want to use, it's for access controll and billing purposes. For more information please visit [resource groups]
89 2 Oliver Pinter
90 2 Oliver Pinter
![dr-resource](/details-resource.png)
91 2 Oliver Pinter
92 2 Oliver Pinter
* Give **tags** to your  Redmine, for more information visit [tags]
93 2 Oliver Pinter
94 2 Oliver Pinter
![redmine-tags](/details-tags.png)
95 2 Oliver Pinter
96 2 Oliver Pinter
* Click on **Parameters with default values**, You can set deployment values or use the default ones
97 2 Oliver Pinter
98 2 Oliver Pinter
![def-val](/parameters.png)
99 2 Oliver Pinter
100 2 Oliver Pinter
* Please set the  Redmine password in the parameters
101 2 Oliver Pinter
![pass](/password.png)
102 2 Oliver Pinter
103 2 Oliver Pinter
* After finishing everything, **tick** the box next to the agreements and click **install**
104 2 Oliver Pinter
105 3 Oliver Pinter
!aggreement-create.png!
106 2 Oliver Pinter
107 2 Oliver Pinter
* The  Redmine workspace will start installing, wait a couple of minutes 
108 2 Oliver Pinter
109 2 Oliver Pinter
![ Redmine-install](/in-progress.png)
110 2 Oliver Pinter
111 2 Oliver Pinter
* Your   Redmine workspace has been successfully deployed
112 2 Oliver Pinter
113 2 Oliver Pinter
![Redmine-finsihed](/done.png)
114 2 Oliver Pinter
115 3 Oliver Pinter
h2. Verify  Redmine installation
116 2 Oliver Pinter
117 2 Oliver Pinter
* Go to [Resources] in your browser 
118 2 Oliver Pinter
* Click on **Clusters**
119 2 Oliver Pinter
* Click on your Cluster
120 2 Oliver Pinter
![Resourcelect](/resource-select.png)
121 2 Oliver Pinter
122 2 Oliver Pinter
* Now you are at you clusters overview, here Click on **Actions** and **Web terminal** from the dropdown menu
123 2 Oliver Pinter
124 2 Oliver Pinter
125 2 Oliver Pinter
![Actions](/cluster-main.png)
126 2 Oliver Pinter
127 2 Oliver Pinter
* Click **install** - wait couple of minutes 
128 2 Oliver Pinter
129 2 Oliver Pinter
![terminal-install](/terminal-install.jpg)
130 2 Oliver Pinter
131 2 Oliver Pinter
* Click on **Actions**
132 2 Oliver Pinter
* Click **Web terminal** --> a terminal will open up
133 2 Oliver Pinter
134 2 Oliver Pinter
* **Type** in the terminal, please change NAMESPACE to the namespace you choose at the deployment setup:
135 2 Oliver Pinter
136 2 Oliver Pinter
 ```sh
137 2 Oliver Pinter
$ kubectl get ns
138 2 Oliver Pinter
```
139 2 Oliver Pinter
![get-ns](/get-ns.png)
140 2 Oliver Pinter
141 2 Oliver Pinter
142 2 Oliver Pinter
 ```sh
143 2 Oliver Pinter
$ kubectl get pod -n NAMESPACE -o wide 
144 2 Oliver Pinter
```
145 2 Oliver Pinter
![get-pod](/get-pod.png)
146 2 Oliver Pinter
147 2 Oliver Pinter
148 2 Oliver Pinter
 ```sh
149 2 Oliver Pinter
$ kubectl get service -n NAMESPACE
150 2 Oliver Pinter
```
151 2 Oliver Pinter
![get-service](/get-service.png)
152 2 Oliver Pinter
153 2 Oliver Pinter
* Running Redmine service will be visible 
154 2 Oliver Pinter
* Copy the **External ip**, you can access the website on this IP
155 2 Oliver Pinter
* Paste it into your browser
156 2 Oliver Pinter
* Redmine welcome message will be visible
157 2 Oliver Pinter
158 2 Oliver Pinter
![works](/welcome.png)
159 2 Oliver Pinter
160 2 Oliver Pinter
* Enter you password/username which you entered in the deployment step (default username is user)
161 2 Oliver Pinter
162 2 Oliver Pinter
![login](/login.png)
163 2 Oliver Pinter
164 2 Oliver Pinter
* You arrived at the main Redmine page
165 2 Oliver Pinter
166 2 Oliver Pinter
![in](/logged-in.png)
167 2 Oliver Pinter
168 2 Oliver Pinter
 
169 2 Oliver Pinter
You have succesfully deployed  Redmine IBM Cloud! 
170 2 Oliver Pinter
171 2 Oliver Pinter
172 2 Oliver Pinter
173 2 Oliver Pinter
 
174 2 Oliver Pinter
   [IBM Cloud]: <http://cloud.ibm.com>
175 2 Oliver Pinter
   [Resources]: <http://cloud.ibm.com/resources>
176 2 Oliver Pinter
   [Register Here]: <http://cloud.ibm.com/registration>
177 2 Oliver Pinter
   [docs]: <https://cloud.ibm.com/docs/containers?topic=containers-infrastructure_providers>
178 2 Oliver Pinter
   [Locations]: <https://cloud.ibm.com/docs/containers?topic=containers-regions-and-zones#zones>
179 2 Oliver Pinter
   [VRF]: <https://cloud.ibm.com/docs/dl?topic=dl-overview-of-virtual-routing-and-forwarding-vrf-on-ibm-cloud>
180 2 Oliver Pinter
   [enable Vlan spanning]: <https://cloud.ibm.com/docs/vlans?topic=vlans-vlan-spanning#vlan-spanning>
181 2 Oliver Pinter
   [endpoints]: <https://cloud.ibm.com/docs/account?topic=account-service-endpoints-overview>
182 2 Oliver Pinter
   [tags]: <https://cloud.ibm.com/docs/account?topic=account-tag>