주:

Oracle Cloud Native Environment에서 AI 도우미 사용

소개

Oracle Cloud Native Environment(Oracle CNE) AI Assistant는 Oracle CNE UI(사용자 인터페이스)와 함께 제공되는 플러그인입니다. AI Assistant는 사용자가 자연어를 사용하여 Kubernetes 클러스터의 상태에 대한 인사이트를 관리하고 얻을 수 있도록 지원합니다(현재는 영어만 가능). 컨텍스트를 인식하므로 응답은 AI Assistant와의 상호 작용을 시작할 때 클러스터의 상태 및 Oracle CNE UI 내의 위치와 관련이 있습니다. 예를 들어, 사용자가 클러스터의 노드 수를 모르는 경우 AI 도우미에 "내 클러스터에 있는 노드 수?"를 요청하면 클러스터의 노드 수가 확인됩니다. 추가 프롬프트를 게시하여 사용자가 AI 도우미로 대화 플로우를 시작할 수 있습니다. AI 도우미에서 제공하는 주요 기능은 다음과 같습니다.

이 자습서에서는 로컬로 호스트된 AI 인스턴스(Ollama)를 사용하여 Oracle CNE UI에 포함된 AI Assistant 플러그인을 구성하는 방법을 보여줍니다.

목표

이 자습서에서는 다음 내용을 학습합니다.

필요 조건

Oracle Cloud 전용 환경 배치

주: 고유 테넌시에서 실행 중인 경우 linux-virt-labs GitHub 프로젝트 README.md를 읽고 실습 환경을 배치하기 전에 필요 조건을 완료하십시오.

  1. 루나 데스크탑에서 터미널을 엽니다.

  2. linux-virt-labs GitHub 프로젝트를 복제합니다.

    git clone https://github.com/oracle-devrel/linux-virt-labs.git
  3. 작업 디렉토리로 변경합니다.

    cd linux-virt-labs/ocne2
  4. 필요한 모음을 설치합니다.

    ansible-galaxy collection install -r requirements.yml
  5. lab 환경을 배치합니다.

    ansible-playbook create_instance.yml -e localhost_python_interpreter="/usr/bin/python3.6" -e install_ocne_rpm=true -e create_ocne_cluster=true -e "ocne_cluster_node_options='-n 1 -w 1'"

    무료 실습 환경에는 localhost에서 실행되는 재생에 대해 ansible_python_interpreter를 설정하는 추가 변수 local_python_interpreter이 필요합니다. 이 변수는 환경이 python3.6 모듈 아래에 있는 Oracle Cloud Infrastructure SDK for Python용 RPM 패키지를 설치하기 때문에 필요합니다.

    기본 배치 구성은 AMD CPU 및 Oracle Linux 8을 사용합니다. Intel CPU 또는 Oracle Linux 9를 사용하려면 배치 명령에 -e instance_shape="VM.Standard3.Flex" 또는 -e os_version="9"를 추가합니다.

    중요: 플레이북이 성공적으로 실행될 때까지 기다렸다가 일시 중지 작업에 도달합니다. 플레이북의 이 단계에서 Oracle Cloud Native Environment 설치가 완료되고 인스턴스가 준비됩니다. 이전 플레이에서 배치하는 노드의 공용(public) 및 전용(private) IP 주소와 실습을 실행하는 동안 필요한 기타 배치 정보를 출력합니다.

노드 수를 확인합니다.

Kubernetes 클러스터의 노드 수 및 이름을 파악하는 데 도움이 됩니다.

  1. 터미널을 열고 SSH를 통해 ocne 인스턴스에 연결합니다.

    ssh oracle@<ip_address_of_node>
  2. 클러스터의 노드를 나열합니다.

    kubectl get nodes

    출력에는 제어 플레인 및 작업자 노드가 현재 Kubernetes 버전과 함께 Ready 상태로 표시됩니다.

액세스 토큰 생성

