Werkknooppunten scheiden in verschillende subnetten met Azure Red Hat OpenShift
In dit artikel leest u hoe u werkknooppunten kunt scheiden in verschillende privésubnetten als onderdeel van een ARO-implementatie. Door werkknooppunten te scheiden in verschillende privésubnetten, kunt u voldoen aan specifieke vereisten voor toegangsbeheer voor verschillende services en toepassingen die zijn geïmplementeerd op ARO.
U kunt bijvoorbeeld specifieke ingangscontrollers uitvoeren op toegewezen werkknooppunten binnen een specifiek subnet, terwijl de rest van de Kubernetes-knooppunten voor workloads (infra en andere werkrollen) zich binnen een ander subnet bevinden, zoals hieronder wordt weergegeven:
Notitie
Als onderdeel van ARO kunnen hoofd- en werkknooppunten niet worden geïmplementeerd in hetzelfde privésubnet.
Als u werkknooppunten wilt scheiden in verschillende subnetten, moeten twee hoofdstappen worden uitgevoerd:
Een ARO-cluster implementeren.
Maak de juiste subnetten en machinesets die aan deze subnetten zijn gekoppeld.
Een ARO-cluster implementeren
Zie Een Azure Red Hat OpenShift 4-cluster maken voor instructies voor het uitvoeren van deze stap.
De subnetten en gekoppelde machinesets maken
Nadat u uw ARO-cluster hebt geïmplementeerd, moet u extra subnetten maken als onderdeel van hetzelfde algemene virtuele netwerk en nieuwe machinesets maken voor deze subnetten.
Stap 1: De subnetten maken
Maak de subnetten als onderdeel van het huidige virtuele netwerk waarin ARO is geïmplementeerd. Zorg ervoor dat alle subnetten zijn bijgewerkt naar de Microsoft.ContainerRegistry
service-eindpunten.
Stap 2: Aanmelden bij de jumphost
Notitie
Deze stap is optioneel als u een alternatieve methode hebt om u aan te melden bij het ARO-cluster.
Gebruik de volgende opdracht om u aan te melden bij de jumphost:
oc login $apiServer -u kubeadmin -p <kubeadmin password>
Controleer het aantal knooppunten en machinesets met behulp van de oc get nodes
en oc get machineSets -n openshift-machine-api
opdrachten, zoals wordt weergegeven in de volgende voorbeelden:
$ oc get nodes
NAME STATUS ROLES AGE VERSION
simon-aro-st5rm-master-0 Ready master 66m v1.19.0+e405995
simon-aro-st5rm-master-1 Ready master 67m v1.19.0+e405995
simon-aro-st5rm-master-2 Ready master 67m v1.19.0+e405995
simon-aro-st5rm-worker-useast1-h6kzn Ready worker 59m v1.19.0+e405995
simon-aro-st5rm-worker-useast2-48zsm Ready worker 59m v1.19.0+e405995
simon-aro-st5rm-worker-useast3-rvzpn Ready worker 59m v1.19.0+e405995
# oc get machineSets --all-namespaces
NAMESPACE NAME DESIRED CURRENT READY AVAILABLE AGE
openshift-machine-api simon-aro-st5rm-worker-useast1 1 1 1 1 69m
openshift-machine-api simon-aro-st5rm-worker-useast2 1 1 1 1 69m
openshift-machine-api simon-aro-st5rm-worker-useast3 1 1 1 1 69m
Stap 3: De machinesets ophalen in de openshift-machine-api project/namespace
Door de machinesets op te halen, kunt u alle relevante parameters ophalen in de machineSet-sjabloon die in de volgende stap wordt gebruikt.
oc describe machineSet simon-aro-st5rm-worker-useast1 > aro-worker-az1.yaml
Stap 4: Maak een nieuw YAML-bestand voor machineSet en pas dit toe op het cluster
Gebruik de onderstaande sjabloon voor het YAML-bestand van uw machineSet. Wijzig de parameters die met Xs worden weergegeven op basis van de waarden die zijn opgehaald in de vorige sectie. Dit kan bijvoorbeeld het volgende zijn: machine.openshift.io/cluster-api-cluster: XXX-XXX-XXX
machine.openshift.io/cluster-api-cluster: machine-aro-st3mr
==============MachineSet Template====================
apiVersion: machine.openshift.io/v1beta1
kind: MachineSet
metadata:
labels:
machine.openshift.io/cluster-api-cluster: XXX-XXX-XXX
machine.openshift.io/cluster-api-machine-role: worker
machine.openshift.io/cluster-api-machine-type: worker
name: XXX-XXX-XXX-XXX-XXX
namespace: openshift-machine-api
spec:
replicas: 1
selector:
matchLabels:
machine.openshift.io/cluster-api-cluster: XXX-XXX-XXX
machine.openshift.io/cluster-api-machineset: XXX-XXX-XXX-XXX-XXX
template:
metadata:
creationTimestamp: null
labels:
machine.openshift.io/cluster-api-cluster: XXX-XXX-XXX
machine.openshift.io/cluster-api-machine-role: worker
machine.openshift.io/cluster-api-machine-type: worker
machine.openshift.io/cluster-api-machineset: XXX-XXX-XXX-XXX-XXX
spec:
metadata:
creationTimestamp: null
labels:
node-role.kubernetes.io/<role>: ""
providerSpec:
value:
apiVersion: azureproviderconfig.openshift.io/v1beta1
credentialsSecret:
name: azure-cloud-credentials
namespace: openshift-machine-api
image:
offer: aro4
publisher: azureopenshift
resourceID: ""
sku: XXX_XX
version: XX.XX.XXX
internalLoadBalancer: ""
kind: AzureMachineProviderSpec
location: useast
metadata:
creationTimestamp: null
natRule: null
networkResourceGroup: XX-XXXXXX
osDisk:
diskSizeGB: 128
managedDisk:
storageAccountType: Premium_LRS
osType: Linux
publicIP: false
publicLoadBalancer: XXX-XXX-XXX
resourceGroup: aro-fq5v3vye
sshPrivateKey: ""
sshPublicKey: ""
subnet: XXX-XXX
userDataSecret:
name: worker-user-data
vmSize: Standard_D4s_v3
vnet: XXX-XXX
zone: "X"
Stap 5: De machineset toepassen
Pas de machineset toe die u in de vorige sectie hebt gemaakt met behulp van de oc apply -f <filename.yaml>
opdracht, zoals in het volgende voorbeeld:
[root@jumphost-new ARO-cluster-Private]# oc apply -f aro-new-worker-az1.yaml
machineset.machine.openshift.io/simon-aro-qpsl5-worker-useast4 created
Stap 6: De machineset en knooppunten controleren
Nadat u het YAML-bestand hebt toegepast, kunt u controleren of de computerset en knooppunten zijn gemaakt met behulp van de oc get machineSets
en oc get nodes
opdrachten, zoals wordt weergegeven in de volgende voorbeelden:
[root@jumphost-new ARO-cluster-Private]# oc get machineSet
NAME DESIRED CURRENT READY AVAILABLE AGE
simon-aro-st5rm-worker-useast1 1 1 1 1 142m
simon-aro-st5rm-worker-useast2 1 1 1 1 142m
simon-aro-st5rm-worker-useast3 1 1 1 1 142m
simon-aro-st5rm-worker-useast4 1 1 46s
Na enkele minuten worden de nieuwe machineset en knooppunten weergegeven:
[root@jumphost-new ARO-cluster-Private]# oc get machineSet
NAME DESIRED CURRENT READY AVAILABLE AGE
simon-aro-st5rm-worker-useast1 1 1 1 1 148m
simon-aro-st5rm-worker-useast2 1 1 1 1 148m
simon-aro-st5rm-worker-useast3 1 1 1 1 148m
simon-aro-st5rm-worker-useast4 1 1 1 1 6m11s
[root@jumphost-new ARO-cluster-Private]# oc get nodes
NAME STATUS ROLES AGE VERSION
simon-aro-st5rm-master-0 Ready master 147m v1.19.0+e405995
simon-aro-st5rm-master-1 Ready master 147m v1.19.0+e405995
simon-aro-st5rm-master-2 Ready master 147m v1.19.0+e405995
simon-aro-st5rm-worker-useast1-h6kzn Ready worker 139m v1.19.0+e405995
simon-aro-st5rm-worker-useast2-48zsm Ready worker 139m v1.19.0+e405995
simon-aro-st5rm-worker-useast3-rvzpn Ready worker 139m v1.19.0+e405995
simon-aro-st5rm-worker-useast4-qrsgx Ready worker 104s v1.19.0+e405995
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor