Set-AksHciConfig

개요

Azure Kubernetes Service 호스트에 대한 구성 설정을 설정하거나 업데이트합니다.

Syntax

호스트에 대한 구성 설정

Set-AksHciConfig  -imageDir <String>
                  -workingDir <String>
                  -cloudConfigLocation <String>
                  -vnet <Virtual Network>
                 [-nodeConfigLocation <String>]
                 [-controlPlaneVmSize <VmSize>]
                 [-sshPublicKey <String>]
                 [-macPoolStart <String>]
                 [-macPoolEnd <String>]       
                 [-proxySettings <ProxySettings>]
                 [-cloudServiceCidr <String>]
                 [-version <String>]
                 [-nodeAgentPort <int>]
                 [-nodeAgentAuthorizerPort <int>]
                 [-cloudAgentPort <int>]
                 [-cloudAgentAuthorizerPort <int>]
                 [-clusterRoleName <String>]
                 [-cloudLocation <String>]
                 [-skipHostLimitChecks]
                 [-skipRemotingChecks]
                 [-insecure]
                 [-skipUpdates]
                 [-forceDnsReplication]   

설명

Azure Kubernetes Service 호스트에 대한 구성 설정을 지정합니다. 2-8 노드 Azure Stack HCI 클러스터 또는 Windows Server 2019 Datacenter 장애 조치(failover) 클러스터에 배포하는 경우 -workingDir 및 -cloudConfigLocation 매개 변수를 지정해야 합니다. 단일 노드 Windows Server 2019 Datacenter의 경우 모든 매개 변수는 선택 사항이며 기본값으로 설정됩니다.

예제

DHCP 네트워킹 및 VLAN을 사용하여 2-8 노드 클러스터에 배포하려면

$vnet = New-AksHciNetworkSetting -name newNetwork -vswitchName "DefaultSwitch" -vipPoolStart "172.16.255.0" -vipPoolEnd "172.16.255.254" -vlanID 7

Set-AksHciConfig -workingDir c:\ClusterStorage\Volume1\workingDir -cloudConfigLocation c:\clusterstorage\volume1\Config -vnet $vnet -cloudservicecidr "172.16.10.10/16"

VLAN 없이 DHCP 네트워킹을 사용하여 2-8 노드 클러스터에 배포하려면

$vnet = New-AksHciNetworkSetting -name newNetwork -vswitchName "DefaultSwitch" -vipPoolStart "172.16.255.0" -vipPoolEnd "172.16.255.254"

Set-AksHciConfig -workingDir c:\ClusterStorage\Volume1\workingDir -cloudConfigLocation c:\clusterstorage\volume1\Config -vnet $vnet -cloudservicecidr "172.16.10.10/16"

고정 IP 네트워킹 및 VLAN을 사용하여 배포하려면

$vnet = New-AksHciNetworkSetting -name newNetwork -vswitchName "DefaultSwitch" -k8snodeippoolstart "172.16.10.0" -k8snodeippoolend "172.16.10.255" -vipPoolStart "172.16.255.0" -vipPoolEnd "172.16.255.254" -ipaddressprefix "172.16.0.0/16" -gateway "172.16.0.1" -dnsservers "172.16.0.1" -vlanID 7

Set-AksHciConfig -workingDir c:\ClusterStorage\Volume1\workingDir -cloudConfigLocation c:\clusterstorage\volume1\Config -vnet $vnet -cloudservicecidr "172.16.10.10/16"

VLAN 없이 고정 IP 네트워킹을 사용하여 배포하려면

$vnet = New-AksHciNetworkSetting -name newNetwork -vswitchName "DefaultSwitch" -k8snodeippoolstart "172.16.10.0" -k8snodeippoolend "172.16.10.255" -vipPoolStart "172.16.255.0" -vipPoolEnd "172.16.255.254" -ipaddressprefix "172.16.0.0/16" -gateway "172.16.0.1" -dnsservers "172.16.0.1"

Set-AksHciConfig -workingDir c:\ClusterStorage\Volume1\workingDir -cloudConfigLocation c:\clusterstorage\volume1\Config -vnet $vnet -cloudservicecidr "172.16.10.10/16"

프록시 서버를 사용하여 배포하려면

$proxySetting = New-AksHciProxySetting -name "corpProxy" -http http://contosoproxy:8080 -https https://contosoproxy:8443 -noProxy localhost,127.0.0.1,.svc,10.96.0.0/12,10.244.0.0/16 -credential $proxyCredential

Set-AksHciConfig -workingDir c:\ClusterStorage\Volume1\workingDir -cloudConfigLocation c:\clusterstorage\volume1\Config -proxySetting $proxySettings -vnet $vnet -cloudservicecidr "172.16.10.10/16"

미리 구성된 클라우드 에이전트 클러스터 서비스 및 DNS 레코드를 사용하여 배포하려면

이 예제를 실행하기 전에 이름(또는 선택한 이름 ca-cloudagent )을 사용하여 Active Directory에서 일반 클러스터 서비스를 사전 준비해야 하지만 길이가 32자를 초과하지 않습니다. 또한 제공 cloudservicecidr 된 주소를 사용하여 일반 클러스터 서비스의 FQDN을 가리키는 연결된 DNS 레코드를 만들어야 합니다.