Oracle Cloud Native Environment는 UI라는 배포 및 서비스를 사용하여 Kubernetes 클러스터에 UI를 배포합니다. 이 배포 및 서비스는 액세스에 사용됩니다. 배치 및 서비스는 모두 ocne-system 이름 공간에 배치됩니다. 서비스에 접속하려면 액세스 토큰을 생성해야 합니다.

  1. 액세스 프로토콜을 생성합니다.

    kubectl --namespace ocne-system create token ui

    출력 예:

    > [oracle@ocne ~]$ kubectl --namespace ocne-system create token ui
    > eyJhbGciOiJSUzI1NiIsImtpZCI6IjhfRWczUG13VWRfWjFkWDIxdkp6UUZlRzEwU2QxaExkbm9TME1CcS1rVFEifQ.eyJhdWQiOlsiaHR0cHM6Ly9rdWJlcm5ldGVzLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWwiXSwiZXhwIjoxNzI4Mzg3MTgwLCJpYXQiOjE3MjgzODM1ODAsImlzcyI6Imh0dHBzOi8va3ViZXJuZXRlcy5kZWZhdWx0LnN2Yy5jbHVzdGVyLmxvY2FsIiwianRpIjoiYzlmMWViZTctYzA1ZC00MTYxLTg2MzctOWNiZGFlNTI5MzFiIiwia3ViZXJuZXRlcy5pbyI6eyJuYW1lc3BhY2UiOiJvY25lLXN5c3RlbSIsInNlcnZpY2VhY2NvdW50Ijp7Im5hbWUiOiJ1aSIsInVpZCI6IjdjY2RjZGZlLTAzNzMtNGUwZS1hMzViLTc5MzdhM2NiZmYzMyJ9fSwibmJmIjoxNzI4MzgzNTgwLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6b2NuZS1zeXN0ZW06dWkifQ.WSLZFste1ggkE2GtjJ2cBrORNFgCzHOlALNXD_-6vLA9kIiDJHp44HshUcXvUFH1XdFM1SGbiCvITOwT8Y5_93IKVZLu1NRyGPZlo5l4JqwnJtqLn7J6e39OlC2SXqex6vLBCU-sBqiw_P9xksNa7fO_MzsryEo-5oMgsVVo9oJr9wv4LYLv2Obd8U5ukKjBeiRiwTu9MTK0r_GlhmZ9d7GHrYrgF1MJGMgzvqyTyviyIynD2F0OkKARIThghpEL6aou4F_DFFMy8t0qjiJG3rBTXL6fXxZ-3WxZUGdx920ZSHcqG2XOaLY7txRkKYbudIjyt-gODeR-FZCIthw5kw
    >

    UI에 접속할 때 표시된 토큰을 사용하여 인증합니다.

UI를 표시하기 위한 포트 전달 생성

포트 전달을 사용하면 로컬 시스템에 UI 서비스를 쉽고 빠르게 표시하여 개발 환경을 모니터하고, 문제를 해결하고, 필요한 경우 디버깅하는 데 사용할 수 있습니다.

중요: Oracle은 포트 전달을 사용하여 운용 환경에 대한 UI를 노출하지 않는 것이 좋습니다.

  1. 포트 전달을 설정합니다.

    kubectl port-forward --namespace ocne-system service/ui 8443:443

    출력 예:

    > [oracle@ocne ~]$ kubectl port-forward --namespace ocne-system service/ui 8443:443
    > Forwarding from 127.0.0.1:8443 -> 4466
    > Forwarding from [::1]:8443 -> 4466
    >

    주: kubectl port-forward 명령은 포그라운드에서 계속 실행됩니다. UI에 액세스하는 동안 계속 진행합니다.

Ollama 설치

  1. 새 터미널을 열고 SSH를 통해 ocne 인스턴스에 연결합니다.

    ssh oracle@<ip_address_of_node>
  2. 필요한 종속성을 설치합니다.

    sudo dnf install -y zstd
  3. Ollama를 설치합니다.

    curl -fsSL https://ollama.com/install.sh | sh
  4. 모델을 실행합니다.

    ollama run llama3.2
  5. 새 터미널을 열고 SSH 터널을 만듭니다.

    ssh -L 11434:127.0.0.1:11434 -L 9898:127.0.0.1:8443 oracle@<ip_address_of_node>

    터널을 통해 로컬 시스템의 브라우저에서 지정된 포트로 Kubernetes 클러스터를 실행하는 원격 시스템에 액세스할 수 있습니다. 둘 다 동일한 시스템에 있는 경우 터널을 생성할 필요가 없습니다. 동일한 시스템에서 실행할 때 http://127.0.0.1:11434를 사용하여 https://127.0.0.1:8443 및 Ollama를 사용하여 UI에 액세스할 수 있습니다.

  6. Luna Desktop에서 브라우저를 열고 URL을 입력하여 Ollama가 실행 중인지 확인합니다.

    http://127.0.0.1:11434

    브라우저는 다음과 유사한 텍스트 메시지를 표시해야 합니다. Ollama is running.

