VM생성시 SCVMM오류:

error (2912)

An internal error has occurred trying to contact the HostServer.COM server: NO_PARAM: NO_PARAM.

WinRM: URL: [http://HostServer.com:5985], Verb: [INVOKE], Method: [GetError], Resource: [http://schemas.microsoft.com/wbem/wsman/1/wmi/root/microsoft/bits/BitsClientJob?JobId={C823CCE8-1A96-4656-88F4-442E2850C0A9}]

Unknown error (0x80072f05)

Recommended Action

Check that WS-Management service is installed and running on server HostServer.COM. For more information use the command "winrm helpmsg hresult". If HostServer.COM is a host/library/update server or a PXE server role then ensure that VMM agent is installed and running. Refer to http://support.microsoft.com/kb/2742275 for more details.

원인:

SCVMM인증서 5년 사용기간 만료로 인함

https://support.microsoft.com/en-us/help/4086006/renew-certificates-in-system-center-2012-r2-virtual-machine-manager

조치:

SCVMM연결된 Host서버 및 파일서버 인증서 갱신진행:

SCVMM 인증서 갱신:

https://support.microsoft.com/en-us/help/4086006/renew-certificates-in-system-center-2012-r2-virtual-machine-manager

Host/File 서버 인증서 갱신:

https://adfordummiez.com/?p=499

  1. 각 서버 Certificates=>Personal=>Certificates에서 인증서 삭제
  2. SCVMM서버에서 각 서버 인증서 등록 PS C:\Windows\system32> Get-SCVMMManagedComputer -ComputerName “HostServer.COM | Register-SCVMMManagedComputer -Credential $credential
Posted by 시스템매니아
,

SQL2016 AlwaysOn Basic 소개

SQL2016 이전 버전의 SQL가용성 그룹은 Enterprise Edition의 기능이었으며 Standard Edition 에서는 사용할 수 없었습니다. 하지만 SQL Server 2016의 Standard Edition에서는 Basic 가용성 그룹을 지원합니다.

Enterprise보다는 기능 제약이 있고 Active/Active 고가용성을 지원하지 않으나 공유 스토리지없이 MSCS와 유사한 Active/Stanby(자동FaileOver)의 SQL고가용성을 제공하며 AD없이 구축 가능 합니다.

하지만 1개의 데이터베이스만 고가용성 지원하는 문제점이 있습니다.

제약 사항은 다음과 같습니다.

  • 2개의 Replica만 가능(Primary 1대, Secondary 1대)

  • 보조 복제본에서 읽기 불가능

  • 보조 복제본에서 백업 불가능

  • 1개의 데이터베이스만 가능

다음과 같은 기능은 지원합니다.

  • Listener 지원

  • 자동 Failover

  • 동기/비동기 선택 가능

소규모로 사용하는 경우나, standard edition에서 1개의 데이터베이스 이중화 고려시 비용이 유리합니다.

Windows2016 서버 구성

Test서버 구성 현황(2Node로 구성)

항목

Node1

Node2

서버

VM

VM

OS

Windows2016 Standard Edition

Windows2016 Standard Edition

CPU

4vCore

4vCore

메모리

8GB

8GB

Nic

2Port

2Port

HDD

200GB(동적)

200GB(동적)

설치 역할 및 기능

.Net Framework 3.5

장애조치(Failover) 클러스터링

SQL2016 Standard Edition SP2

.Net Framework 3.5

장애조치(Failover) 클러스터링

SQL2016 Standard Edition SP2

IP

Public : 203.231.238.139

Private : 192.168.1.101

Public :203.231.238.140

Private : 192.168.1.102

Cluster ip

sqlbag : 192.168.1.110

sqlbag : 192.168.1.110

 

  • Node1, Node2 Windows2016 Standard Edition 설치

- 200GB C:드라이브 설정

- 서버구성후 Windows Update는 최신버전으로 적용(Test시는 미적용함)

  • 네트워크 설정

- Publc IP설정(Node1,2)

- Private IP설정(Node1,2)

  • 컴퓨터 이름 및 DNS 접미사 변경

- AD를 사용하지 않으므로 클러스터 구성을 위해 변경작업후 서버 재시작

  • Host파일 수정 Node1, Node2

  • Node1, Node2의 Powershell 관리자 권한 으로 실행후 아래 명령어 수행

 

new-itemproperty -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System -Name LocalAccountTokenFilterPolicy -Value 1

 

  • 이 정책을 설정하지 않으면 기본 제공 관리자 계정을 사용하여 클러스터를 만들려고 할 때 다음 오류가 표시됩니다.

  • Node1에서 클러스터 생성

 

new-cluster -name sqlbag –Node node1,node2 -StaticAddress 192.168.1.110 -NoStorage –AdministrativeAccessPoint DNS

 

  • Node1, Node2에서 SQL2016 Standard Edition 설치

- Node1의 인스턴스는 MSSQLSERVER è Node1 로 변경

- Node2의 인스턴스는 MSSQLSERVER è Node2 로 변경

- 설치도중 Data디렉토리는 두 서버모두 동일하게 설정

예) C:\Program Files\Microsoft SQL Server\MSSQL13.SQL\MSSQL\DATA\

  • Node1, Node2에서 관리도구설치(SQL Server Management Studio) 설치

  • Node1, Node2 SQL구성관리자 è SQL Server 서비스 è SQL Server(MSSQLSERVER) 속성 è AlwaysOn 고가용성에서 사용 체크

 