AZURE Stack HCI 배포의 AKS는 배포를 계속하기 전에 Active Directory에서 지정된 clusterRoleName 것을 찾으려고 시도합니다.

참고

Azure Stack HCI의 AKS가 배포되면 이 정보를 변경할 수 없습니다.

$vnet = New-AksHciNetworkSetting -name newNetwork -vswitchName "DefaultSwitch" -k8snodeippoolstart "172.16.10.0" -k8snodeippoolend "172.16.10.255" -vipPoolStart "172.16.255.0" -vipPoolEnd "172.16.255.254" -ipaddressprefix "172.16.0.0/16" -gateway "172.16.0.1" -dnsservers "172.16.0.1" -vlanID 7

Set-AksHciConfig -workingDir c:\ClusterStorage\Volume1\workingDir -cloudConfigLocation c:\clusterstorage\volume1\Config -vnet $vnet -cloudservicecidr "172.16.10.10/16" -clusterRoleName "ca-cloudagent"

매개 변수

-imageDir

Azure Stack HCI의 Azure Kubernetes Service가 해당 VHD 이미지를 저장하는 디렉터리의 경로입니다. 이 매개 변수는 필수입니다. 경로는 공유 스토리지 경로(예: C:\ClusterStorage\Volume2\ImageStoreSMB 공유 \\FileShare\ImageStore)를 가리킵니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: %systemdrive%\AksHciImageStore
Accept pipeline input: False
Accept wildcard characters: False

-workingDir

작은 파일을 저장하는 데 사용할 모듈의 작업 디렉터리입니다. 이 매개 변수는 필수입니다. 경로는 공유 스토리지 경로(예: c:\ClusterStorage\Volume2\ImageStore SMB 공유) \\FileShare\ImageStore를 가리킵니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: True
Position: Named
Default value: %systemdrive%\AksHci
Accept pipeline input: False
Accept wildcard characters: False

-cloudConfigLocation

클라우드 에이전트가 구성을 저장할 위치입니다. 이 매개 변수는 필수입니다. 경로는 공유 스토리지 경로(예: C:\ClusterStorage\Volume2\ImageStoreSMB 공유 \\FileShare\ImageStore)를 가리킵니다. 스토리지에 항상 액세스할 수 있도록 위치가 고가용성 공유에 있어야 합니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: True
Position: Named
Default value: %systemdrive%\wssdcloudagent
Accept pipeline input: False
Accept wildcard characters: False

-vnet

명령을 사용하여 만든 AksHciNetworkSetting 개체의 이름입니다.

Type: VirtualNetwork
Parameter Sets: (All)
Aliases:

Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-nodeConfigLocation

노드 에이전트가 구성을 저장할 위치입니다. 모든 노드에는 노드 에이전트가 있으므로 해당 구성은 로컬입니다. 이 위치는 로컬 경로여야 합니다. 모든 배포에 %systemdrive%\programdata\wssdagent 대해 기본값으로 설정됩니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: %systemdrive%\programdata\wssdagent
Accept pipeline input: False
Accept wildcard characters: False

-controlPlaneVmSize

컨트롤 플레인에 대해 만들 VM의 크기입니다. 사용 가능한 VM 크기 목록을 얻으려면 다음을 실행 Get-AksHciVmSize합니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: Standard_A4_V2
Accept pipeline input: False
Accept wildcard characters: False

-sshPublicKey

SSH 공개 키 파일의 경로입니다. 이 공개 키를 사용하여 Azure Stack HCI 배포에서 Azure Kubernetes Service에서 만든 VM에 로그인할 수 있습니다. 사용자 고유의 SSH 공개 키가 있는 경우 여기에 해당 위치를 전달합니다. 키가 제공되지 않으면 .pub에서 %systemdrive%\akshci\.ssh\akshci_rsa키를 찾습니다. 파일이 없으면 위의 위치에 SSH 키 쌍이 생성되고 사용됩니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-macPoolStart

Azure Kubernetes Service 호스트 VM에 사용하려는 MAC 풀의 MAC 주소 시작을 지정하는 데 사용됩니다. MAC 주소의 구문을 사용하려면 첫 번째 바이트의 최소 비트가 항상 0이어야 하며 첫 번째 바이트는 항상 짝수(즉, 00, 02, 04, 06...)여야 합니다. 일반적인 MAC 주소는 02:1E:2B:78:00:00과 같습니다. 할당된 MAC 주소가 일관되도록 수명이 긴 배포에 MAC 풀을 사용합니다. MAC 풀은 VM에 특정 MAC 주소가 있어야 한다는 요구 사항이 있는 경우에 유용합니다. 기본값은 none입니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-macPoolEnd

