The StorageOS Portal Manager is responsible for communication with the management portal. It watches for changes to subscribed Kubernetes object kinds and publishes them over MQTT to Google IOT Core. It also receives commands initiated by portal users and implements any actions they require in the cluster.
At least two Portal Managers should run concurrently. Leadership election ensures that a single kubebuilder manager is active at a time.
Prometheus metrics are available on -metrics-addr
(default :8080
). See
controller documentation for specific stats.
The Portal Manager will be installed by the StorageOS operator. It is not intended to be installed manually.
Install dependencies.
make husky
Ensure a k8s cluster is running and ~/.kube/config contains the kubeconfig, or pass the path to kubeconfig to the manager binary with -kubeconfig flag.
# Install the CRD into the Kubernetes cluster (once per cluster).
$ make install
# Run the manager locally, watching objects from the remote Kubernetes cluster.
$ make run
The Portal Manager support HTTPS proxy only. To route Portal communication through a proxy, please edit your portal config file.
apiVersion: storageos.com/v1alpha1
kind: PortalConfig
httpsProxy: 127.0.0.1:8888
To upgrade Portal Manager (StorageOS at all) on the dev cluster please visit the following Github Action: https://github.com/storageos/kubectl-storageos/actions/workflows/deploy-to-dev-cluster.yaml