SQL2016서버 설정

- Node1의 SSMS에서 마스터키, 인증서, 끝점 생성 및 인증서 생성후 C:\Temp폴더에 백업

 

  • USE master

  • GO

  •  

  • -- Create a database master key

  • CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'passw0rd1!'

  • GO

  •  

  • -- Create a new certificate

  • CREATE CERTIFICATE SQLBAG_Certificate_Node1_Private

  • WITH SUBJECT = 'SQLBAG_Certificate_Private - Node 1',

  • START_DATE = '20180912'

  • GO

  •  

  • -- Backup the public key of the certificate to the filesystem

  • BACKUP CERTIFICATE SQLBAG_Certificate_Node1_Private

  • TO FILE = 'c:\temp\SQLBAG_Certificate_Node1_Public.cert'

  • GO

  •  

  • -- Create an endpoint for the Availability Group

  • CREATE ENDPOINT SQLBAG_Endpoint

  • STATE = STARTED

  • AS TCP

  • (

  •  LISTENER_PORT = 5022

  • )

  • FOR DATABASE_MIRRORING

  • (

  •  AUTHENTICATION = CERTIFICATE SQLBAG_Certificate_Node1_Private,

  •  ROLE = ALL,

  •  ENCRYPTION = REQUIRED ALGORITHM AES

  • )

  • GO

 

  • Node2의 SSMS에서 마스터키, 인증서, 끝점 생성 및 인증서 생성후 C:\Temp폴더에 백업

 

  • USE master

  • GO

  •  

  • -- Create a database master key

  • CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'passw0rd1!'

  • GO

  •  

  • -- Create a new certificate

  • CREATE CERTIFICATE SQLBAG_Certificate_Node2_Private

  • WITH SUBJECT = 'SQLBAG_Certificate_Private - Node 2',

  • START_DATE = '20180912'

  • GO

  •  

  • -- Backup the public key of the certificate to the filesystem

  • BACKUP CERTIFICATE SQLBAG_Certificate_Node2_Private

  • TO FILE = 'c:\temp\SQLBAG_Certificate_Node2_Public.cert'

  • GO

  •  

  • -- Create an endpoint for the Availability Group

  • CREATE ENDPOINT SQLBAG_Endpoint

  • STATE = STARTED

  • AS TCP

  • (

  •  LISTENER_PORT = 5022

  • )

  • FOR DATABASE_MIRRORING

  • (

  •  AUTHENTICATION = CERTIFICATE SQLBAG_Certificate_Node2_Private,

  •  ROLE = ALL,

  •  ENCRYPTION = REQUIRED ALGORITHM AES

  • )

  • GO

 

  • Node1의 SSMS에서 사용자 생성후 끝점 연결 설정

 

  • -- Create login for the other node

  • CREATE LOGIN Node2Login WITH PASSWORD = 'passw0rd1!'

  • GO

  •  

  • -- Create user for the login

  • CREATE USER Node2User FOR LOGIN Node2Login

  • GO

  •  

  • -- Import the public key portion of the certificate from the other node

  • CREATE CERTIFICATE SQLBAG_Certificate_Node2_Public

  • AUTHORIZATION Node2User

  • FROM FILE = 'c:\temp\SQLBAG_Certificate_Node2_Public.cert'

  • GO

  •  

  • -- Grant the CONNECT permission to the login

  • GRANT CONNECT ON ENDPOINT::SQLBAG_Endpoint TO Node2Login

  • GO

 

  • Node2의 SSMS에서 사용자 생성후 끝점 연결 설정

 

  • -- Create login for the other node

  • CREATE LOGIN Node1Login WITH PASSWORD = 'passw0rd1!'

  • GO

  •  

  • -- Create user for the login

  • CREATE USER Node1User FOR LOGIN Node1Login

  • GO

  •  

  • -- Import the public key portion of the certificate from the other node

  • CREATE CERTIFICATE SQLBAG_Certificate_Node1_Public

  • AUTHORIZATION Node1User

  • FROM FILE = 'c:\temp\SQLBAG_Certificate_Node1_Public.cert'

  • GO

  •  

  • -- Grant the CONNECT permission to the login

  • GRANT CONNECT ON ENDPOINT::SQLBAG_Endpoint TO Node1Login

  • GO

 

  • Node1의 SSMS에서 Database생성 및 백업

 

  • USE master

  • GO

  •  

  • -- Create a new database

  • CREATE DATABASE TestDatabase1

  • GO

  •  

  • -- Use the database

  • USE TestDatabase1

  • GO

  •  

  • -- Create a simple table

  • CREATE TABLE Foo

  • (

  •  Bar INT NOT NULL

  • )

  • GO

  •  

  • -- Make a Full Backup of the database

  • BACKUP DATABASE TestDatabase1 TO DISK = 'c:\temp\TestDatabase1.bak'

  • GO

  •  

  • USE master

  • GO

  •  

  • -- Create a new Availability Group with 2 replicas

  • CREATE AVAILABILITY GROUP TestAG

  • WITH

  • (

  •  AUTOMATED_BACKUP_PREFERENCE = PRIMARY,

  •  BASIC,

  •  DB_FAILOVER = OFF,

  •  DTC_SUPPORT = NONE

  • )

  • FOR DATABASE [TestDatabase1]

  • REPLICA ON

  • 'NODE1' WITH

  • (

  •  ENDPOINT_URL = 'TCP://node1.test.com:5022',

  •  FAILOVER_MODE = AUTOMATIC,

  •  AVAILABILITY_MODE = SYNCHRONOUS_COMMIT,

  •  SECONDARY_ROLE

  •  (

  •               ALLOW_CONNECTIONS = NO

  •  )

  • ),

  • 'NODE2' WITH

  • (

  •  ENDPOINT_URL = 'TCP://node2.test.com:5022',

  •  FAILOVER_MODE = AUTOMATIC,

  •  AVAILABILITY_MODE = SYNCHRONOUS_COMMIT,

  •  SECONDARY_ROLE

  •  (

  •               ALLOW_CONNECTIONS = NO

  •  )

  • )

  • GO

 

  • Node2의 SSMS에서 TestAG 가용성 그룹에 연결

 

  • ALTER AVAILABILITY GROUP [TestAG] JOIN

  • GO

 

  • Node1의 SSMS에서 trn백업

 

  • -- Make a TxLog Backup of the database

  • BACKUP LOG TestDatabase1 TO DISK = 'c:\temp\TestDatabase1.trn'

  • GO

 

  • 백업받은 .bak, .trn 파일 Node2로 이동하여 복원하고 해당 Database 가용성 그룹으로 이동

 

  • -- Restore the Full Backup with NORECOVEY

  • RESTORE DATABASE TestDatabase1 FROM DISK = 'c:\temp\TestDatabase1.bak' WITH NORECOVERY

  • GO

  •  

  • -- Restore the TxLog Backup with NORECOVERY

  • RESTORE LOG TestDatabase1 FROM DISK = 'c:\temp\TestDatabase1.trn' WITH NORECOVERY

  • GO

  •  

  • -- Move the database into the Availability Group

  • ALTER DATABASE TestDatabase1 SET HADR AVAILABILITY GROUP = TestAG

  • GO

 

  • SSMS에서 AlwaysOn 고가용성 구성화면

  • 장애 조치(Failover)의 역할 소유자 노드

  • 장애 조치(Failover)의 노드의 작동상태

 

