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

Oliver Pinter, 2020-10-26 15:07

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 4 Oliver Pinter
!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 4 Oliver Pinter
 !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 4 Oliver Pinter
!location-geo.png!
28 5 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 unforeseen zone failure 
29 4 Oliver Pinter
!location-avail.png!
30 2 Oliver Pinter
  * Choose a **Worker Zone** if using Single zones or **Metro** if Multizone
31 4 Oliver Pinter
 !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 4 Oliver Pinter
!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 4 Oliver Pinter
!endpoints.png
39 2 Oliver Pinter
* Give cluster a **name**
40 2 Oliver Pinter
41 4 Oliver Pinter
!name-new.png!
42 2 Oliver Pinter
* Give desired **tags** to your cluster, for more information visit [tags]
43 2 Oliver Pinter
44 4 Oliver Pinter
!tasg-new.png
45 2 Oliver Pinter
* Click **create**
46 4 Oliver Pinter
!create-new.png!
47 2 Oliver Pinter
48 2 Oliver Pinter
* Wait for you cluster to be provisioned 
49 4 Oliver Pinter
!cluster-prepare.png!
50 2 Oliver Pinter
* Your cluster is ready for usage 
51 2 Oliver Pinter
52 4 Oliver Pinter
!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 4 Oliver Pinter
!block-search!
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 4 Oliver Pinter
!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 4 Oliver Pinter
!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 4 Oliver Pinter
!!search.png!
78 2 Oliver Pinter
79 2 Oliver Pinter
* Please select IBM Kubernetes Service
80 4 Oliver Pinter
!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 4 Oliver Pinter
!cluster-select.png!
84 2 Oliver Pinter
* Click on  **Enter or Select Namespace** and choose the default Namespace or use a custom one 
85 4 Oliver Pinter
!details-namespace.png!
86 2 Oliver Pinter
* Give a unique **name** to workspace, which you can easily recognize
87 4 Oliver Pinter
!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 4 Oliver Pinter
!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 4 Oliver Pinter
!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 4 Oliver Pinter
!parameters.png!
99 2 Oliver Pinter
100 2 Oliver Pinter
* Please set the  Redmine password in the parameters
101 4 Oliver Pinter
!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 4 Oliver Pinter
!in-progress.png!
110 2 Oliver Pinter
111 2 Oliver Pinter
* Your   Redmine workspace has been successfully deployed
112 2 Oliver Pinter
113 4 Oliver Pinter
!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 4 Oliver Pinter
!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 4 Oliver Pinter
!cluster-main.png!
126 2 Oliver Pinter
127 2 Oliver Pinter
* Click **install** - wait couple of minutes 
128 2 Oliver Pinter
129 4 Oliver Pinter
!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 4 Oliver Pinter
!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 4 Oliver Pinter
!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 4 Oliver Pinter
!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 4 Oliver Pinter
!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 4 Oliver Pinter
!login.png!
163 2 Oliver Pinter
164 2 Oliver Pinter
* You arrived at the main Redmine page
165 2 Oliver Pinter
166 4 Oliver Pinter
!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>