Azure Kubernetes Service 호스트 VM에 사용하려는 MAC 풀의 MAC 주소 끝을 지정하는 데 사용됩니다. MAC 주소의 구문을 사용하려면 첫 번째 바이트의 최소 비트가 항상 0이어야 하며 첫 번째 바이트는 항상 짝수(즉, 00, 02, 04, 06...)여야 합니다. -macPoolEnd로 전달된 주소의 첫 번째 바이트는 -macPoolStart로 전달된 주소의 첫 번째 바이트와 동일해야 합니다. 할당된 MAC 주소가 일관되도록 수명이 긴 배포에 MAC 풀을 사용합니다. MAC 풀은 VM에 특정 MAC 주소가 있어야 한다는 요구 사항이 있는 경우에 유용합니다. 기본값은 none입니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-proxySettings

New-AksHciProxySetting을 사용하여 만든 프록시 개체입니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-cloudServiceCidr

MOC CloudAgent 서비스에 할당할 고정 IP/네트워크 접두사를 제공하는 데 사용할 수 있습니다. 이 값은 CIDR 형식을 사용하여 제공해야 합니다. (예: 192.168.1.2/16). IP 주소가 변경되지 않으므로 네트워크에서 중요한 모든 항목에 항상 액세스할 수 있도록 이 옵션을 지정할 수 있습니다. 기본값은 none입니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-version

배포하려는 Azure Stack HCI의 Azure Kubernetes Service 버전입니다. 기본값은 최신 버전입니다. 기본값을 변경하지 않는 것이 좋습니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: Latest version
Accept pipeline input: False
Accept wildcard characters: False

-nodeAgentPort

노드 에이전트가 수신 대기해야 하는 TCP/IP 포트 번호이며, 기본값은 45000입니다. 기본값을 변경하지 않는 것이 좋습니다.

Type: System.Int32
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: 45000
Accept pipeline input: False
Accept wildcard characters: False

-nodeAgentAuthorizerPort

노드 에이전트가 권한 부여 포트에 사용해야 하는 TCP/IP 포트 번호입니다. 기본값은 45001입니다. 기본값을 변경하지 않는 것이 좋습니다. 

Type: System.Int32
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: 45001
Accept pipeline input: False
Accept wildcard characters: False

-cloudAgentPort

클라우드 에이전트가 수신 대기해야 하는 TCP/IP 포트 번호입니다. 기본값은 55000입니다. 기본값을 변경하지 않는 것이 좋습니다.

Type: System.Int32
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: 55000
Accept pipeline input: False
Accept wildcard characters: False

-cloudAgentAuthorizerPort

클라우드 에이전트가 권한 부여 포트에 사용해야 하는 TCP/IP 포트 번호입니다. 기본값은 65000입니다. 기본값을 변경하지 않는 것이 좋습니다.

Type: System.Int32
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: 65000
Accept pipeline input: False
Accept wildcard characters: False

-clusterRoleName

클러스터 내에서 일반 서비스로 클라우드 에이전트를 만들 때 사용할 이름을 지정합니다. 기본값은 ca- 접두사와 guid 접미사가 있는 고유 이름으로 설정됩니다(예: "ca-9e6eb299-bc0b-4f00-9fd7-942843820c26"). 기본값을 변경하지 않는 것이 좋습니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: A unique name with a prefix of ca- and a guid suffix
Accept pipeline input: False
Accept wildcard characters: False

-cloudLocation

이 매개 변수는 사용자 지정 Microsoft 운영 클라우드 위치 이름을 제공합니다. 기본 이름은 "MocLocation"입니다. 기본값을 변경하지 않는 것이 좋습니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: MocLocation
Accept pipeline input: False
Accept wildcard characters: False

-skipHostLimitChecks

배포를 계속하기 전에 메모리 및 디스크 공간을 사용할 수 있는지 확인하기 위해 스크립트에서 검사를 건너뛰도록 요청합니다. 이 설정을 사용하지 않는 것이 좋습니다.

Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-skipRemotingChecks

로컬 노드와 원격 노드 모두에 대한 원격 기능을 확인하기 위해 스크립트가 수행하는 검사를 건너뛰도록 요청합니다. 이 설정을 사용하지 않는 것이 좋습니다.

Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-안전하지 않음

안전하지 않은 모드(TLS 보안 연결 없음)로 Azure Stack HCI 구성 요소(예: 클라우드 에이전트 및 노드 에이전트)에 Azure Kubernetes Service를 배포합니다.  프로덕션 환경에서 안전하지 않은 모드를 사용하지 않는 것이 좋습니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-skipUpdates

사용 가능한 업데이트를 건너뛰려면 이 플래그를 사용합니다. 이 설정을 사용하지 않는 것이 좋습니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

-forceDnsReplication

DNS 복제는 일부 시스템에서 최대 1시간이 걸릴 수 있습니다. 이렇게 하면 배포 속도가 느려집니다. 이 문제가 발생하면 Install-AksHci 루프에서 중단되는 것을 볼 수 있습니다. 이 문제를 해결하려면 이 플래그를 사용하세요. -forceDnsReplication 플래그는 보장된 수정이 아닙니다. 플래그 뒤에 있는 논리가 실패하면 오류가 숨겨지고 플래그가 제공되지 않은 것처럼 명령이 계속 진행됩니다.

Type: System.String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

다음 단계

AksHci PowerShell 참조