가용성 그룹 DB Restore

  • DB복구를 위해 가용성 그룹에서 데이터베이스 제거를 선택합니다.

  • 확인을 눌러 제거완료

  • 데이터베이스 속성에서 ‘Sngle_user’로 엑세스 제한 변경

  • 데이터베이스 복원

  • 복원 옵션 기존 데이터베이스 덮어쓰기 선택후 확인하여 복원 완료

  • 복원 완료후 가용성 그룹에 데이터 베이스 추가를위해 데이터베이스 추가 선택

  • 다음선택

  • 데이터베이스 선택

  • 기존 보조 복제본에 연결. 연결선택후 인증

  • 데이터 동기화 기본설정에서 초기 데이터 동기화 건너뛰기 선택

  • 유효성 검사 다음선택

  • 요약

  • 완료

  • Node1서버에서 데이터베이스 풀백업 및 로그백업 수행후 Node2로 복사

 

BACKUP DATABASE TestDatabase1 TO DISK = 'c:\temp\TestDatabase1.bak'

GO

BACKUP LOG TestDatabase1 TO DISK = 'c:\temp\TestDatabase1.trn'

GO

 

  • Node2서버에서 데이터베이스 풀백업 및 로그백업본을 복원

 

RESTORE DATABASE TestDatabase1 FROM DISK = 'c:\temp\TestDatabase1.bak' WITH NORECOVERY

