Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
21 changes: 15 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ export BIN_TIMESTAMP ?=$(shell date -u +'%Y-%m-%dT%H:%M:%SZ')
export TIMESTAMP ?=$(shell echo $(BIN_TIMESTAMP) | tr -d ':' | tr 'T' '-' | tr -d 'Z')
SOURCE_GIT_COMMIT_TIMESTAMP ?= $(shell TZ=UTC0 git show --quiet --date='format-local:%Y%m%d%H%M%S' --format="%cd")

OCP_VERSION := $(shell jq -r '.release.base' ${PROJECT_DIR}/assets/release/release-$(shell uname -i).json)
include Makefile.version.$(shell uname -i).var
MICROSHIFT_VERSION ?= $(subst -clean,,$(shell echo '${OCP_VERSION}-${SOURCE_GIT_COMMIT_TIMESTAMP}-${SOURCE_GIT_COMMIT}-${SOURCE_GIT_TREE_STATE}'))

# Overload SOURCE_GIT_TAG value set in vendor/github.com/openshift/build-machinery-go/make/lib/golang.mk
Expand Down Expand Up @@ -160,9 +160,18 @@ _build_local:
+@GOOS=$(GOOS) GOARCH=$(GOARCH) $(MAKE) --no-print-directory build \
GO_BUILD_PACKAGES:=./cmd/microshift \
GO_BUILD_BINDIR:=$(CROSS_BUILD_BINDIR)/$(GOOS)_$(GOARCH)
+@GOOS=$(GOOS) GOARCH=$(GOARCH) $(MAKE) -C etcd --no-print-directory build \
GO_BUILD_PACKAGES:=./cmd/microshift-etcd \
GO_BUILD_BINDIR:=../$(CROSS_BUILD_BINDIR)/$(GOOS)_$(GOARCH)
+@GOOS=$(GOOS) GOARCH=$(GOARCH) \
GO_LD_FLAGS="$(GC_FLAGS) -ldflags \"\
-X main.majorFromGit=$(MAJOR) \
-X main.minorFromGit=$(MINOR) \
-X main.versionFromGit=$(EMBEDDED_GIT_TAG) \
-X main.commitFromGit=$(EMBEDDED_GIT_COMMIT) \
-X main.gitTreeState=$(EMBEDDED_GIT_TREE_STATE) \
-X main.buildDate=$(BIN_TIMESTAMP) \
$(LD_FLAGS)\"" \
$(MAKE) -C etcd --no-print-directory build \
GO_BUILD_PACKAGES:=./cmd/microshift-etcd \
GO_BUILD_BINDIR:=../$(CROSS_BUILD_BINDIR)/$(GOOS)_$(GOARCH)

cross-build-linux-amd64:
+$(MAKE) _build_local GOOS=linux GOARCH=amd64
Expand Down Expand Up @@ -231,8 +240,8 @@ bin/lichen: bin vendor/modules.txt

