기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
참고
이 단계는 nucleus lite에는 적용되지 않습니다.
이 섹션의 단계에 따라 AWS IoT Greengrass 코어 디바이스로 사용할 Linux 또는 Windows 디바이스를 설정합니다.
이 단계에서는 Raspberry Pi OS와 함께 Raspberry Pi를 사용한다고 가정합니다. 다른 디바이스 또는 운영 체제를 사용하는 경우 해당 디바이스의 관련 설명서를 참조하세요.
용 Raspberry Pi를 설정하려면 AWS IoT Greengrass V2
-
Raspberry Pi에 원격으로 연결하려면 Pi에서 SSH를 활성화해야 합니다. 자세한 내용은 Raspberry Pi 설명서에서 SSH(Secure shell)
를 참조하세요. -
SSH를 사용하여 연결할 Raspberry Pi의 IP 주소를 찾습니다. 이를 위해 Raspberry Pi에서 다음 명령을 실행할 수 있습니다.
hostname -I
-
SSH를 사용하여 Raspberry Pi에 연결합니다.
개발 컴퓨터에서 다음 명령을 실행합니다.
username
을 로그인할 사용자의 이름으로 바꾸고pi-ip-address
를 이전 단계에서 찾은 IP 주소로 바꿉니다.ssh
username
@pi-ip-address
-
AWS IoT Greengrass 코어 소프트웨어를 실행하기 위해 필요한 Java 런타임을 설치합니다. Raspberry Pi에서 다음 명령을 사용하여 Java 11을 설치합니다.
sudo apt install default-jdk
설치가 완료되면 다음 명령을 실행하여 Raspberry Pi에서 Java가 실행되는지 확인합니다.
java -version
디바이스에서 실행되는 Java 버전이 명령을 통해 인쇄됩니다. 출력은 다음 예제와 비슷할 것입니다.
openjdk version "11.0.9.1" 2020-11-04 OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2) OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode)
팁: Raspberry Pi에서 커널 파라미터 설정
디바이스가 Raspberry Pi인 경우 다음 단계를 완료하여 Linux 커널 파라미터를 보고 업데이트할 수 있습니다.
-
/boot/cmdline.txt
파일을 엽니다. 이 파일은 Raspberry Pi가 부팅될 때 적용할 Linux 커널 파라미터를 지정합니다.예를 들어 Linux 기반 시스템에서 GNU nano를 사용하여 파일을 열도록 다음 명령을 실행할 수 있습니다.
sudo nano /boot/cmdline.txt
-
/boot/cmdline.txt
파일에 다음 커널 파라미터가 포함되어 있는지 확인합니다.systemd.unified_cgroup_hierarchy=0
파라미터는 cgroups v2 대신 cgroups v1을 사용하도록 지정합니다.cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0
/boot/cmdline.txt
파일에 이러한 파라미터가 포함되어 있지 않거나 값이 다른 파라미터가 포함되어 있는 경우 이러한 파라미터와 값을 포함하도록 파일을 업데이트합니다. -
/boot/cmdline.txt
파일을 업데이트한 경우 Raspberry Pi를 재부팅하여 변경 사항을 적용합니다.sudo reboot
용 Linux 디바이스를 설정하려면 AWS IoT Greengrass V2
-
AWS IoT Greengrass 코어 소프트웨어를 실행하기 위해 필요한 Java 런타임을 설치합니다. Amazon Corretto
또는 OpenJDK 장기 지원 버전을 사용하는 것이 좋습니다. 버전 8 이상이 필요합니다. 다음 명령은 디바이스에 OpenJDK를 설치하는 방법을 보여줍니다. -
Debian 기반 또는 Ubuntu 기반 배포판의 경우:
sudo apt install default-jdk
-
Red Hat 기반 배포판의 경우:
sudo yum install java-11-openjdk-devel
-
대상 Amazon Linux 2:
sudo amazon-linux-extras install java-openjdk11
-
Amazon Linux 2023의 경우:
sudo dnf install java-11-amazon-corretto -y
설치가 완료되면 다음 명령을 실행하여 Linux 디바이스에서 Java가 실행되는지 확인합니다.
java -version
디바이스에서 실행되는 Java 버전이 명령을 통해 인쇄됩니다. 예를 들어 Debian 기반 배포의 경우 출력이 다음 샘플과 유사할 수 있습니다.
openjdk version "11.0.9.1" 2020-11-04 OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2) OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode)
-
-
(선택 사항) 디바이스에서 구성 요소를 실행하는 기본 시스템 사용자와 그룹을 생성합니다. 설치 관리자 인수를 사용하여 설치하는 동안 AWS IoT Greengrass 코어 소프트웨어
--component-default-user
설치 관리자가이 사용자 및 그룹을 생성하도록 선택할 수도 있습니다. 자세한 내용은 설치 프로그램 인수 단원을 참조하십시오.sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
-
AWS IoT Greengrass 코어 소프트웨어(일반적으로
root
)를 실행하는 사용자에게 모든 사용자 및 모든 그룹에서 실행할 수sudo
있는 권한이 있는지 확인합니다.-
다음 명령을 실행하여
/etc/sudoers
파일을 엽니다.sudo visudo
-
사용자에 대한 권한이 다음 예제와 같은지 확인합니다.
root ALL=(ALL:ALL) ALL
-
-
(선택 사항) 컨테이너화된 Lambda 함수를 실행하려면 cgroups
v1을 활성화하고 memory 및 devices cgroups를 활성화하고 탑재해야 합니다. 컨테이너화된 Lambda 함수를 실행할 계획이 없는 경우 이 단계를 건너뛸 수 있습니다. 이러한 cgroups 옵션을 활성화하려면 다음 Linux 커널 파라미터로 디바이스를 부팅합니다.
cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0
디바이스의 커널 파라미터를 보고 설정하는 방법에 대한 자세한 내용은 운영 체제 및 부트 로더 설명서를 참조하세요. 지침에 따라 커널 파라미터를 영구적으로 설정합니다.
-
장치 요구 사항의 요구 사항 목록에 따라 디바이스에 기타 모든 필수 종속성을 설치합니다.
용 Windows 디바이스를 설정하려면 AWS IoT Greengrass V2
-
AWS IoT Greengrass 코어 소프트웨어를 실행하기 위해 필요한 Java 런타임을 설치합니다. Amazon Corretto
또는 OpenJDK 장기 지원 버전을 사용하는 것이 좋습니다. 버전 8 이상이 필요합니다. -
PATH
시스템 변수에서 Java를 사용할 수 있는지 확인하고 사용할 수 없는 경우 추가합니다. LocalSystem 계정은 AWS IoT Greengrass 코어 소프트웨어를 실행하므로 사용자의 PATH 사용자 변수 대신 PATH 시스템 변수에 Java를 추가해야 합니다. 다음을 수행합니다. -
Windows 키를 눌러 시작 메뉴를 엽니다.
-
시작 메뉴에서
environment variables
를 입력하여 시스템 옵션을 검색합니다. -
시작 메뉴 검색 결과에서 시스템 환경 변수 편집을 선택하여 시스템 속성 창을 엽니다.
-
환경 변수...를 선택하여 환경 변수 창을 엽니다.
-
시스템 변수에서 경로를 선택하고 편집을 선택합니다. 환경 변수 편집 창에서 각 경로를 별도의 줄로 볼 수 있습니다.
-
Java 설치
bin
폴더의 경로가 있는지 확인합니다. 경로는 다음 예제와 유사할 수 있습니다.C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
-
경로에서 Java 설치
bin
폴더가 누락된 경우 새로 만들기를 선택하여 추가한 다음 확인을 선택합니다.
-
-
관리자 권한으로 Windows 명령 프롬프트(
cmd.exe
)를 엽니다. -
Windows 디바이스의 LocalSystem 계정에 기본 사용자를 생성합니다.
암호
를 안전한 암호로 바꿉니다.net user /add ggc_user
password
작은 정보
Windows 구성에 따라 사용자의 암호가 미래의 날짜에 만료되도록 설정할 수 있습니다. Greengrass 애플리케이션이 계속 작동하도록 하려면 암호가 만료되는 시기를 추적하고 만료되기 전에 이를 업데이트합니다. 사용자의 암호가 만료되지 않도록 설정할 수도 있습니다.
-
사용자와 암호가 만료되는 시기를 확인하려면 다음 명령을 실행합니다.
net user
ggc_user
| findstr /C:expires -
사용자의 암호가 만료되지 않도록 설정하려면 다음 명령을 실행합니다.
wmic UserAccount where "Name='
ggc_user
'" set PasswordExpires=False -
wmic
명령이 더는 사용되지 않는Windows 10 이상을 사용하는 경우 다음 PowerShell 명령을 실행합니다. Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = '
ggc_user
'" | Set-CimInstance -Property @{PasswordExpires="False"}
-
-
Microsoft에서 PsExec 유틸리티
를 다운로드하여 디바이스에 설치합니다. -
PsExec 유틸리티를 사용하여 기본 사용자의 사용자 이름과 암호를 LocalSystem 계정의 Credential Manager 인스턴스에 저장합니다. 이전에 설정한 사용자의 암호로
암호
를 바꿉니다.psexec -s cmd /c cmdkey /generic:ggc_user /user:ggc_user /pass:
password
PsExec License Agreement가 열리면 Accept를 선택하여 라이선스에 동의하고 명령을 실행합니다.
참고
Windows 디바이스에서 LocalSystem 계정은 Greengrass nucleus를 실행하고 PsExec 유틸리티를 사용하여 기본 사용자 정보를 LocalSystem 계정에 저장해야 합니다. Credential Manager 애플리케이션을 사용하면 이 정보가 LocalSystem 계정 대신 현재 로그인한 사용자의 Windows 계정에 저장됩니다.