GO 

RESTORE LOG TestDatabase1 FROM DISK = 'c:\temp\TestDatabase1.trn' WITH NORECOVERY

GO

 

  • Node2 서버에서 데이터베이스 가용성 그룹에 조인

 

ALTER DATABASE TestDatabase1 SET HADR AVAILABILITY GROUP = TestAG

GO

 

가용성 그룹 작동 확인 및 Failover Test

  • 가용성 그룹 TestAG 우클릭후 대시보드 표시선택

  • 가용성 그룹 정상작동 상태 확인

  • Failover Test를 위해 가용성 그룹 우클하여 장애 조치 선택

  • 장애조치시 실시간마이그레이션 적용되어 서비스 끊김에 체감은 없으나 외부 Ping Test시 1칸 빠짐

 

 

Posted by 시스템매니아
,
MS-SQL DMA(Data Migration Assistant) 소개
 
SQL2005, SQL2008등의 기술지원 종료이슈로 보안취약점등에 Windows Update가 제공되지않으므로 SQL Server Migration이 요구되는 상황입니다. SQL Server Migration시 DMA(Data Migration Assistant)를 이용하여 이슈사항 점검하고 진단합니다.
주요 점검 및 진단내용 :
  • 마이그레이션할 SQL Server 인스턴스를 평가 합니다.
  • 마이그레이션 차단 문제: 호환성 문제는 마이그레이션SQL Server 데이터베이스를 검색 합니다. DMA는 해당 문제를 해결 하기 위한 권장 사항을 제공 합니다.
  • 부분적으로 지원 되거나 지원 되지 않는 기능: 현재 원본 SQL Server 인스턴스에 사용 되는 부분적으로 지원 되거나 지원 되지 않는 기능을 검색 합니다. DMA는 마이그레이션 프로젝트에 통합할 수 있습니다 사용 가능한 대체 방법 권장 사항 집합을 제공 합니다.
  • SQL server 업그레이드에 영향을 줄 수 있는 문제를 검색 합니다. 이러한 호환성 문제를 설명 하 고 다음 범주로 구성 됩니다.
  • 주요 변경 내용
  • 동작 변경 내용
  • 사용되지 않는 기능
  • 데이터베이스는 업그레이드 후에 활용할 수 있는 대상 SQL Server 플랫폼의 새로운 기능을 검색 합니다. 이러한 기능 권장 사항으로 설명 하 고 다음 범주로 구성 됩니다.
  • 성능
  • 보안
  • 저장소