vendor:
go mod vendor
for p in $(wildcard scripts/auto-rebase/rebase_patches/*.patch); do \
for p in $(sort $(wildcard scripts/auto-rebase/rebase_patches/*.patch)); do \
echo "Applying patch $$p"; \
git mailinfo /dev/null /dev/stderr 2<&1- < $$p | git apply || exit 1; \
git mailinfo /dev/null /dev/stderr 2<&1- < $$p | git apply --reject || exit 1; \
done
.PHONY: vendor
2 changes: 1 addition & 1 deletion Makefile.kube_git.var
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
KUBE_GIT_MAJOR=1
KUBE_GIT_MINOR=26
KUBE_GIT_VERSION=v1.26.0
KUBE_GIT_COMMIT=89232647de67ea787d339b1bd7c780a0ed97f3f9
KUBE_GIT_COMMIT=b40493584076fb1ab29f3bed1d05d16cbc5b17f1
KUBE_GIT_TREE_STATE=clean
1 change: 1 addition & 0 deletions Makefile.version.aarch64.var
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
OCP_VERSION := 4.13.0-0.nightly-arm64-2023-05-02-214748
1 change: 1 addition & 0 deletions Makefile.version.x86_64.var
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
OCP_VERSION := 4.13.0-0.nightly-2023-05-02-134729
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ scale testing, and provisioning of lightweight Kubernetes control planes.
To run MicroShift, the minimum system requirements are:

- x86_64 or aarch64 CPU architecture
- Red Hat Enterprise Linux 8 with Extended Update Support (8.6 or later)
- Red Hat Enterprise Linux 9 with Extended Update Support (9.2 or later)
- 2 CPU cores
- 2GB of RAM
- 2GB of free system root storage for MicroShift and its container images
Expand All @@ -34,7 +34,7 @@ Depending on user workload requirements, it may be necessary to add more resourc
performance, disk space in a root partition for container images, an LVM group for container storage, etc.

## Deploying MicroShift on Edge Devices
For production deployments, MicroShift can be run on bare metal hardware or hypervisors supported and certified for the Red Hat Enterprise Linux 8 operating system.
For production deployments, MicroShift can be run on bare metal hardware or hypervisors supported and certified for the Red Hat Enterprise Linux 9 operating system.

- [Edge systems certified for Red Hat Enterprise Linux](https://catalog.redhat.com/hardware/search?c_catalog_channel=Edge%20System&p=1)
- [Hypervisors certified for Red Hat Enterprise Linux](https://access.redhat.com/solutions/certified-hypervisors)
Expand Down Expand Up @@ -75,4 +75,4 @@ Community documentation sources are managed at <https://github.com/redhat-et/mic

To get started with MicroShift, please refer to the [Getting Started](https://microshift.io/docs/getting-started/) section of the MicroShift [User Documentation](https://microshift.io/docs/user-documentation/).

For information about getting in touch with the MicroShift community, check our [community page](https://microshift.io/docs/community/).
For information about getting in touch with the MicroShift community, check our [community page](https://microshift.io/docs/community/).
6 changes: 6 additions & 0 deletions assets/components/lvms/topolvm-controller_deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,12 @@ spec:
- /topolvm-controller
- --cert-dir=/certs
image: '{{ .ReleaseImage.topolvm_csi }}'
startupProbe:
failureThreshold: 60
periodSeconds: 2
httpGet:
port: healthz
path: /healthz
livenessProbe:
failureThreshold: 3
httpGet:
Expand Down
7 changes: 7 additions & 0 deletions assets/components/lvms/topolvm-node_daemonset.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,13 @@ spec:
initialDelaySeconds: 10
periodSeconds: 60
timeoutSeconds: 3
startupProbe:
failureThreshold: 60
successThreshold: 1
periodSeconds: 2
httpGet:
port: healthz
path: /healthz
name: topolvm-node
ports:
- containerPort: 9808
Expand Down
8 changes: 7 additions & 1 deletion assets/components/openshift-dns/node-resolver/daemonset.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -71,11 +71,17 @@ spec:
fi

# Append resolver entries for services
rc=0
for svc in "${!svc_ips[@]}"; do
for ip in ${svc_ips[${svc}]}; do
echo "${ip} ${svc} ${svc}.${CLUSTER_DOMAIN} # ${OPENSHIFT_MARKER}" >> "${TEMP_FILE}"
echo "${ip} ${svc} ${svc}.${CLUSTER_DOMAIN} # ${OPENSHIFT_MARKER}" >> "${TEMP_FILE}" || rc=$?
done
done
if [[ $rc -ne 0 ]]; then
sleep 60 & wait
continue
fi


# TODO: Update /etc/hosts atomically to avoid any inconsistent behavior
# Replace /etc/hosts with our modified version if needed
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,11 +48,17 @@ while true; do
fi

# Append resolver entries for services
rc=0
for svc in "${!svc_ips[@]}"; do
for ip in ${svc_ips[${svc}]}; do
echo "${ip} ${svc} ${svc}.${CLUSTER_DOMAIN} # ${OPENSHIFT_MARKER}" >> "${TEMP_FILE}"
echo "${ip} ${svc} ${svc}.${CLUSTER_DOMAIN} # ${OPENSHIFT_MARKER}" >> "${TEMP_FILE}" || rc=$?
done
done
if [[ $rc -ne 0 ]]; then
sleep 60 & wait
continue
fi


# TODO: Update /etc/hosts atomically to avoid any inconsistent behavior
# Replace /etc/hosts with our modified version if needed
Expand Down
8 changes: 4 additions & 4 deletions assets/components/ovn/master/daemonset.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ spec:
containers:
# ovn-northd: convert network objects in nbdb to flows in sbdb
- name: northd
image: {{ .ReleaseImage.ovn_kubernetes_microshift }}
image: {{ .ReleaseImage.ovn_kubernetes_microshift_rhel_9 }}
command:
- /bin/bash
- -c
Expand Down Expand Up @@ -97,7 +97,7 @@ spec:

# nbdb: the northbound, or logical network object DB. In raft mode
- name: nbdb
image: {{ .ReleaseImage.ovn_kubernetes_microshift }}
image: {{ .ReleaseImage.ovn_kubernetes_microshift_rhel_9 }}
command:
- /bin/bash
- -c
Expand Down Expand Up @@ -223,7 +223,7 @@ spec:

# sbdb: The southbound, or flow DB. In raft mode
- name: sbdb
image: {{ .ReleaseImage.ovn_kubernetes_microshift }}
image: {{ .ReleaseImage.ovn_kubernetes_microshift_rhel_9 }}
command:
- /bin/bash
- -c
Expand Down Expand Up @@ -315,7 +315,7 @@ spec:

# ovnkube master: convert kubernetes objects in to nbdb logical network components
- name: ovnkube-master
image: {{ .ReleaseImage.ovn_kubernetes_microshift }}
image: {{ .ReleaseImage.ovn_kubernetes_microshift_rhel_9 }}
command:
- /bin/bash
- -c
Expand Down
2 changes: 1 addition & 1 deletion assets/components/ovn/node/daemonset.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ spec:
containers:
# ovn-controller: programs the vswitch with flows from the sbdb
- name: ovn-controller
image: {{ .ReleaseImage.ovn_kubernetes_microshift }}
image: {{ .ReleaseImage.ovn_kubernetes_microshift_rhel_9 }}
command:
- /bin/bash
- -c
Expand Down
4 changes: 2 additions & 2 deletions assets/controllers/kube-controller-manager/defaultconfig.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@ extendedArguments:
leader-elect-retry-period:
- "3s"
leader-elect-resource-lock:
- "configmapsleases"
- "leases"
leader-elect-renew-deadline:
- "12s" # Increase api call timeout value from default 5s to 6s, required in case primary dns server fail.
- "12s" # Increase api call timeout value from default 5s to 6s, required in case primary dns server fail.
controllers:
- "*"
- "-ttl" # TODO: this is excluded in kube-core, but not in #21092
Expand Down
16 changes: 8 additions & 8 deletions assets/release/release-aarch64.json
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
{
"release": {
"base": "4.13.0-0.nightly-arm64-2023-02-28-171639"
"base": "4.13.0-0.nightly-arm64-2023-05-02-214748"
},
"images": {
"cli": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:14b1c70aa990218a79493b3807b7d1be7db5270bb7d514b7b124bf3b1680e908",
"coredns": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:2b9c82e4386ea324425c877ec0f71ea4716592e2cec4a6e2d8400a8d4d81b5ae",
"haproxy-router": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:919e017776264b4909b0eb390ce95fa8b93e8e9f3932c906b6e013a371a41174",
"kube-rbac-proxy": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:b0c5d03660ff04bdae29c3616992438fb8d5fcd1a8a52ca870cdeb6265d12f36",
"cli": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:25b1bb086a4eee276897911075a9034ddbf44d2ccce39c3c4b79cc59bfb6f226",
"coredns": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:12a7b9e5d6bb21667dcf8e87435f32e3249e8c519793b6e7909e61cd3878c47c",
"haproxy-router": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:c74f1267e481b9d2838288a0c4c0d56d7326be3791d0de8fe5cb0c30bc83527e",
"kube-rbac-proxy": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:0b21d44f9b053592278a87f4dcd42ce35de5e66a4a0cbeb8e92cbe5f521285a2",
"openssl": "registry.access.redhat.com/ubi8/openssl@sha256:9e743d947be073808f7f1750a791a3dbd81e694e37161e8c6c6057c2c342d671",
"ovn-kubernetes-microshift": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:ad6a1b1a01f928dad3ed9b1d1288c4d5e665868c1713ca54c64ff21ebe4fb8ca",
"pod": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:0a8792c061b5c99e62960592f77d5f97dcce8606017c18dd6988c9b24939c30f",
"service-ca-operator": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:f191e9462d8c54bca1951ed188562e4343b3e70f5ac7f15fa64c3a0ec179e3a1",
"ovn-kubernetes-microshift-rhel-9": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:c34822f641c382dc43e53cb939b32174f14b90d18d3ab191114b9a8af7a6d064",
"pod": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:d2a89b27563e268eb3c5a16ff555fba061a9904abe5d65f5a39312e816a01776",
"service-ca-operator": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:a89e4c39eeba38f2f48f8d40fd6cfbf3d2c407d1f6d9ea00be9e1456524e488a",
"topolvm_csi": "registry.redhat.io/lvms4/topolvm-rhel8@sha256:10bffded5317da9de6c45ba74f0bb10e0a08ddb2bfef23b11ac61287a37f10a1",
"topolvm_csi_registrar": "registry.redhat.io/openshift4/ose-csi-node-driver-registrar@sha256:a4319ff7c736ca9fe20500dc3e5862d6bb446f2428ea2eadfb5f042195f4f860",
"topolvm_csi_livenessprobe": "registry.redhat.io/openshift4/ose-csi-livenessprobe@sha256:9df24be671271f5ea9414bfd08e58bc2fa3dc4bc68075002f3db0fd020b58be0",
Expand Down
16 changes: 8 additions & 8 deletions assets/release/release-x86_64.json
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
{
"release": {
"base": "4.13.0-0.nightly-2023-02-27-101545"
"base": "4.13.0-0.nightly-2023-05-02-134729"
},
"images": {
"cli": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:9af4bd001d30fd00d89c5f199b970b820240d0959312c2fb8ea82597c8da24bb",
"coredns": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:e7a3cf3a4e3a19c02b7cb7136fb96466b04f12f7a0176d1b8778e6991ce55e70",
"haproxy-router": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:a3883746d3a051fc71aafee3c7b958dd65f8c367fdb127dc398ad912dd802ade",
"kube-rbac-proxy": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:eef3d1894656818ad393df61d3713115dce777e113b781c1d01bc285ee56ca2c",
"cli": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:800f0bb464dc9d622c3a670e503bee267670395c9bea0fb6247737b6f826ba7d",
"coredns": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:ef20b93c7bad79e4fa20cecaf85af5a897342aefd133b5d2c693d74a4813df2c",
"haproxy-router": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:5460207dedbfc16cc26527f5fc7ccc8143242b1d4ca329476441cce3672a992b",
"kube-rbac-proxy": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:e2b2c89aedaa44964e4cf003ef94963da2e773ace08e601592078adefa482b52",
"openssl": "registry.access.redhat.com/ubi8/openssl@sha256:9e743d947be073808f7f1750a791a3dbd81e694e37161e8c6c6057c2c342d671",
"ovn-kubernetes-microshift": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:5ab6561dbe5a00a9b96e1c29818d8376c8e871e6757875c9cf7f48e333425065",
"pod": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:8863d0268479214bd3835fe0135e94780e13a15ba00afe55e168346da825628a",
"service-ca-operator": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:91e31c0e8171d92d991322419c860cde1d4126fa927be2c453fbe14aa22743f7",
"ovn-kubernetes-microshift-rhel-9": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:97ec81c50bd37f14e4485897c9848d4e10ded76d2a6a0a8c3ab8889845013274",
"pod": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:09d4bee015dd9cdd168968be3fd91106af558e82cb8975191fb905d9f8825418",
"service-ca-operator": "quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:6ba8c66a65d8a7d32c7d6aec772d0cc88f65bf54b16664cfedf8e068c00689a4",
"topolvm_csi": "registry.redhat.io/lvms4/topolvm-rhel8@sha256:10bffded5317da9de6c45ba74f0bb10e0a08ddb2bfef23b11ac61287a37f10a1",
"topolvm_csi_registrar": "registry.redhat.io/openshift4/ose-csi-node-driver-registrar@sha256:a4319ff7c736ca9fe20500dc3e5862d6bb446f2428ea2eadfb5f042195f4f860",
"topolvm_csi_livenessprobe": "registry.redhat.io/openshift4/ose-csi-livenessprobe@sha256:9df24be671271f5ea9414bfd08e58bc2fa3dc4bc68075002f3db0fd020b58be0",
Expand Down
68 changes: 68 additions & 0 deletions docs/config/busybox_running_check.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
#!/bin/bash
set -e

SCRIPT_NAME=$(basename $0)
PODS_NS_LIST=(busybox)
PODS_CT_LIST=(1 )

# Source the MicroShift health check functions library
source /usr/share/microshift/functions/greenboot.sh

# Set the exit handler to log the exit status
trap 'script_exit' EXIT

# The script exit handler logging the FAILURE or FINISHED message depending
# on the exit status of the last command
#
# args: None
# return: None
function script_exit() {
[ "$?" -ne 0 ] && status=FAILURE || status=FINISHED
echo $status
}

#
# Main
#

# Exit if the current user is not 'root'
if [ $(id -u) -ne 0 ] ; then
echo "The '${SCRIPT_NAME}' script must be run with the 'root' user privileges"
exit 1
fi

echo "STARTED"

# Exit if the MicroShift service is not enabled
if [ $(systemctl is-enabled microshift.service 2>/dev/null) != "enabled" ] ; then
echo "MicroShift service is not enabled. Exiting..."
exit 0
fi

# Set the wait timeout for the current check based on the boot counter
WAIT_TIMEOUT_SECS=$(get_wait_timeout)

# Wait for pod images to be downloaded
for i in ${!PODS_NS_LIST[@]}; do
CHECK_PODS_NS=${PODS_NS_LIST[$i]}

echo "Waiting ${WAIT_TIMEOUT_SECS}s for pod image(s) from the '${CHECK_PODS_NS}' namespace to be downloaded"
wait_for ${WAIT_TIMEOUT_SECS} namespace_images_downloaded
done

# Wait for pods to enter ready state
for i in ${!PODS_NS_LIST[@]}; do
CHECK_PODS_NS=${PODS_NS_LIST[$i]}
CHECK_PODS_CT=${PODS_CT_LIST[$i]}

echo "Waiting ${WAIT_TIMEOUT_SECS}s for ${CHECK_PODS_CT} pod(s) from the '${CHECK_PODS_NS}' namespace to be in 'Ready' state"
wait_for ${WAIT_TIMEOUT_SECS} namespace_pods_ready
done

# Verify that pods are not restarting
for i in ${!PODS_NS_LIST[@]}; do
CHECK_PODS_NS=${PODS_NS_LIST[$i]}

echo "Checking pod restart count in the '${CHECK_PODS_NS}' namespace"
namespace_pods_not_restarting ${CHECK_PODS_NS}
done
13 changes: 8 additions & 5 deletions docs/config/microshift-starter.ks
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ text
reboot

# Configure network to use DHCP and activate on boot
network --bootproto=dhcp --device=link --activate --onboot=on --hostname=microshift-starter.local --noipv6
network --bootproto=dhcp --device=link --activate --onboot=on --hostname=microshift-starter --noipv6

# Partition disk with a 1GB boot XFS partition and a 10GB LVM volume containing system root
# The remainder of the volume will be used by the CSI driver for storing data
Expand Down Expand Up @@ -53,9 +53,12 @@ if ! subscription-manager status >& /dev/null ; then
fi

# Configure systemd journal service to persist logs between boots and limit their size to 1G
mkdir -p /var/log/journal/
sed -i 's/.*Storage=.*/Storage=auto/g' /etc/systemd/journald.conf
sed -i 's/.*SystemMaxUse=.*/SystemMaxUse=1G/g' /etc/systemd/journald.conf
sed -i 's/.*RuntimeMaxUse=.*/RuntimeMaxUse=1G/g' /etc/systemd/journald.conf
sudo mkdir -p /etc/systemd/journald.conf.d
cat <<EOF | sudo tee /etc/systemd/journald.conf.d/microshift.conf &>/dev/null
[Journal]
Storage=persistent
SystemMaxUse=1G
RuntimeMaxUse=1G
EOF

%end
24 changes: 13 additions & 11 deletions docs/default_csi_plugin.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
> **IMPORTANT!** The default LVMS configuration is intended to match the developer environment described in [MicroShift Development Environment](./devenv_setup.md). See section **[Configuring LVMS](#Configuring-LVMS)** for guidance on configuring LVMS for your environment.

MicroShift enables dynamic storage provisioning out of the box with the LVMS CSI plugin. This plugin is a downstream
Red Hat fork of TopoLVM. This provisioner will create a new LVM logical volume in the `rhel` volume group for each
Red Hat build of TopoLVM. This provisioner will create a new LVM logical volume in the `rhel` volume group for each
PersistenVolumeClaim(PVC), and make these volumes available to pods. For more information on LVMS, visit the repo's
[README](https://github.com/red-hat-storage/topolvm).

Expand Down Expand Up @@ -31,20 +31,22 @@ Full documentation of the config spec can be found at [github.com/red-hat-storag

#### Path

The user provided lvmd config should be written to the same directory as the MicroShift config. If a MicroShift config
doesn't exist, MicroShift will assume default lvmd values. These paths will be checked for the config, depending on the user MicroShift
is run as.

1. User config dir: `~/.microshift/lvmd.yaml`
2. Global config dir: `/etc/microshift/lvmd.yaml`
The user provided lvmd config should be written to the same directory as the MicroShift config. If an lvmd configuration file
does not exist in `/etc/microshift/lvmd.yaml`, MicroShift will use default values.

## System Requirements

### Volume Group Name
### Default Volume Group

If there is only one volume group on the system, LVMS uses it by
default. If there are multiple volume groups, and no configuration
file, LVMS looks for a volume group named `microshift`. If there is no
volume group named `microshift`, LVMS is disabled.

The default integration of LVMS assumes a volume-group named `rhel`. LVMS's node-controller expects that volume
group to exist prior to launching the service. If the volume group does not exist, the node-controller will fail to
start and enter a CrashLoopBackoff state.
LVMS expects all volume groups to exist prior to launching the
service. If LVMS is configured to use a volume group that does not
exist, the node-controller Pod will fail and enter a CrashLoopBackoff
state.

### Volume Size Increments

Expand Down
Loading