UI에 로그인

  1. Luna Desktop에서 브라우저를 열고 URL을 입력합니다.

    https://127.0.0.1:9898

    사용된 브라우저를 기반으로 보안 경고를 승인합니다. Chrome의 경우 Advanced 단추, Accept the Risk and Continue 링크를 차례로 누릅니다.

  2. 액세스 토큰을 입력합니다.

    이전에 생성한 액세스 토큰을 입력하고 Authenticate 링크를 누릅니다.

    ocne-ui-로그인

  3. UI Overview 페이지가 표시됩니다.

    ocne-ui-webui

    Configure AI Assistant라는 팝업 창에서 Open Settings 버튼을 누릅니다.

    주: 랜딩 페이지의 이벤트 섹션에 나열된 일부 경고가 표시될 수 있습니다. 이 동작은 정상이며 몇 분 후에 지워집니다.

  4. 그러면 설정 섹션에서 ai-assistant 구성 페이지가 열립니다.

ocne-ui-webui

참고: AI 도구 섹션에서 Kubernetes API 요청 단추를 선택 취소합니다.

로컬 제공자를 구성합니다.

  1. Add Provider 버튼을 누릅니다.

    ocne-ui-webui

  2. '이용 약관 및 중요 정보' 대화 상자를 확인합니다.

    ocne-ui-로그인

  3. Cluster 메뉴 옵션을 누른 다음 Local Models 링크를 누릅니다.

    ocne-ui-로그인

    주: 사용 중인 로컬 Ollama 모델에 대한 올바른 세부정보를 입력하십시오. 이 예에서는 이전에 설정된 llama3.2 모델을 보여줍니다.

  4. Save 버튼을 눌러 제공자 설정을 저장합니다.

    이제 AI 도우미가 구성되고 사용할 준비가 되었습니다.

AI Assistant 작동을 확인합니다.

  1. 클러스터라는 메뉴 항목을 누르고 '노드'를 눌러 노드 페이지로 이동합니다.

    ocne-ui-로그인

  2. 기본 화면의 오른쪽 위에 있는 AI Assistant 버튼을 누릅니다.

    ocne-ui-로그인

  3. AI Assistant 창이 표시됩니다.

    ocne-ui-로그인

  4. 드롭다운 목록 상자를 눌러 모델을 기본 옵션(llama2)에서 새로 구성된 로컬 모델(llama3.2)로 변경합니다.

    ocne-ui-로그인

  5. AI Assistant에 'Ask AI'라는 텍스트 상자에 질문을 입력합니다.

    이 예제를 Ask AI라는 텍스트 상자에 붙여넣습니다.

    How many nodes are present?
  6. 질문을 제출하려면 전송 단추를 누릅니다.

    ocne-ui-로그인

    주: AI 도우미가 응답하는 데 걸리는 시간은 구성된 LLM 모델에 사용 가능한 리소스 및 묻는 질문의 복잡성과 같은 여러 요인에 따라 달라집니다.

  7. AI Assistant가 답변을 반환합니다.

    ocne-ui-로그인

    주: 응답에 사용되는 정확한 표현은 요청마다 약간 다를 수 있습니다.

  8. AI Assistant가 작동 중인지 확인합니다.

다음 단계

이 단계를 통해 이제 Oracle Cloud Native Environment UI(사용자 인터페이스)에 대한 접근을 사용으로 설정하고 LLM을 사용하도록 구성하는 방법을 알 수 있습니다. 향후 튜토리얼에서 다루게 될 다양한 특징과 기능을 살펴볼 수 있습니다.

추가 학습 자원

docs.oracle.com/learn에서 다른 랩을 탐색하거나 Oracle Learning YouTube 채널에서 더 많은 무료 학습 콘텐츠에 액세스하세요. 또한 education.oracle.com/learning-explorer를 방문하여 Oracle Learning Explorer가 되십시오.

제품 설명서는 Oracle Help Center를 참조하십시오.