SQL지원버전 :
 
원본
대상
SQL버전
SQL Server 2005
SQL Server 2008
SQL Server 2008 R2
SQL Server 2012
SQL Server 2014
SQL Server 2016
Windows의 SQL Server 2017
SQL Server 2012
SQL Server 2014
SQL Server 2016
Windows 및 Linux의 SQL Server 2017
Azure SQL 데이터베이스
 
DMA(Data Migration Assistant)설치
 
  • 설치완료
  • 동의선택후 다음선택
  • 설치선택
  • 설치진행중
  • 설치완료
  • DMA 실행
  • ‘+’ 선택하여 신규 프로젝트 생성. 생성시 원본과 대상버전 선택
  • Report Type 선택
  • 원본 SQL정보 입력하여 연결
  • 연결된 원본 SQL서버에서 진행할 DB선택
  • ‘Start Assessment’ 선택하여 분석 시작
  • 분석진행중이며 DB사이즈에 따라 변동
  • 분석완료
 
진달결과 분석
  • 실제 운영중인 SQL2008R2의 DB를 분석진행한 결과
Behavior changes : Procedure:
Impact
 
This rule checks stored procedures, functions, views and triggers for use of ORDER BY clause specifying ordinal column numbers as sort columns. A sort column can be specified as a nonnegative integer representing the position of the name or alias in the select list, but this is not recommended. An integer cannot be specified when the order_by_expression appears in a ranking function. A sort column can include an expression, but when the database is in SQL 90 compatibility mode or higher, the expression cannot resolve to a constant.
이 규칙은 순서 열 번호를 정렬 열로 지정하는 ORDER BY 절 사용을 위해 저장 프로 시저, 함수, 뷰 및 트리거를 검사합니다. 정렬 열은 선택 목록에서 이름이나 별명의 위치를 나타내는 음이 아닌 정수로 지정할 수 있지만 권장하지는 않습니다. order_by_expression이 순위 지정 함수에 표시되면 정수를 지정할 수 없습니다. 정렬 열에는 표현식이 포함될 수 있지만 데이터베이스가 SQL 90 호환 모드 이상일 때 표현식은 상수로 해석 될 수 없습니다.
 
Recommendation
 
Specify the sort column as a name or column alias rather than hard coding the ordinal
순서 열을 하드 코딩하는 대신 이름 또는 열 별칭으로 정렬 열을 지정하십시오.
 
의견 :
 
Order By절 사용시 서수를 하드 코딩하는 대신 이름 또는 열 별칭으로 정렬 열을 지정하십시오.
 
Information issues : Column
Impact
 
These data types are checked as deprecated. In some cases, using TEXT, IMAGE or NTEXT might harm performance.
이 데이터 유형은 사용되지 않는 것으로 확인됩니다. 경우에 따라 TEXT, IMAGE 또는 NTEXT를 사용하면 성능이 저하 될 수 있습니다.
 
Recommendation
 
Deprecated data types are marked to be discontinued on next versions of SQL Server, should use new data types such as: (varchar(max), nvarchar(max), varbinary(max) and etc.)
사용되지 않는 데이터 형식은 다음 버전의 SQL Server에서 더 이상 지원되지 않으므로 (varchar (max), nvarchar (max), varbinary (max) 등의 새 데이터 형식을 사용해야 함)
 
의견 :
 
 ntext , text  image 데이터 형식은 SQL2008이후 버전의 SQL Server에서 제거됩니다새로운 개발 작업에서는 이러한 데이터 유형을 사용하지 말고 현재 사용중인 응용 프로그램을 수정하십시오대신 nvarchar (max) , varchar (max)  varbinary (max)를 사용하십시오.
 
 
 
