|
| 1 | +.. Licensed to the Apache Software Foundation (ASF) under one |
| 2 | + or more contributor license agreements. See the NOTICE file |
| 3 | + distributed with this work for additional information |
| 4 | + regarding copyright ownership. The ASF licenses this file |
| 5 | + to you under the Apache License, Version 2.0 (the |
| 6 | + "License"); you may not use this file except in compliance |
| 7 | + with the License. You may obtain a copy of the License at |
| 8 | + http://www.apache.org/licenses/LICENSE-2.0 |
| 9 | + Unless required by applicable law or agreed to in writing, |
| 10 | + software distributed under the License is distributed on an |
| 11 | + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| 12 | + KIND, either express or implied. See the License for the |
| 13 | + specific language governing permissions and limitations |
| 14 | + under the License. |
| 15 | +
|
| 16 | +:ref:`primate-install-guide` |
| 17 | + |
| 18 | +Primate Guide |
| 19 | +============= |
| 20 | + |
| 21 | +What is Primate? |
| 22 | +~~~~~~~~~~~~~~~~ |
| 23 | + |
| 24 | +Apache CloudStack Primate is a modern role-based progressive UI based on Vue.js |
| 25 | +and Ant Design for Apache CloudStack. |
| 26 | + |
| 27 | +.. image:: https://raw.githubusercontent.com/apache/cloudstack-primate/master/docs/screenshot-dashboard.png |
| 28 | + :width: 800px |
| 29 | + :alt: alternate text |
| 30 | + :align: left |
| 31 | + |
| 32 | +With Apache CloudStack 4.14, a technical preview of Primate is proposed that |
| 33 | +users can evaluate. The technical preview release is not an officially voted |
| 34 | +release by the Apache CloudStack project but offers a snapshot build of Primate |
| 35 | +for users for testing and evaluation. The official Primate GA is expected with |
| 36 | +the next CloudStack release where the legacy UI will be deprecated, and the |
| 37 | +legacy UI will be removed in an eventual major CloudStack release. |
| 38 | + |
| 39 | +.. parsed-literal:: |
| 40 | +
|
| 41 | + NOTE: Primate tech-preview is not suitable to run in production environments. |
| 42 | +
|
| 43 | +`User participation in the community mailing lists |
| 44 | +<http://cloudstack.apache.org/mailing-lists.html>`_ is encouraged. Users may |
| 45 | +also log issues on Github https://github.com/apache/cloudstack-primate/issues |
| 46 | + |
| 47 | +Requirements |
| 48 | +~~~~~~~~~~~~ |
| 49 | + |
| 50 | +Primate uses API auto-discovery to discover APIs allowed for a logged-in user |
| 51 | +and creates navigation and views based on that. |
| 52 | + |
| 53 | +- Apache CloudStack 4.13.1.0 or later |
| 54 | +- API auto-discovery (listApis enabled) |
| 55 | +- All modern browsers that are `ES5-compliant <https://github.com/vuejs/vue#browser-compatibility>`_ |
| 56 | + |
| 57 | +In theory Primate can work with any older version of CloudStack. |
| 58 | +However, several Primate list views require API pagination support, some of which are |
| 59 | +available starting Apache CloudStack 4.13.1.0. |
| 60 | + |
| 61 | +Installation on CentOS |
| 62 | +~~~~~~~~~~~~~~~~~~~~~~ |
| 63 | + |
| 64 | +Users running management server (4.13 or above) on CentOS can setup the |
| 65 | +following Primate tech-preview repository: |
| 66 | + |
| 67 | +.. parsed-literal:: |
| 68 | +
|
| 69 | + rpm --import https://download.cloudstack.org/primate/release.asc |
| 70 | + cat << EOF > /etc/yum.repos.d/cloudstack-primate-tech-preview.repo |
| 71 | + [cloudstack-primate-tech-preview] |
| 72 | + name=cloudstack |
| 73 | + baseurl=https://download.cloudstack.org/primate/testing/preview/centos/ |
| 74 | + enabled=1 |
| 75 | + gpgcheck=1 |
| 76 | + gpgkey=https://download.cloudstack.org/primate/release.asc |
| 77 | + EOF |
| 78 | +
|
| 79 | +Next, install Primate: |
| 80 | + |
| 81 | +.. parsed-literal:: |
| 82 | +
|
| 83 | + yum install cloudstack-primate |
| 84 | +
|
| 85 | +Note: there is no need to restart management server post-installation, and |
| 86 | +after installation the UI can be accessed on |
| 87 | +management-server-host:8080/client/primate using any modern browser. |
| 88 | + |
| 89 | +Installation on Ubuntu |
| 90 | +~~~~~~~~~~~~~~~~~~~~~~ |
| 91 | + |
| 92 | +Users running CloudStack management server (4.13 or above) on Ubuntu can setup the following Primate tech-preview repository: |
| 93 | + |
| 94 | +.. parsed-literal:: |
| 95 | +
|
| 96 | + apt-key adv --keyserver keys.gnupg.net --recv-keys BDF0E176584DF93F |
| 97 | + echo deb https://download.cloudstack.org/primate/testing/preview/debian / > /etc/apt/sources.list.d/cloudstack-primate-tech-preview.list |
| 98 | +
|
| 99 | +Next, install Primate: |
| 100 | + |
| 101 | +.. parsed-literal:: |
| 102 | +
|
| 103 | + apt-get update |
| 104 | + apt-get install cloudstack-primate |
| 105 | +
|
| 106 | +Note: there is no need to restart management server post-installation, and |
| 107 | +after installation the UI can be accessed on |
| 108 | +management-server-host:8080/client/primate using any modern browser. |
| 109 | + |
| 110 | +Using Archive |
| 111 | +~~~~~~~~~~~~~ |
| 112 | + |
| 113 | +Primate archives are tarballs of single-page app builds. They can be simply |
| 114 | +downloaded and extracted to the management server webapp directory or hosted |
| 115 | +with a custom webserver. |
| 116 | + |
| 117 | +Users can download the builds from https://download.cloudstack.org/primate/testing/preview/archive/ |
| 118 | + |
| 119 | +Using Docker |
| 120 | +~~~~~~~~~~~~ |
| 121 | + |
| 122 | +Users can use docker builds of the tech preview from https://hub.docker.com/r/apache/cloudstack-primate |
| 123 | + |
| 124 | +For example: |
| 125 | + |
| 126 | +.. parsed-literal:: |
| 127 | +
|
| 128 | + docker pull apache/cloudstack-primate:tech-preview |
| 129 | + docker run -ti --rm -p 8080:80 -v $(pwd)/nginx:/etc/nginx/conf.d:ro apache/cloudstack-primate:tech-preview |
| 130 | +
|
| 131 | +Example nginx config: |
| 132 | + |
| 133 | +.. parsed-literal:: |
| 134 | +
|
| 135 | + server { |
| 136 | + listen 80; |
| 137 | + server_name localhost; |
| 138 | + location / { |
| 139 | + root /usr/share/nginx/html; |
| 140 | + index index.html; |
| 141 | + } |
| 142 | + location /client/ { |
| 143 | + # http://127.0.0.1:8080 should be replaced your CloudStack management |
| 144 | + # Server's actual URI |
| 145 | + proxy_pass http://127.0.0.1:8080; |
| 146 | + } |
| 147 | + } |
| 148 | +
|
| 149 | +Known Issues and Missing Features |
| 150 | +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 151 | + |
| 152 | +- Support for network service providers |
| 153 | +- Support for S3 based secondary storage |
| 154 | +- Full support for all Quota plugin views |
| 155 | +- Group actions for events, alerts and instances |
| 156 | +- Metrics view cell-colouring |
| 157 | +- Authorisation management for SAML users |
| 158 | +- Filter by feature for searching |
| 159 | +- Guest network LB support for SSL certificate |
| 160 | +- Not all translations are fully migrated from legacy UI to Primate. |
| 161 | +- Feature and enhancements added in 4.14 except CloudStack Kubernetes Service and Backup and Recovery |
| 162 | + |
| 163 | +Please also refer to open issues on https://github.com/apache/cloudstack-primate/issues |
0 commit comments