Posted by 시스템매니아
,
 
  • Todo Backup이란?
- EaseUS에서 제공되는 백업 솔루션으로 NAS백업에 사용이 용이하며 서버
용 PC용(Windows, Mac) 여러가지 환경에 사용가능한 백업 소프트웨어입니다.
- Free버전 라이선스는 무료 이나 기업 및 서버의 경우 라이선스 구입후 사용가능합니다.
- 버전 별 기능지원 안내
기능
Free버전
HOME버전
Work Station버전
파일/디스크/시스템 백업 & 복구
O
O
O
풀/증분/차등/스케줄 백업
O
O
O
백업파일 보관주기 설정
O
O
O
다른 PC로 복구
 
O
O
Email 알림, 사전 / 사후명령, 오프
사이트 복사, 파일 제외
 
O
O
Outlook 이메일 백업 및 복구
 
O
O
이벤트 기반 일정 백업
 
O
O
업무용
 
 
O
명령줄 백업
 
 
O
백업센터 중앙 관리
 
 
O
가격
무료
$29(PC당)
$39(PC당)
  • 백업 시나리오
Client설치파일
Free버전 다운로드
백업저장소
NAS나 다른 PC의 공유폴더(별도 접근계정)
파일백업
파일 풀백업 일1회
백업시간
백업 진행 시간은 오후 12시
백업데이터유지
풀백업 7개(1주 보관)
백업데이터정리
백업시 작동
복구
사용자 PC에서 가능

  • tb_free.exe 실행후 언어 선택
  • 특징 안내. 다음을 선택합니다.
  • 사용자 계약
  • 설치 경로 선택
  • 추가 작업 선택
  • 개인 데이터 위치 선택
  • 설치중
  • 설치완료
  1. Todo Backup 설정(Windows)

  • EaseUS Todo Backup Free 11.5 실행후 후에 선택
  • 백업 프로그램 왼쪽 메뉴중 파일 백업 메뉴 선택
  • 파일 백업 창
  • 백업 폴더 체크후 대산의 찾아보기 선택
  • NAS장치 추가 선택
  • NAS접근 정보 입력
  • NAS 공유폴더 추가 완료 및 공유폴더 선택
  • 하단 왼쪽 스케줄 메뉴 선택후 시간 및 백업 방법 설정
  • 이미지 보존 전략 선택후 보관주기 7일 설정
  • 백업 설정 완료
  • 백업 진행중
  • 백업데이터 저장 폴더에 pbd형식의 파일로 백업됩니다.

  • 백업 데이터에서 파일 복원을 원하면 복원을 선택합니다.
  • 원래 위치 및 기존파일대체나 다른 폴더에 복원이 가능하며 설정후 완료
  • 파일 복구 경고창
  • 파일 복구 완료
Posted by 시스템매니아
,

석수시장에 위치한 황금국수 숯 소갈비살  맛집을 소개합니다. 구 황금국수로 안양에서 유명한 집인데 오랜만에 방문했습니다.

고기류와 칼국수 메뉴판입니다. 가성비가 정말 좋네요.

소갈비살입니다.

숯불에 구위지는 소갈비살 맛이 일품입니다.

장칼국수입니다. 감칠맛의 비법이 궁금합니다. 

비빔국수 또한 직접 만든 소스로 새콤달콤한 맛이 좋습니다

비빔국수 입니다.

밑반찬도 깔끔하며 깻잎이 많이 짜지않아 더 맛있네요.

샐러리피클입니다. 처음먹어본 찬류인데 고기와 정말 잘 어울리는 맛입니다.

석수시장에 위치해 있으며 무료 주차장이 있어 좋네요.

▶주소: 경기 안양시 만안구 석천로171번길 20 A동 1층 68호(석수동, 석수시장 주차장안)
▶전화번호: 031-472-5693
▶영업시간: 매일 11:30-22:00ㅣ일요일 휴무 ㅣ브레이크타임 15:00-17:00

 

Posted by 시스템매니아
,